satupeta-main/app/repositories/role_repository.py

25 lines
757 B
Python
Raw Normal View History

2026-01-27 02:11:58 +00:00
from typing import List
from fastapi_async_sqlalchemy import db
from sqlalchemy import select
from app.models import RoleModel
from . import BaseRepository
class RoleRepository(BaseRepository[RoleModel]):
def __init__(self, model):
super().__init__(model)
async def find_by_name(self, name: str) -> RoleModel:
"""Find record by name."""
query = select(self.model).where(self.model.name == name)
result = await db.session.execute(query)
return result.scalar_one_or_none()
async def get_list_by_names(self, name: List[str]) -> List[RoleModel]:
query = select(self.model).filter(self.model.name.in_(name))
result = await db.session.execute(query)
return result.scalars().all()