"""Reports module router factory.""" from fastapi import APIRouter def create_reports_router() -> APIRouter: """ Create and configure Reports module router. Includes all report-related endpoints: - /invoices - Invoice management - /dashboard - Dashboard and metrics - /treasury - Treasury operations - /trial-balance - Trial balance reports - /cache - Cache management Returns: APIRouter: Configured router for reports module """ router = APIRouter() # Import routers here to avoid circular imports from .invoices import router as invoices_router from .dashboard import router as dashboard_router from .treasury import router as treasury_router from .trial_balance import router as trial_balance_router from .cache import router as cache_router # Include all sub-routers (no prefix - already prefixed in main.py with /api/reports) router.include_router(invoices_router, prefix="/invoices", tags=["reports-invoices"]) router.include_router(dashboard_router, prefix="/dashboard", tags=["reports-dashboard"]) router.include_router(treasury_router, prefix="/treasury", tags=["reports-treasury"]) router.include_router(trial_balance_router, prefix="/trial-balance", tags=["reports-trial-balance"]) router.include_router(cache_router, prefix="/cache", tags=["reports-cache"]) return router