- 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.
31 lines
920 B
Python
31 lines
920 B
Python
from typing import Optional
|
|
|
|
from pydantic import BaseModel, Field
|
|
|
|
|
|
class ExchangeRateBaseDTO(BaseModel):
|
|
date: int = Field(..., description="Exchange rate date")
|
|
value: Optional[float] = Field(None, description="Exchange rate value")
|
|
local_currency: Optional[str] = Field(None, max_length=7, description="Local currency code")
|
|
foreign_currency: Optional[str] = Field(None, max_length=7, description="Foreign currency code")
|
|
|
|
|
|
class ExchangeRateCreateDTO(ExchangeRateBaseDTO):
|
|
"""Schema for creating an exchange rate"""
|
|
pass
|
|
|
|
|
|
class ExchangeRateUpdateDTO(ExchangeRateBaseDTO):
|
|
"""Schema for updating an exchange rate"""
|
|
date: Optional[int] = Field(None, description="Exchange rate date")
|
|
|
|
|
|
class ExchangeRateResponseDTO(ExchangeRateBaseDTO):
|
|
"""Schema for exchange rate response"""
|
|
id: int
|
|
company_id: int
|
|
tenant_id: int
|
|
|
|
class Config:
|
|
from_attributes = True
|