15 lines
573 B
Python
15 lines
573 B
Python
import datetime
|
|
from typing import Sequence
|
|
|
|
from fooder.domain import Diary
|
|
from fooder.repository.base import RepositoryBase, DEFAULT_LIMIT
|
|
|
|
|
|
class DiaryRepository(RepositoryBase[Diary]):
|
|
async def get_by_user_and_date(self, user_id: int, date: datetime.date) -> Diary:
|
|
return await self._get(Diary.user_id == user_id, Diary.date == date)
|
|
|
|
async def list_by_user(
|
|
self, user_id: int, offset: int = 0, limit: int | None = DEFAULT_LIMIT
|
|
) -> Sequence[Diary]:
|
|
return await self._list(Diary.user_id == user_id, offset=offset, limit=limit)
|