Nuevo formulario de extension para partes SCAI con nuevas tablas de aphis con catalogos fijos nuevos

This commit is contained in:
2026-03-18 10:50:36 -05:00
parent adfa82c707
commit 546b1ea56f
39 changed files with 30627 additions and 98 deletions

View File

@@ -1,4 +1,4 @@
from pydantic import BaseModel
from pydantic import BaseModel, ConfigDict
from typing import Optional, List
from datetime import date
@@ -13,3 +13,5 @@ class InvPartAphisCharacteristicDTO(BaseModel):
commodity_char_qua: Optional[str] = None
description: Optional[str] = None
category_code: Optional[str] = None
model_config = ConfigDict(from_attributes=True)

View File

@@ -1,4 +1,4 @@
from pydantic import BaseModel
from pydantic import BaseModel, ConfigDict
from typing import Optional, List
from datetime import date
@@ -8,3 +8,5 @@ class InvPartAphisContainersDTO(BaseModel):
container_number: Optional[str] = None
length: Optional[str] = None
type: Optional[str] = None
model_config = ConfigDict(from_attributes=True)

View File

@@ -1,4 +1,4 @@
from pydantic import BaseModel
from pydantic import BaseModel, ConfigDict
from typing import Optional, List
from datetime import date
@@ -9,3 +9,5 @@ class InvPartAphisEntitiesDTO(BaseModel):
broker_key: Optional[str] = None
lpco_auth_party_key: Optional[str] = None
grower_key: Optional[str] = None
model_config = ConfigDict(from_attributes=True)

View File

@@ -1,5 +1,5 @@
from pydantic import BaseModel
from typing import Optional, List
from pydantic import BaseModel, field_validator, ConfigDict
from typing import Optional, List, Any
from datetime import date
from ..inv_aphis_characteristic.dto import InvPartAphisCharacteristicDTO
@@ -52,3 +52,13 @@ class InvPartAphisGeneralDTO(BaseModel):
entities: List[InvPartAphisEntitiesDTO] = []
containers: List[InvPartAphisContainersDTO] = []
routing: List[InvPartAphisRoutingDTO] = []
model_config = ConfigDict(from_attributes=True)
@field_validator('signed_doc_date', 'inspection_date', 'inspection_loc_date', mode='before')
@classmethod
def empty_str_to_none(cls, v: Any) -> Any:
if v == "":
return None
return v

View File

@@ -1,5 +1,5 @@
from pydantic import BaseModel
from typing import Optional, List
from pydantic import BaseModel, field_validator, ConfigDict
from typing import Optional, List, Any
from datetime import date
class InvPartAphisLpcosDTO(BaseModel):
@@ -16,3 +16,12 @@ class InvPartAphisLpcosDTO(BaseModel):
date_qual: Optional[str] = None
date: Optional[date] = None
qty: Optional[str] = None
model_config = ConfigDict(from_attributes=True)
@field_validator('date', mode='before')
@classmethod
def empty_str_to_none(cls, v: Any) -> Any:
if v == "":
return None
return v

View File

@@ -1,4 +1,4 @@
from pydantic import BaseModel
from pydantic import BaseModel, ConfigDict
from typing import Optional, List
from datetime import date
@@ -8,3 +8,5 @@ class InvPartAphisRoutingDTO(BaseModel):
type: Optional[str] = None
country: Optional[str] = None
name: Optional[str] = None
model_config = ConfigDict(from_attributes=True)

View File

@@ -1,5 +1,5 @@
from pydantic import BaseModel
from typing import Optional, List
from pydantic import BaseModel, field_validator, ConfigDict
from typing import Optional, List, Any
from datetime import date
class InvPartAphisStypePitemsDTO(BaseModel):
@@ -12,3 +12,12 @@ class InvPartAphisStypePitemsDTO(BaseModel):
processing_end: Optional[date] = None
processing_type: Optional[str] = None
processing_desc: Optional[str] = None
model_config = ConfigDict(from_attributes=True)
@field_validator('processing_start', 'processing_end', mode='before')
@classmethod
def empty_str_to_none(cls, v: Any) -> Any:
if v == "":
return None
return v