46 lines
1016 B
Python
46 lines
1016 B
Python
from fastapi import APIRouter
|
|
|
|
from backend.dependecies import SessionDependency
|
|
from schemas.position import *
|
|
from services.position import PositionService
|
|
|
|
position_router = APIRouter(
|
|
prefix="/position",
|
|
tags=["position"]
|
|
)
|
|
|
|
|
|
@position_router.get(
|
|
'/get-all',
|
|
operation_id='get_all_positions',
|
|
response_model=GetAllPositionsResponse
|
|
)
|
|
async def get_all(
|
|
session: SessionDependency
|
|
):
|
|
return await PositionService(session).get_all()
|
|
|
|
|
|
@position_router.post(
|
|
'/create',
|
|
operation_id='create_position',
|
|
response_model=CreatePositionResponse
|
|
)
|
|
async def create(
|
|
session: SessionDependency,
|
|
request: CreatePositionRequest
|
|
):
|
|
return await PositionService(session).create(request)
|
|
|
|
|
|
@position_router.post(
|
|
'/delete',
|
|
operation_id='delete_position',
|
|
response_model=DeletePositionResponse
|
|
)
|
|
async def delete(
|
|
session: SessionDependency,
|
|
request: DeletePositionRequest
|
|
):
|
|
return await PositionService(session).delete(request)
|