68 lines
1.1 KiB
Python
68 lines
1.1 KiB
Python
import datetime
|
|
from typing import List
|
|
|
|
from schemas.base import CustomModel
|
|
from schemas.client import ClientSchema
|
|
|
|
|
|
# region Entities
|
|
class FastDeal(CustomModel):
|
|
name: str
|
|
client: ClientSchema
|
|
comment: str
|
|
acceptance_date: datetime.datetime
|
|
|
|
|
|
class DealSummary(CustomModel):
|
|
id: int
|
|
name: str
|
|
client_name: str
|
|
changed_at: datetime.datetime
|
|
status: int
|
|
|
|
|
|
# endregion Entities
|
|
|
|
# region Requests
|
|
class DealChangeStatusRequest(CustomModel):
|
|
deal_id: int
|
|
new_status: int
|
|
|
|
|
|
class DealCreateRequest(CustomModel):
|
|
name: str
|
|
|
|
|
|
class DealQuickCreateRequest(CustomModel):
|
|
name: str
|
|
client_name: str
|
|
client_address: str
|
|
comment: str
|
|
acceptance_date: datetime.datetime
|
|
|
|
|
|
class DealSummaryRequest(CustomModel):
|
|
pass
|
|
|
|
|
|
# endregion Requests
|
|
|
|
# region Responses
|
|
|
|
class DealChangeStatusResponse(CustomModel):
|
|
ok: bool
|
|
|
|
|
|
class DealCreateResponse(CustomModel):
|
|
ok: bool
|
|
|
|
|
|
class DealQuickCreateResponse(CustomModel):
|
|
deal_id: int
|
|
|
|
|
|
class DealSummaryResponse(CustomModel):
|
|
summaries: List[DealSummary]
|
|
|
|
# endregion Responses
|