refactor: equipment master join equipment tree

main
MrWaradana 10 months ago
parent c3d191182e
commit 333cf1d68b

@ -44,10 +44,13 @@ class EquipmentMaster(Base, DefaultMixin):
"EquipmentMaster", backref=backref("parent", remote_side=[id]), lazy="selectin"
)
# equipment_tree = relationship(
# "EquipmentTree",
# back_populates="equipment_master"
# )
equipment_tree = relationship(
"EquipmentTree",
lazy="selectin",
primaryjoin="and_(EquipmentTree.id == foreign(EquipmentMaster.equipment_tree_id))",
viewonly=True,
uselist=False,
)
class EquipmentTree(Base, DefaultMixin):

@ -1,4 +1,3 @@
from datetime import datetime
from typing import ForwardRef, List, Optional
from uuid import UUID
@ -18,14 +17,22 @@ class EquipmentMasterCreate(EquipmentMasterBase):
pass
class EquipmentTree(DefaultBase):
level_no: Optional[int] = Field(None, nullable=True)
name: Optional[str] = Field(None, nullable=True)
class EquipmentMasterUpdate(EquipmentMasterBase):
pass
EquipmentMasterReadRef = ForwardRef('EquipmentMasterRead')
EquipmentMasterReadRef = ForwardRef("EquipmentMasterRead")
class EquipmentMasterRead(EquipmentMasterBase):
id: UUID
equipment_tree_id: Optional[UUID] = Field(None, nullable=True)
equipment_tree: EquipmentTree
category_id: Optional[UUID] = Field(None, nullable=True)
system_tag: Optional[str] = Field(None, nullable=True)
assetnum: Optional[str] = Field(None, nullable=True)
@ -33,6 +40,5 @@ class EquipmentMasterRead(EquipmentMasterBase):
children: List[EquipmentMasterReadRef] # type: ignore
class EquipmentMasterPaginated(Pagination):
items: List[EquipmentMasterRead] = []

Loading…
Cancel
Save