daily/Mods/Finance/Schemas.py

80 lines
1.4 KiB
Python

from datetime import datetime, date
from pydantic import BaseModel
from typing import Optional, List, Union
from Schemas.UserSchemas import UserInfo
class FinanceInfo(BaseModel):
id: Optional[int]
fill_user: Optional[str]
company_name: Optional[str]
income_date: Optional[datetime]
income: Optional[float]
type_id: Optional[str]
info: Optional[str]
cretated_at: Optional[datetime]
user_info: Optional[UserInfo]
class FinanceAddInfo(BaseModel):
fill_user: Optional[str]
company_name: Optional[str]
income_date: Optional[datetime]
income: Optional[float]
type_id: Optional[str]
info: Optional[str]
cretated_at: Optional[datetime]
class FinanceAddReq(FinanceAddInfo):
pass
class FinanceAddRes(FinanceInfo):
pass
class FinanceUpdateInfo(FinanceInfo):
pass
class FinanceUpdateReq(FinanceUpdateInfo):
pass
class FinanceUpdateRes(FinanceInfo):
pass
class FinanceQuery(FinanceInfo):
income_date: Optional[List[Union[int, None]]]
cretated_at: Optional[List[Union[int, None]]]
page: int
page_size: int
pass
class FinanceQueryReq(FinanceQuery):
pass
class FinanceGetReq(BaseModel):
id: int
class FinanceGetRes(FinanceInfo):
pass
class FinanceQueryRes(BaseModel):
count: int
items: List[FinanceInfo]
total: Optional[float]
class FinanceDeleteReq(BaseModel):
id: int
#######################