Files
Fulfillment-Backend/schemas/status.py
2025-02-07 20:08:14 +04:00

66 lines
1.1 KiB
Python

from datetime import datetime
from schemas.base import BaseSchema, OkMessageSchema
from schemas.user import UserSchema
# region Entities
class BaseStatusSchema(BaseSchema):
name: str
board_id: int
class StatusSchema(BaseStatusSchema):
id: int
ordinal_number: int
is_deleted: bool = False
class DealStatusHistorySchema(BaseSchema):
user: UserSchema
changed_at: datetime
from_status: StatusSchema
to_status: StatusSchema
next_status_deadline: datetime | None
comment: str | None = None
# endregion
# region Requests
class CreateStatusRequest(BaseSchema):
status: BaseStatusSchema
class UpdateStatusRequest(BaseSchema):
status: StatusSchema
class UpdateStatusOrderRequest(BaseSchema):
board_id: int
status_id: int
new_ordinal_number: int
# endregion
# region Responses
class CreateStatusResponse(OkMessageSchema):
pass
class UpdateStatusResponse(OkMessageSchema):
pass
class UpdateStatusOrderResponse(OkMessageSchema):
pass
class DeleteStatusResponse(OkMessageSchema):
pass
# endregion