diff --git a/lib/caditem.py b/lib/caditem.py index b0bbb55..cfa8571 100644 --- a/lib/caditem.py +++ b/lib/caditem.py @@ -147,7 +147,7 @@ class CadItem(DataModel): "Werkstoff":"werkstofftyp_sivas", "Oberfläche":"cb_oberflaeche_neu", # "Truemmer":"truemmer", - # "HzOhneSaegeliste":"", + "HzOhneSaegeliste":"halbzeugOhneSaege_sivas", "Ruestcode":"ruestcode_sivas", "Fertigungsart":"fertigungsart_sivas", "FosGruppe":"fosGruppe_sivas", @@ -255,12 +255,19 @@ class CadItem(DataModel): if k in self.excel_to_gui and v is not None: translated_data[self.excel_to_gui[k]] = v - # bezeichnung1_sivas # Spezial: Abkürzungen .kpl rausschmeissen. Text eventuell kürzen if "bezeichnung1_sivas" in translated_data: text = translated_data["bezeichnung1_sivas"] translated_data["bezeichnung1_sivas"] = re.sub(r"\s+kpl[.|\s]", "", text, flags=re.I) - + + # Spezial Halbzeug ohne Sägeliste + if "halbzeugOhneSaege_sivas" in translated_data: + text = translated_data["halbzeugOhneSaege_sivas"] + if text =="N": + translated_data["halbzeugOhneSaege_sivas"] = "Sägeliste benötigt" + else: + translated_data["halbzeugOhneSaege_sivas"] = "Sägeliste nicht benötigt" + # Spezial: Befüllung von Änderungstext mit dem Author, falls in der .csv vorhanden if "Indexerfasser" in data and "Aenderungstext" in data: translated_data["aenderungstext_sivas"] = '{aenderungstext} (von {author})'.format(aenderungstext=data["Aenderungstext"], author=data["Indexerfasser"]) @@ -456,7 +463,7 @@ class GuiLogic(): elif key == 'cb_3Dmodel_neu': ret = self.cb_3Dmodel_neu(value) elif key == 'cb_halbzeugOhneSaege_neu': - pass + ret = self.cb_halbzeugOhneSaege_neu(value) elif key == 'cb_ruestcode_neu': pass elif key == 'cb_fertigungsart_neu': @@ -500,7 +507,7 @@ class GuiLogic(): """ ret = list() if key == 'cb_pdm_kategorie_neu': - ret = ['cb_neuaufbau', 'cb_aus_halbzeug_neu', 'cb_3Dmodel_neu'] + ret = ['cb_neuaufbau', 'cb_aus_halbzeug_neu', 'cb_3Dmodel_neu', 'cb_halbzeugOhneSaege_neu'] elif key == 'cb_neuaufbau': ret = [] elif key == 'cb_aus_halbzeug_neu': @@ -516,7 +523,7 @@ class GuiLogic(): elif key == 'cb_halbzeugOhneSaege_neu': ret = [] elif key == 'cb_ruestcode_neu': - ret = [] + ret = [ 'cb_halbzeugOhneSaege_neu'] elif key == 'cb_fertigungsart_neu': ret = [] elif key == 'cb_allgemeintoleranz_neu': @@ -730,7 +737,33 @@ class GuiLogic(): ret['model3d_neu'] = selected return ret + def cb_halbzeugOhneSaege_neu(self, selected): + ret = dict() + pdm_kategorie_neu = self._model.get_gui_data("pdm_kategorie_neu") + ret['cb_halbzeugOhneSaege_neu'] = '' + ret['halbzeugOhneSaege_neu'] = '' + if pdm_kategorie_neu == "Baugruppe": + # Dropdownwerte = None (keine Werte) + # state = disabled + pass + else: + ruestcode = self._model.get_gui_data("cb_ruestcode_neu") + if ruestcode == "HZS Halbzeuge Sägeteile": + # [HalbzeugOhneSaegeliste] + # Sägeliste nicht benötigt + # Sägeliste benötigt + lhalbzg = self._config.Allgemein.get_options("HalbzeugOhneSaegeliste") + if selected is None: + ret['halbzeugOhneSaege_neu'] = lhalbzg[0] + ret['cb_halbzeugOhneSaege_neu'] = lhalbzg + else: + ret['halbzeugOhneSaege_neu'] = selected + else: + # Dropdownwerte = None (keine Werte) + # state = disabled + pass + return ret # def cb_werkstofftyp_neu(self, selected_werkstoff): # """bekommt Aluminium, Stahl etc. und setzt dann die anderen Felder der Oberfläche""" diff --git a/lib/gui.py b/lib/gui.py index cda9298..d979e4a 100644 --- a/lib/gui.py +++ b/lib/gui.py @@ -442,10 +442,10 @@ class RightFrameBezeichnung(AllFrames): def trace_bezeichnung_neu(self, var, index, mode): """ Spezial: Bei zu langem Eintrag die Farbe des Textes auffällig machen """ text = self.bezeichnung1_neu.get() - if len(text) < 6: + if len(text) < 45: self.bezeichnung1_neu_entry.configure(foreground='black') self._controller.set_gui_data("bezeichnung1_neu", text) - elif len(text) < 11: + elif len(text) < 51: self.bezeichnung1_neu_entry.configure(foreground='orange') else: self.bezeichnung1_neu_entry.configure(foreground='red')