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

61
schemas/board.py Normal file
View File

@@ -0,0 +1,61 @@
from schemas.base import BaseSchema, OkMessageSchema
from schemas.project import ProjectSchema
from schemas.status import StatusSchema
# region Entities
class BaseBoardSchema(BaseSchema):
name: str
project_id: int
class BoardSchema(BaseBoardSchema):
id: int
ordinal_number: int
deal_statuses: list[StatusSchema]
project: ProjectSchema
# endregion
# region Requests
class CreateBoardRequest(BaseSchema):
board: BaseBoardSchema
class UpdateBoardRequest(BaseSchema):
board: BoardSchema
class UpdateBoardOrderRequest(BaseSchema):
project_id: int
board_id: int
new_ordinal_number: int
# endregion
# region Responses
class GetBoardsResponse(BaseSchema):
boards: list[BoardSchema]
class CreateBoardResponse(OkMessageSchema):
pass
class UpdateBoardResponse(OkMessageSchema):
pass
class UpdateBoardOrderResponse(OkMessageSchema):
pass
class DeleteBoardResponse(OkMessageSchema):
pass
# endregion