feat: groups

This commit is contained in:
2025-10-17 19:48:51 +04:00
parent 35869e2ea5
commit 6b1b4109c6
11 changed files with 288 additions and 12 deletions

60
schemas/deal_group.py Normal file
View File

@ -0,0 +1,60 @@
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