an Logik weiter gebaut. Material und Werkstoff rein

This commit is contained in:
2024-03-04 17:49:38 +01:00
parent 85fec18c4a
commit 2945be89d3
2 changed files with 55 additions and 22 deletions
+1 -1
View File
@@ -102,5 +102,5 @@
"Werkstofftyp": "Kunst-/ Verbundstoff",
"Oberfläche":"Masterbatch (Grundfarbe)",
"Farbe": "RAL 5015"
}
}
}
+54 -21
View File
@@ -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