61 lines
912 B
Python
61 lines
912 B
Python
from typing import Optional
|
|
|
|
from schemas.base import BaseSchema, BaseResponse
|
|
|
|
|
|
# region Entities
|
|
|
|
|
|
class DealGroupSchema(BaseSchema):
|
|
id: int
|
|
name: Optional[str] = None
|
|
lexorank: str
|
|
|
|
|
|
class UpdateDealGroupSchema(BaseSchema):
|
|
name: Optional[str] = None
|
|
lexorank: Optional[str] = None
|
|
status_id: Optional[int] = None
|
|
|
|
|
|
# endregion
|
|
|
|
# region Requests
|
|
|
|
|
|
class CreateDealGroupRequest(BaseSchema):
|
|
main_deal_id: int
|
|
other_deal_ids: list[int]
|
|
|
|
|
|
class UpdateDealGroupRequest(BaseSchema):
|
|
entity: UpdateDealGroupSchema
|
|
|
|
|
|
class UpdateDealsInGroupRequest(BaseSchema):
|
|
deal_ids: list[int]
|
|
|
|
|
|
# endregion
|
|
|
|
# region Responses
|
|
|
|
|
|
class CreateDealGroupResponse(BaseSchema):
|
|
entity: DealGroupSchema
|
|
|
|
|
|
class UpdateDealGroupResponse(BaseResponse):
|
|
pass
|
|
|
|
|
|
class UpdateDealsInGroupResponse(BaseResponse):
|
|
pass
|
|
|
|
|
|
class DeleteDealGroupResponse(BaseResponse):
|
|
pass
|
|
|
|
|
|
# endregion
|