feat: pydantic models for swagger

This commit is contained in:
TheNoxium
2025-05-26 13:45:40 +05:00
parent 96dbc744d7
commit 98a4692247
8 changed files with 43 additions and 50 deletions

View File

@@ -10,7 +10,7 @@ from enum import Enum
from api.db.tables.account import account_table
from api.schemas.account.account import User
from api.schemas.endpoints.account import UserUpdate, Role, Status
from api.schemas.endpoints.account import AllUser,AllUserResponse
async def get_all_users_login_and_id(connection: AsyncConnection,page,limit) -> Optional[User]:
"""
@@ -27,6 +27,8 @@ async def get_all_users_login_and_id(connection: AsyncConnection,page,limit) ->
user_list = [{'id': user.id, 'login': user.login} for user in users]
user_models = [AllUser(id=user['id'], login=user['login']) for user in user_list]
count_query = select(func.count()).select_from(account_table)
count_result = await connection.execute(count_query)
@@ -34,13 +36,7 @@ async def get_all_users_login_and_id(connection: AsyncConnection,page,limit) ->
amount_pages = math.ceil(amount_count / limit)
return {
'users': user_list,
'amount_count': amount_count,
'amount_pages': amount_pages
}
return user_list
return AllUserResponse(users=user_models, amount_count=amount_count, amount_pages=amount_pages)
async def get_user_id(connection: AsyncConnection, id: int) -> Optional[User]: