feat: projects and boards

This commit is contained in:
2025-02-07 20:08:14 +04:00
parent 2aa84837e4
commit 9ee3f87de9
25 changed files with 1312 additions and 387 deletions

65
schemas/status.py Normal file
View File

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