feat: board deletion endpoint
This commit is contained in:
@ -9,6 +9,7 @@ from schemas.board import (
|
||||
UpdateBoardResponse,
|
||||
CreateBoardRequest,
|
||||
CreateBoardResponse,
|
||||
DeleteBoardResponse,
|
||||
)
|
||||
|
||||
|
||||
@ -38,3 +39,12 @@ class BoardService:
|
||||
|
||||
await self.repository.update(board, request.board)
|
||||
return UpdateBoardResponse(message="Доска успешно обновлена")
|
||||
|
||||
async def delete_board(self, board_id: int) -> DeleteBoardResponse:
|
||||
board = await self.repository.get_by_id(board_id)
|
||||
if not board:
|
||||
raise HTTPException(status_code=404, detail="Доска не найдена")
|
||||
|
||||
is_soft_needed: bool = len(board.deals) > 0
|
||||
await self.repository.delete(board, is_soft_needed)
|
||||
return DeleteBoardResponse(message="Доска успешно удалена")
|
||||
|
||||
Reference in New Issue
Block a user