67 lines
1.1 KiB
Python
67 lines
1.1 KiB
Python
from typing import Optional
|
|
|
|
from schemas.base import BaseSchema, OkMessageSchema
|
|
from schemas.billing import GroupBillRequestSchema
|
|
|
|
|
|
# region Entities
|
|
|
|
class CardGroupSchema(BaseSchema):
|
|
id: int
|
|
name: Optional[str] = None
|
|
lexorank: str
|
|
bill_requests: list[GroupBillRequestSchema] = []
|
|
|
|
|
|
# endregion
|
|
|
|
# region Requests
|
|
|
|
class CardGroupUpdateRequest(BaseSchema):
|
|
data: CardGroupSchema
|
|
|
|
|
|
class CreateCardGroupRequest(BaseSchema):
|
|
dragging_card_id: int
|
|
hovered_card_id: int
|
|
|
|
|
|
class CardGroupChangeStatusRequest(BaseSchema):
|
|
group_id: int
|
|
new_status: int
|
|
|
|
|
|
class CardAddToGroupRequest(BaseSchema):
|
|
card_id: int
|
|
group_id: int
|
|
|
|
|
|
class CardRemoveFromGroupRequest(BaseSchema):
|
|
card_id: int
|
|
|
|
|
|
# endregion
|
|
|
|
# region Responses
|
|
|
|
class CardCreateGroupResponse(OkMessageSchema):
|
|
pass
|
|
|
|
|
|
class CardGroupUpdateResponse(OkMessageSchema):
|
|
pass
|
|
|
|
|
|
class CardGroupChangeStatusResponse(OkMessageSchema):
|
|
pass
|
|
|
|
|
|
class CardAddToGroupResponse(OkMessageSchema):
|
|
pass
|
|
|
|
|
|
class CardRemoveFromGroupResponse(OkMessageSchema):
|
|
pass
|
|
|
|
# endregion
|