Add bundles' wires' part number info to BOM

This commit is contained in:
Daniel Rojas 2022-08-05 15:01:07 +02:00 committed by KV
parent 7d49f50984
commit 8c9a8c1cb3
2 changed files with 17 additions and 2 deletions

View File

@ -631,6 +631,20 @@ class Cable(TopLevelGraphicalComponent):
)
return desc
def _get_wire_partnumber(self, idx) -> PartNumberInfo:
# TODO: possibly make more robust/elegant
if self.category == "bundle":
if isinstance(self.partnumbers.pn, List):
return PartNumberInfo(
self.partnumbers.pn[idx],
self.partnumbers.manufacturer[idx],
self.partnumbers.mpn[idx],
self.partnumbers.supplier[idx],
self.partnumbers.spn[idx],
)
else:
return None
def __post_init__(self) -> None:
super().fill_partnumbers()
@ -708,8 +722,8 @@ class Cable(TopLevelGraphicalComponent):
gauge=self.gauge,
length=self.length,
sum_amounts_in_bom=self.sum_amounts_in_bom,
ignore_in_bom=self.ignore_in_bom
# TODO partnumbers
ignore_in_bom=self.ignore_in_bom,
partnumbers=self._get_wire_partnumber(wire_index),
)
if self.shield:

View File

@ -105,6 +105,7 @@ class Harness:
]
+ all_subitems
)
# add items to BOM
for item in all_toplevel_items:
self._add_to_internal_bom(item) # nested subitems are also handled