From 2e76c4d959687f0cf28a79b8f197f4a5c2985e4a Mon Sep 17 00:00:00 2001 From: "s.steuer" Date: Tue, 6 Feb 2024 14:59:31 +0100 Subject: [PATCH] =?UTF-8?q?Library=20erg=C3=A4nzt,=20um=20die=20Teilestamm?= =?UTF-8?q?informationen=20von=20allen=20nicht=20migrierten=20Teilenummern?= =?UTF-8?q?=20einer=20Baugruppe=20als=20CSV=20ableiten=20zu=20k=C3=B6nnen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/get_teilestamm.py | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 lib/get_teilestamm.py diff --git a/lib/get_teilestamm.py b/lib/get_teilestamm.py new file mode 100644 index 0000000..9083713 --- /dev/null +++ b/lib/get_teilestamm.py @@ -0,0 +1,31 @@ +import argparse +import os +from manage_configs import MigrationStatus +import update_database + +class FetchSivasTeilestamm: + def __init__(self, assembly_json_name, assembly_json_out_dir=os.environ.get('CREMIG_DATA'), csv_out_dir=os.environ.get('CREMIG_DATA')): + self.migration = MigrationStatus(assembly_json_out_dir, str(assembly_json_name).replace('.json', "") + ".json") + self.csv_out_dir = csv_out_dir + + def get_unmigrated_teilstamm_csvs(self): + """Generiert CSV-Dateien für alle noch nicht migrierten Stücklistenteile der angegebenen Baugruppennummer""" + unmigrated_ids = self.migration.get_unmigrated_ids() + update_database.get_sivas_teilestamm(unmigrated_ids, self.csv_out_dir) + + +if __name__ == '__main__': + parser = argparse.ArgumentParser(description='fetches data from sivas or ruledesigner fusion', prog='update_database') + parser.add_argument('-s', '--sivasid', action='store', help='fetch teilestamm-data for all unmigrated parts in the bom of a given asm-id. Specifiy multiple ids as comma separated values without space, e.g. 200000089,200000090', metavar='id(s)') + args = parser.parse_args() + + out_dir = os.environ.get('CREMIG_DATA') + + if args.sivasid: + sivas_asm_id = args.sivasid.strip().replace(".json","") + update_database.get_rd_dbase() + sivas_teilestamm = FetchSivasTeilestamm(out_dir, sivas_asm_id) + sivas_teilestamm.get_unmigrated_teilstamm_csvs() + + else: + parser.print_help() \ No newline at end of file