feat: projects and boards
This commit is contained in:
67
routers/status.py
Normal file
67
routers/status.py
Normal file
@@ -0,0 +1,67 @@
|
||||
from typing import Annotated
|
||||
|
||||
from fastapi import APIRouter, Depends
|
||||
from sqlalchemy.ext.asyncio import AsyncSession
|
||||
|
||||
from backend.session import get_session
|
||||
from schemas.status import *
|
||||
from services.auth import guest_user, authorized_user
|
||||
from services.status import StatusService
|
||||
|
||||
status_router = APIRouter(
|
||||
prefix="/status",
|
||||
tags=["status"],
|
||||
dependencies=[Depends(guest_user)]
|
||||
)
|
||||
|
||||
|
||||
@status_router.post(
|
||||
'/',
|
||||
response_model=CreateStatusResponse,
|
||||
operation_id="create_status",
|
||||
dependencies=[Depends(authorized_user)]
|
||||
)
|
||||
async def create_status(
|
||||
session: Annotated[AsyncSession, Depends(get_session)],
|
||||
request: CreateStatusRequest,
|
||||
):
|
||||
return await StatusService(session).create_status(request)
|
||||
|
||||
|
||||
@status_router.patch(
|
||||
'/',
|
||||
response_model=UpdateStatusResponse,
|
||||
operation_id="update_status",
|
||||
dependencies=[Depends(authorized_user)]
|
||||
)
|
||||
async def update_status(
|
||||
session: Annotated[AsyncSession, Depends(get_session)],
|
||||
request: UpdateStatusRequest,
|
||||
):
|
||||
return await StatusService(session).update_status(request)
|
||||
|
||||
|
||||
@status_router.patch(
|
||||
'/order',
|
||||
response_model=UpdateStatusOrderResponse,
|
||||
operation_id="update_status_order",
|
||||
dependencies=[Depends(authorized_user)]
|
||||
)
|
||||
async def update_status_order(
|
||||
session: Annotated[AsyncSession, Depends(get_session)],
|
||||
request: UpdateStatusOrderRequest,
|
||||
):
|
||||
return await StatusService(session).update_status_order(request)
|
||||
|
||||
|
||||
@status_router.delete(
|
||||
'/{status_id}',
|
||||
response_model=DeleteStatusResponse,
|
||||
operation_id="delete_status",
|
||||
dependencies=[Depends(authorized_user)]
|
||||
)
|
||||
async def delete_status(
|
||||
session: Annotated[AsyncSession, Depends(get_session)],
|
||||
status_id: int,
|
||||
):
|
||||
return await StatusService(session).delete_status(status_id)
|
||||
Reference in New Issue
Block a user