- Updated SealService to support tenant and company filtering with pagination and enhanced CRUD methods. - Refactored TrailerService to include tenant and company support, added filtering capabilities, and improved CRUD methods. - Introduced TenantCRUDRoutes for Trailer and Transporter routes to streamline API endpoint creation and management. - Enhanced TransporterService with tenant and company filtering, pagination, and improved CRUD operations. - Added Customs Broker module with DTOs, models, services, and routes for managing customs broker data. - Implemented CRUD operations for Customs Broker, including personnel and VU management. - Improved data validation and descriptions in DTOs for better API documentation.
23 lines
859 B
Python
23 lines
859 B
Python
from api.v1.common.tenant_crud_routes import TenantCRUDRoutes
|
|
|
|
from .dto import TrailerCreateDTO, TrailerResponseDTO, TrailerUpdateDTO
|
|
from .services import TrailerService
|
|
|
|
# Create router using TenantCRUDRoutes factory
|
|
# Note: trailer_number is a string (not int) and is used as the primary key
|
|
router = TenantCRUDRoutes(
|
|
service=TrailerService,
|
|
create_schema=TrailerCreateDTO,
|
|
update_schema=TrailerUpdateDTO,
|
|
response_schema=TrailerResponseDTO,
|
|
prefix="/trailers",
|
|
tags=[],
|
|
resource_name="Trailer",
|
|
id_name="trailer_number", # Using trailer_number instead of numeric ID
|
|
id_type=str, # Specify that the ID is a string
|
|
enable_list=True, # Enable GET /trailers with pagination
|
|
enable_filters=True, # Enable filtering by plate_number and trailer_type_key
|
|
default_page_size=50,
|
|
max_page_size=100,
|
|
).router
|