80 lines
2.1 KiB
Python
80 lines
2.1 KiB
Python
from fastapi import APIRouter, Depends
|
|
|
|
from backend.dependecies import SessionDependency, CurrentUserDependency
|
|
from schemas.group import *
|
|
from services.auth import authorized_user
|
|
from services.card_group import CardGroupService
|
|
|
|
card_group_router = APIRouter(
|
|
prefix='/card-group',
|
|
tags=['card-group'],
|
|
)
|
|
|
|
|
|
@card_group_router.patch(
|
|
'/',
|
|
response_model=CardGroupUpdateResponse,
|
|
operation_id='update_card_group',
|
|
dependencies=[Depends(authorized_user)]
|
|
)
|
|
async def update_group(
|
|
request: CardGroupUpdateRequest,
|
|
session: SessionDependency,
|
|
):
|
|
return await CardGroupService(session).update_group(request)
|
|
|
|
|
|
@card_group_router.post(
|
|
'/',
|
|
response_model=CardCreateGroupResponse,
|
|
operation_id='create_card_group',
|
|
dependencies=[Depends(authorized_user)]
|
|
)
|
|
async def create_group(
|
|
request: CreateCardGroupRequest,
|
|
session: SessionDependency,
|
|
user: CurrentUserDependency
|
|
):
|
|
return await CardGroupService(session).create_group(user, request)
|
|
|
|
|
|
@card_group_router.patch(
|
|
'/change-status',
|
|
response_model=CardGroupChangeStatusResponse,
|
|
operation_id='change_status',
|
|
dependencies=[Depends(authorized_user)]
|
|
)
|
|
async def change_status(
|
|
request: CardGroupChangeStatusRequest,
|
|
session: SessionDependency,
|
|
user: CurrentUserDependency
|
|
):
|
|
return await CardGroupService(session).change_group_status(user,request)
|
|
|
|
|
|
@card_group_router.post(
|
|
'/card',
|
|
response_model=CardAddToGroupResponse,
|
|
operation_id='add_card',
|
|
dependencies=[Depends(authorized_user)]
|
|
)
|
|
async def add_card(
|
|
request: CardAddToGroupRequest,
|
|
session: SessionDependency,
|
|
user: CurrentUserDependency
|
|
):
|
|
return await CardGroupService(session).add_card(user, request)
|
|
|
|
|
|
@card_group_router.delete(
|
|
'/card',
|
|
response_model=CardRemoveFromGroupResponse,
|
|
operation_id='remove_card',
|
|
dependencies=[Depends(authorized_user)]
|
|
)
|
|
async def remove_card(
|
|
request: CardRemoveFromGroupRequest,
|
|
session: SessionDependency,
|
|
):
|
|
return await CardGroupService(session).remove_card(request)
|