from typing import Annotated from fastapi import APIRouter, Depends from sqlalchemy.orm import Session from app.config import get_settings from app.deps import get_db from app.models.buildings import BuildingsQueryRequest, BuildingsQueryResponse from app.routers.errors import as_501 from app.services import buildings as buildings_service router = APIRouter() @router.post("/query", response_model=BuildingsQueryResponse) def query( request: BuildingsQueryRequest, db: Annotated[Session, Depends(get_db)], ) -> BuildingsQueryResponse: return as_501( lambda: buildings_service.query_buildings( request, db, limit=get_settings().buildings_query_limit, ) )