""" Router dependencies for Classes: - List: Description - Classes: Description Functions: - List: Description - Functions: Description """ from typing import Annotated from fastapi import Depends, Query from src.database import db_dependency from src.service.exceptions import ServiceNotFoundException from src.service.models import Service from src.service.schemas import ServiceIDMixin async def get_service_model_query(db: db_dependency, service_id: Annotated[int, Query(gt=0)]): service_model = db.get(Service, service_id) if service_model is None: raise ServiceNotFoundException(service_id=service_id) return service_model service_model_query_dependency = Annotated[type[Service], Depends(get_service_model_query)] async def get_service_model_body(db: db_dependency, request_model: ServiceIDMixin): service_model = db.get(Service, request_model.service_id) if service_model is None: raise ServiceNotFoundException(service_id=request_model.service_id) return service_model service_model_body_dependency = Annotated[type[Service], Depends(get_service_model_body)]