diff --git a/src/overhaul_activity/schema.py b/src/overhaul_activity/schema.py index ba6899f..32ca50b 100644 --- a/src/overhaul_activity/schema.py +++ b/src/overhaul_activity/schema.py @@ -5,7 +5,7 @@ from uuid import UUID from pydantic import Field from src.models import DefultBase, Pagination -from src.scope_equipment.schema import MasterEquipmentRead +from src.scope_equipment.schema import MasterEquipmentTree from src.job.schema import ActivityMasterRead class OverhaulActivityBase(DefultBase): @@ -40,7 +40,7 @@ class OverhaulActivityRead(OverhaulActivityBase): service_cost: Optional[float] = Field(0) assetnum: str = Field(..., description="Assetnum is required") status: str - equipment: MasterEquipmentRead + equipment: MasterEquipmentTree overhaul_scope: OverhaulScope overhaul_jobs: Optional[List[OverhaulJob]] = Field([]) diff --git a/src/scope_equipment/schema.py b/src/scope_equipment/schema.py index 1a8bde8..1bdfd6a 100644 --- a/src/scope_equipment/schema.py +++ b/src/scope_equipment/schema.py @@ -47,9 +47,10 @@ class MasterEquipmentRead(DefultBase): assetnum: Optional[str] = Field(None, title="Asset Number") location_tag: Optional[str] = Field(None, title="Location Tag") name: str + +class MasterEquipmentTree(MasterEquipmentRead): parent_id: Optional[UUID] parent: Optional[EquipmentMasterReadRef] = Field(None) # type: ignore - class MasterEquipmentPagination(Pagination): items: List[MasterEquipmentRead] = []