from typing import Optional from pydantic import BaseModel, Field, ConfigDict class SerieBase(BaseModel): row: Optional[int] = Field(None, description="Serie row number (RENGLON)") serial_numbers: Optional[str] = Field(None, max_length=50, description="Serial number (SERIEEXPO)") model: Optional[str] = Field(None, max_length=50, description="Model (MODELOEXPO)") sub_model: Optional[str] = Field(None, max_length=50, description="Sub model (SUBMODELOEXPO)") brand: Optional[str] = Field(None, max_length=50, description="Brand (MARCA)") # expo_brand: Optional[str] = Field(None, max_length=50, description="Expo brand (MARCAEXPO)") number_id: Optional[str] = Field(None, max_length=25, description="Number ID (NUMIDEXPO)") # import_invoice: Optional[str] = Field(None, max_length=15, description="Import invoice (FACTURAIMPO)") # import_line: Optional[int] = Field(None, description="Import line (LINEAIMPO)") image_path: Optional[str] = Field(None, max_length=255, description="Image path (IMAGEPATHMEX)") class SerieCreate(SerieBase): pass class SerieUpdate(SerieBase): pass class SerieResponse(SerieBase): id: int line_item_id: int model_config = ConfigDict(from_attributes=True)