from sqlalchemy import select, update from src.models import UsersORM from src.repository.base import BaseRepo class UsersRepo(BaseRepo): model = UsersORM async def get_all_users(self) -> list[UsersORM]: query = select(self.model) result = await self.session.execute(query) models = result.scalars().all() return models async def update_one(self, id: int, data: dict) -> UsersORM: stmt = ( update(self.model) .where(self.model.id == id) .values(data.model_dump(exclude_unset=True)) .returning(self.model) ) result = await self.session.execute(stmt) model = result.scalar_one() return model