From 702d7900b646a9d873e6eaa4c61088c618eba9f1 Mon Sep 17 00:00:00 2001 From: Trygve Laugstøl Date: Tue, 14 May 2019 23:08:20 +0200 Subject: ee.logging: New module to handle logging. Need something better for messages too. create-bom: Resolving parts from their value fact too. --- src/ee/part/__init__.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'src/ee/part') diff --git a/src/ee/part/__init__.py b/src/ee/part/__init__.py index 43e4cfa..ff6c7f1 100644 --- a/src/ee/part/__init__.py +++ b/src/ee/part/__init__.py @@ -203,6 +203,18 @@ class Part(object): def supplier(self) -> str: return self.xml.supplierProp + @property + def printable_reference(self): + for refs, value in [(self.get_schematic_references(), lambda sr: sr.referenceProp), + (self.get_part_references(), lambda pr: pr.part_uriProp), + (self.get_mpns(), lambda mpn: mpn.valueProp), + (self.get_spns(), lambda spn: spn.valueProp)]: + ref = next(iter(refs), None) + if ref: + return value(ref) + + return self.uri + # Part number ref def add_part_reference(self, uri): @@ -366,6 +378,9 @@ class PartDb(object): def size(self) -> int: return len(self.parts) + def __len__(self): + return self.size() + @property def has_assembly(self): return self._assembly is not None -- cgit v1.2.3