62 lines
		
	
	
		
			972 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			62 lines
		
	
	
		
			972 B
		
	
	
	
		
			Python
		
	
	
	
	
	
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
 | 
						|
    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
 |