diff --git a/cfg/Materialübersetzung.json b/cfg/Materialübersetzung.json index 0754f01..b4bb6e5 100644 --- a/cfg/Materialübersetzung.json +++ b/cfg/Materialübersetzung.json @@ -102,5 +102,5 @@ "Werkstofftyp": "Kunst-/ Verbundstoff", "Oberfläche":"Masterbatch (Grundfarbe)", "Farbe": "RAL 5015" -} + } } diff --git a/lib/caditem.py b/lib/caditem.py index cb4c91c..bce4460 100644 --- a/lib/caditem.py +++ b/lib/caditem.py @@ -419,6 +419,12 @@ class CadItem(DataModel): def set_gui_defaults(self): self._logic.set_gui_defaults() + + def message_info(self, title, key, questions='ok'): + return self._controller.message_info(title, key, questions) + + def message_error(self, title, key): + return self._controller.message_error(title, key) class CadItemRepository: """ container class for all CadItems in the local folder @@ -450,11 +456,6 @@ class CadItemRepository: return raise Exception("CadItem not found") - def message_info(self, title, key, questions='ok'): - return self._controller.message_info(title, key, questions) - - def message_error(self, title, key): - return self._controller.message_error(title, key) class GuiLogic(): @@ -836,11 +837,11 @@ class GuiLogic(): fertigungsart_sivas = self._model.get_gui_data("fertigungsart_sivas") if pdm_kategorie_neu == "Baugruppe": - cblist = self._config.Fertigung.get_options("FertigungsartenBaugruppe") + cblist = self._config.Fertigung.get_list_in_section("FertigungsartenBaugruppe") ret['cb_fertigungsart_neu'] = cblist elif pdm_kategorie_neu == "Einzelteil": - cblist = self._config.Fertigung.get_options("Fertigungsarten") + cblist = self._config.Fertigung.get_list_in_section("Fertigungsarten") ret['cb_fertigungsart_neu'] = cblist else: ret['cb_fertigungsart_neu'] = '' @@ -848,9 +849,10 @@ class GuiLogic(): if selected is None: # Default Vorbelegung default = '' - if pdm_kategorie_neu == "Schweissbaugruppe": - if fertigungsart_sivas == "schweißen": - default = "schweissen" + if fertigungsart_sivas == '' or fertigungsart_sivas != "schweissen": + default = "schweissen" + else: + default = "" ret['fertigungsart_neu'] = default else: ret['fertigungsart_neu'] = selected @@ -859,12 +861,12 @@ class GuiLogic(): def cb_allgemeintoleranz_neu(self, selected): ret = dict() pdm_kategorie_neu = self._model.get_gui_data("pdm_kategorie_neu") - fertigungsart = self._model.get_gui_data("fertigungsart_sivas") + fertigungsart = self._model.get_gui_data("fertigungsart_neu") ret['allgemeintoleranz_neu'] = '' if pdm_kategorie_neu == "Baugruppe": - cblist = self._config.Fertigung.get_options("AllgemeintoleranzBaugruppe") + cblist = self._config.Fertigung.get_list_in_section("AllgemeintoleranzBaugruppe") elif pdm_kategorie_neu == "Kaufteil" or pdm_kategorie_neu == "Schweissbaugruppe": cblist = None if pdm_kategorie_neu == "Einzelteil": @@ -892,11 +894,11 @@ class GuiLogic(): section = "AllgemeintoleranzSpritzgiessen" elif fertigungsart == "stanzen": section = "AllgemeintoleranzStanzen" - elif fertigungsart == "schweißen": + elif fertigungsart == "schweissen": section = "AllgemeintoleranzSchweissen" else: raise Exception("no such fertigungsart "+ fertigungsart) - cblist = self._config.Fertigung.get_options(section) + cblist = self._config.Fertigung.get_list_in_section(section) else: cblist = None ret['cb_allgemeintoleranz_neu'] = cblist @@ -932,7 +934,7 @@ class GuiLogic(): default = "ISO 20457 - TG5" elif fertigungsart == "stanzen": default = "DIN 6930-2 - m" - elif fertigungsart == "schweißen": + elif fertigungsart == "schweissen": # TODO default = "" else: @@ -1079,6 +1081,7 @@ class GuiLogic(): rcode = self._model.get_gui_data("ruestcode_sivas") halbzeug = self._model.get_gui_data("halbzeug_sivas") + cblist = '' if rcode == "SRC Standard Rüstcode" or rcode == "Trümmerbaugruppe": cblist = "FALSCH" elif rcode == "HZS Halbzeuge Sägeteile": @@ -1172,7 +1175,7 @@ class GuiLogic(): if aus_halbzeug == True: cblist = None else: - cblist = self._config.Werkstoffe.get_options("Werkstofftyp") + cblist = self._config.Werkstoffe.get_werkstoff_namen() else: cblist = None ret['cb_material_neu'] = cblist @@ -1196,7 +1199,9 @@ class GuiLogic(): else: default = mat['Message'] else: + # TODO beim migrieren die Meldung bringen self._model.message_info('Materialinformation', 'material_infos') + pass else: pass ret['werkstofftyp_neu'] = default @@ -1207,17 +1212,45 @@ class GuiLogic(): def cb_material_neu(self, selected): ret = dict() pdm_kategorie_neu = self._model.get_gui_data("pdm_kategorie_neu") + aus_halbzeug = self._model.get_gui_data("aus_halbzeug_neu") + werkstoff = self._model.get_gui_data("werkstofftyp_sivas") + ret['werkstofftyp_neu'] = werkstoff - ret['cb_material_neu'] = '' - ret['material_neu'] = '' - if pdm_kategorie_neu == "Baugruppe": - pass + # dropdown + if werkstoff == "Stahl": + cblist = self._config.Werkstoffe.get_werkstoffe_of_name("Stahl") + elif werkstoff == "Aluminium": + cblist = self._config.Werkstoffe.get_werkstoffe_of_name("Aluminium") + elif werkstoff == "Kunst-/ Verbundstoff": + cblist = self._config.Werkstoffe.get_werkstoffe_of_name("Kunst-/ Verbundstoff") + elif werkstoff == "Schwermetall": + cblist = self._config.Werkstoffe.get_werkstoffe_of_name("Schwermetall") else: - pass + cblist = '' + ret['cb_material_neu'] = cblist if selected is None: # Default Vorbelegung default = '' + if pdm_kategorie_neu == "Baugruppe": + pass + elif pdm_kategorie_neu == "Schweissbaugruppe": + pass + elif pdm_kategorie_neu == "Einzelteil" and aus_halbzeug == True: + pass + elif werkstoff == "": + pass + elif pdm_kategorie_neu == "Kaufteil": + default = "siehe Hersteller" + elif pdm_kategorie_neu == "Einzelteil" and aus_halbzeug == False: + mlist = self._config.Materialien.get_all_materials() + if werkstoff in mlist: + mat = self._config.Materialien.get_material_of_type(werkstoff) + if 'Werkstofftyp' in mat: + default = mat['Werkstoff'] + else: + default = mat['Message'] + # TODO Prüfung ob Message vorhanden ret['material_neu'] = default else: ret['material_neu'] = selected