59 lines
1.2 KiB
Python
59 lines
1.2 KiB
Python
from fastapi import APIRouter, Depends
|
|
|
|
from backend.dependecies import SessionDependency
|
|
from schemas.user import *
|
|
from services.auth import authorized_user
|
|
from services.user import UserService
|
|
|
|
user_router = APIRouter(
|
|
prefix="/user",
|
|
tags=["user"],
|
|
dependencies=[Depends(authorized_user)]
|
|
)
|
|
|
|
|
|
@user_router.get(
|
|
'/get-all',
|
|
response_model=GetAllUsersResponse,
|
|
operation_id='get_all_users'
|
|
)
|
|
async def get_all(
|
|
session: SessionDependency
|
|
):
|
|
return await UserService(session).get_all()
|
|
|
|
|
|
@user_router.post(
|
|
'/update',
|
|
response_model=UpdateUserResponse,
|
|
operation_id='update_user'
|
|
)
|
|
async def update(
|
|
session: SessionDependency,
|
|
request: UpdateUserRequest
|
|
):
|
|
return await UserService(session).update(request)
|
|
|
|
|
|
@user_router.post(
|
|
'/create',
|
|
response_model=CreateUserResponse,
|
|
operation_id='create_user'
|
|
)
|
|
async def create(
|
|
session: SessionDependency,
|
|
request: CreateUserRequest
|
|
):
|
|
return await UserService(session).create(request)
|
|
|
|
|
|
@user_router.get(
|
|
'/get-managers',
|
|
response_model=GetManagersResponse,
|
|
operation_id='get_managers',
|
|
)
|
|
async def get_managers(
|
|
session: SessionDependency,
|
|
):
|
|
return await UserService(session).get_managers()
|