18 lines
595 B
Python
18 lines
595 B
Python
"""Abstract repository interface for VacationDays.
|
|
|
|
Adds entity-specific queries on top of the generic CRUD contract. Concrete
|
|
implementations live in app/repositories_impl/<backend>/.
|
|
"""
|
|
|
|
from abc import abstractmethod
|
|
from uuid import UUID
|
|
|
|
from app.entities.vacation_days import VacationDays
|
|
from app.repositories.base import Repository
|
|
|
|
|
|
class VacationDaysRepository(Repository[VacationDays]):
|
|
@abstractmethod
|
|
async def get_by_parent_year(self, personal_data_uuid: UUID, year: int) -> VacationDays | None:
|
|
"""Return the entry for a given parent + year (UNIQUE), or None."""
|