service_man/api/infrastructure/persistence/repositories/user_repository.py

26 lines
762 B
Python

from sqlalchemy import insert
from sqlalchemy.ext.asyncio import AsyncSession
from api.domain.user import User, UserRepository
from api.infrastructure.persistence.models.user import UserModel
class SqlAlchemyUserRepository(UserRepository):
def __init__(self, session: AsyncSession) -> None:
self.session = session
async def create_user(self, user: User) -> None:
stmt = insert(UserModel).values(
id=user.id.value,
name=user.name.value,
email=user.email.value,
hashed_password=user.hashed_password,
)
await self.session.execute(stmt)
async def get_user(self, filter: dict) -> User | None:
pass
async def get_users(self) -> list[User]:
return []