othr
This commit is contained in:
@@ -4,7 +4,10 @@ from fastapi import APIRouter, Depends
|
||||
from sqlalchemy.ext.asyncio import AsyncSession
|
||||
|
||||
from backend.session import get_session
|
||||
from schemas.client import ClientSearchRequest
|
||||
from models import User
|
||||
from schemas.client import ClientSearchRequest, ClientUpdateDetailsRequest, ClientUpdateDetailsResponse, \
|
||||
ClientGetAllResponse
|
||||
from services.auth import get_current_user
|
||||
from services.client import ClientService
|
||||
|
||||
client_router = APIRouter(
|
||||
@@ -19,3 +22,25 @@ async def search_clients(
|
||||
session: Annotated[AsyncSession, Depends(get_session)]
|
||||
):
|
||||
return await ClientService(session).search_clients(ClientSearchRequest(name=name))
|
||||
|
||||
|
||||
@client_router.post('/update-details')
|
||||
async def update_client_details(
|
||||
session: Annotated[AsyncSession, Depends(get_session)],
|
||||
user: Annotated[User, Depends(get_current_user)],
|
||||
request: ClientUpdateDetailsRequest,
|
||||
):
|
||||
service = ClientService(session)
|
||||
client = await service.get_by_id(request.client_id)
|
||||
if not client:
|
||||
return ClientUpdateDetailsResponse(ok=False)
|
||||
await service.update_details(user, client, request.details)
|
||||
await session.commit()
|
||||
return ClientUpdateDetailsResponse(ok=True)
|
||||
|
||||
|
||||
@client_router.get('/get-all', operation_id='get_all_clients', response_model=ClientGetAllResponse)
|
||||
async def get_all_clients(
|
||||
session: Annotated[AsyncSession, Depends(get_session)],
|
||||
):
|
||||
return await ClientService(session).get_all()
|
||||
|
||||
Reference in New Issue
Block a user