from sqlalchemy import select from sqlalchemy.ext.asyncio import AsyncSession from domains.users.models import User async def get_user_by_id(db: AsyncSession, user_id): result = await db.execute( select(User).where(User.id == user_id) ) return result.scalar_one_or_none() async def get_user_by_username(db: AsyncSession, username): result = await db.execute( select(User).where(User.username == username) ) return result.scalar_one_or_none() async def create_user(db: AsyncSession, user: User): db.add(user) await db.commit() await db.refresh(user) return user async def get_all_users(db: AsyncSession): result = await db.execute(select(User)) return result.scalars().all()