from pathlib import Path from ee.part import PartDb, load_db, save_db from ee.xml.bom_file_utils import * __all__ = ["create_distributor_search_list"] def create_distributor_search_list(in_dir: Path, out_dir: Path): print("in: {}, out: {}".format(in_dir, out_dir)) in_parts = load_db(in_dir) out_parts = PartDb() print("loaded {} existing parts".format(in_parts.size())) for part in in_parts.iterparts(): pn_value = find_pn(part) if pn_value is None: print("Skipping part with no part number: id={}".format(part.idProp)) continue entry = out_parts.find_by_pn(pn_value) if entry is not None: continue part.id = pn_value out_parts.add_entry(part, True) print("Saving {} work parts".format(out_parts.size())) save_db(out_dir, out_parts)