fooder-api/fooder/repository/preset_entry.py

15 lines
540 B
Python

from sqlalchemy import select
from fooder.domain import PresetEntry
from fooder.domain.preset import Preset
from fooder.repository.base import RepositoryBase
class PresetEntryRepository(RepositoryBase[PresetEntry]):
async def get_by_id_and_user(self, entry_id: int, user_id: int) -> PresetEntry:
stmt = (
select(PresetEntry)
.join(Preset, PresetEntry.preset_id == Preset.id)
.where(PresetEntry.id == entry_id, Preset.user_id == user_id)
)
return await self._get(stmt=stmt)