Files
malenia/repositories/users.py
2026-04-05 21:06:43 +07:00

24 lines
672 B
Python

from typing import Optional
from sqlalchemy import select
from sqlalchemy.ext.asyncio import AsyncSession
from db.models import User
from dto.users import NewUserDTO
class UserRepository:
async def get_user_by_id(
self, session: AsyncSession, user_id: int
) -> Optional[User]:
stmt = select(User).where(User.id == user_id)
result = await session.execute(stmt)
return result.scalar_one_or_none()
async def create_user(self, session: AsyncSession, user_data: NewUserDTO) -> User:
user = User(id=user_data.id, referal_id=user_data.referal)
session.add(user)
await session.commit()
return user