- Enhanced TenantMiddleware to validate tenant information from JWT tokens. - Added LicenseValidationMiddleware to check tenant licenses before processing requests. - Updated security utilities to extract tenant information from tokens and validate company access. - Introduced CompanyStore to manage active company state and handle company switching in the frontend. - Modified API routes to include company_id in requests for better resource management. - Improved logging and error handling throughout the middleware and API layers. - Updated frontend components to reflect changes in company management and selection. - Added new API route for fetching user's companies with proper authentication handling.
113 lines
3.5 KiB
Python
113 lines
3.5 KiB
Python
"""
|
|
Router principal de API v1
|
|
Agrega todos los módulos de la aplicación
|
|
"""
|
|
|
|
from fastapi import APIRouter
|
|
|
|
from .pedimento_codes.routes import router as pedimento_codes_router
|
|
from .payment_methods.routes import router as payment_methods_router
|
|
from .containers.routes import router as containers_router
|
|
from .countries.routes import router as countries_router
|
|
from .material_types.routes import router as material_types_router
|
|
from .currency_types.routes import router as currency_types_router
|
|
from .states.routes import router as states_router
|
|
from .transport_types.routes import router as transport_types_router
|
|
from .customs_warehouses.routes import router as customs_warehouses_router
|
|
from .valuation_methods.routes import router as valuation_methods_router
|
|
from .sectors.routes import router as sectors_router
|
|
from .transport_modes.routes import router as transport_modes_router
|
|
from .customs_sections.routes import router as customs_sections_router
|
|
from .invoice_types.routes import router as invoice_types_router
|
|
from .code_pedimento_regimens.routes import router as code_pedimento_regimens_router
|
|
from .pedimento_regimens.routes import router as pedimento_regimens_router
|
|
from .incoterms.routes import router as incoterms_router
|
|
|
|
# Router principal
|
|
router = APIRouter()
|
|
|
|
# Registrar módulos
|
|
router.include_router(
|
|
pedimento_codes_router,
|
|
prefix="/refrence_data",
|
|
tags=["public / refrence_data / pedimento_codes"],
|
|
)
|
|
router.include_router(
|
|
payment_methods_router,
|
|
prefix="/refrence_data",
|
|
tags=["public / refrence_data / payment_methods"],
|
|
)
|
|
router.include_router(
|
|
containers_router,
|
|
prefix="/refrence_data",
|
|
tags=["public / refrence_data / containers"],
|
|
)
|
|
router.include_router(
|
|
countries_router,
|
|
prefix="/refrence_data",
|
|
tags=["public / refrence_data / countries"],
|
|
)
|
|
router.include_router(
|
|
material_types_router,
|
|
prefix="/refrence_data",
|
|
tags=["public / refrence_data / material_types"],
|
|
)
|
|
router.include_router(
|
|
currency_types_router,
|
|
prefix="/refrence_data",
|
|
tags=["public / refrence_data / currency_types"],
|
|
)
|
|
router.include_router(
|
|
states_router, prefix="/refrence_data", tags=["public / refrence_data / states"]
|
|
)
|
|
router.include_router(
|
|
transport_types_router,
|
|
prefix="/refrence_data",
|
|
tags=["public / refrence_data / transport_types"],
|
|
)
|
|
router.include_router(
|
|
customs_warehouses_router,
|
|
prefix="/refrence_data",
|
|
tags=["public / refrence_data / customs_warehouses"],
|
|
)
|
|
router.include_router(
|
|
valuation_methods_router,
|
|
prefix="/refrence_data",
|
|
tags=["public / refrence_data / valuation_methods"],
|
|
)
|
|
router.include_router(
|
|
sectors_router,
|
|
prefix="/refrence_data",
|
|
tags=["public / public / refrence_data / sectors"],
|
|
)
|
|
router.include_router(
|
|
transport_modes_router,
|
|
prefix="/refrence_data",
|
|
tags=["public / refrence_data / transport_modes"],
|
|
)
|
|
router.include_router(
|
|
customs_sections_router,
|
|
prefix="/refrence_data",
|
|
tags=["public / refrence_data / customs_sections"],
|
|
)
|
|
router.include_router(
|
|
invoice_types_router,
|
|
prefix="/refrence_data",
|
|
tags=["public / refrence_data / invoice_types"],
|
|
)
|
|
router.include_router(
|
|
code_pedimento_regimens_router,
|
|
prefix="/refrence_data",
|
|
tags=["public / refrence_data / code_pedimento_regimens"],
|
|
)
|
|
router.include_router(
|
|
pedimento_regimens_router,
|
|
prefix="/refrence_data",
|
|
tags=["public / refrence_data / pedimento_regimens"],
|
|
)
|
|
router.include_router(
|
|
incoterms_router,
|
|
prefix="/refrence_data",
|
|
tags=["public / refrence_data / incoterms"],
|
|
)
|