Files
2026-10-03 22:29:07 +03:30

36 lines
1.4 KiB
Python

import datetime
import uuid
from typing import Optional, Literal
import pydantic
from pydantic import Field
class StatusReport(pydantic.BaseModel):
state: Optional[str]
type_id: Optional[int] = Field(description='کد شناسایی نوع پروژه در این فیلد قرار می گیرد')
nature_id: Optional[int] = Field(description='کد شناسایی ماهبت در این فیلد قرار می گیرد')
monitor_type: Optional[int]
class ReportCountry(pydantic.BaseModel):
type_id: int = Field(description='کد شناسایی نوع پروژه در این فیلد قرار می گیرد')
nature_id: int = Field(description='کد شناسایی ماهبت در این فیلد قرار می گیرد')
state: Optional[str]
monitor_type: Optional[int]
class DelayDonutDetail(pydantic.BaseModel):
project_id:uuid.UUID
select:Literal['financial','force_major','technical']
class DonutReport(pydantic.BaseModel):
only_current: bool = Field(default=False, description='فقط پروژه‌های نظارت جاری؛ مقدار false برای همه پروژه‌های نظارت')
class DonutList(pydantic.BaseModel):
type: int = Field(description='مقدار وارد شده در گزارش قبل')
donut_select: str = Field(description='آیتم دونات انتخاب شده')
class PhysicalMonth(pydantic.BaseModel):
from_date:datetime.datetime
to_date:datetime.datetime