fix leak sign

This commit is contained in:
gg 2024-02-23 16:01:43 +01:00
parent a61f2c4bc0
commit 3eb19be036
2 changed files with 35 additions and 28 deletions

View File

@ -30,7 +30,7 @@ class Recipe_Selection(Widget):
global noner
super().__init__()
self.config = config
self.second_leak_test_enabled=self.config["hardware_config"]["second_leak_test"] == "present"
self.second_leak_test_enabled = self.config["hardware_config"]["second_leak_test"] == "present"
self.defaults = self.config.get("recipes_defaults", noner)
self.unsupported_steps = unsupported_steps
if not self.second_leak_test_enabled:
@ -57,8 +57,8 @@ class Recipe_Selection(Widget):
}
filters = {"archived": False}
step_defaults = self.read_steps(self.config.get("recipes_defaults", noner), noner)
custom_label_folder=f"config/label_templates/{str(self.config.machine_id)}/"
standard_label_folder=f"config/label_templates/"
custom_label_folder = f"config/label_templates/{str(self.config.machine_id)}/"
standard_label_folder = f"config/label_templates/"
if os.path.exists(custom_label_folder):
label_folder = custom_label_folder
else:
@ -88,8 +88,10 @@ class Recipe_Selection(Widget):
"spec": {
"count": len(self.config.get("recipes_defaults", noner)["dimensione_lotto_abilitata"]) and "count" not in self.unsupported_steps,
"connector": len(self.config.get("recipes_defaults", noner)["verifica_connettore_abilitata"]) and "connector" not in self.unsupported_steps,
"barcodes": len(self.config.get("recipes_defaults", noner)["verifica_codice_a_barre_abilitata"]) and "barcodes" not in self.unsupported_steps,
"resistance": len(self.config.get("recipes_defaults", noner)["verifica_resistenza_connettore_abilitata"]) and "resistance" not in self.unsupported_steps,
"barcodes": len(
self.config.get("recipes_defaults", noner)["verifica_codice_a_barre_abilitata"]) and "barcodes" not in self.unsupported_steps,
"resistance": len(
self.config.get("recipes_defaults", noner)["verifica_resistenza_connettore_abilitata"]) and "resistance" not in self.unsupported_steps,
"screws": len(self.config.get("recipes_defaults", noner)["avvitatura_abilitata"]) and "screws" not in self.unsupported_steps,
"instruction": len(self.config.get("recipes_defaults", noner)["istruzione_abilitata"]) and "instruction" not in self.unsupported_steps,
"leak_1": len(self.config.get("recipes_defaults", noner)["prova_tenuta_abilitata"]) and "leak_1" not in self.unsupported_steps,
@ -127,9 +129,9 @@ class Recipe_Selection(Widget):
self.crud.db_tw.setColumnWidth(4, 200)
self.crud.db_tw.setColumnWidth(5, 400)
if session.is_admin:
self.import_b.clicked.connect(lambda checked, self=weakref.ref(self): self().import_recipes())
self.export_b.clicked.connect(lambda checked, self=weakref.ref(self): self().export_recipes())
self.delete_all_b.clicked.connect(lambda checked, self=weakref.ref(self): self().delete_recipes())
self.import_b.clicked.connect(lambda checked, selfi=weakref.ref(self): selfi().import_recipes())
self.export_b.clicked.connect(lambda checked, selfi=weakref.ref(self): selfi().export_recipes())
self.delete_all_b.clicked.connect(lambda checked, selfi=weakref.ref(self): selfi().delete_recipes())
else:
self.import_b.setVisible(False)
self.export_b.setVisible(False)
@ -156,7 +158,7 @@ class Recipe_Selection(Widget):
def check_selected(self, selected=None):
if selected is not None and len(selected) == 1:
selected = selected[0] - 1 # - 1 because rn starts from 1 (filters line)
selected = selected[0] - 1 # - 1 because rn starts from 1 (filters line)
if selected >= 0 and selected < len(self.crud.data_index):
selected = self.crud.data_index[selected]
if selected is not None:
@ -174,8 +176,8 @@ class Recipe_Selection(Widget):
if self.selected is not None:
self.ok.emit(self.crud.db.table_model.get_by_id(self.selected))
def get_def(self,dict,key):
val=dict.get(key,self.defaults[key])
def get_def(self, dict, key):
val = dict.get(key, self.defaults[key])
return val if val != "" else self.defaults[key]
def read_steps(self, row, defaults=None):
@ -183,7 +185,7 @@ class Recipe_Selection(Widget):
global noner
defaults = self.config.get("recipes_defaults", noner)
barcode_serial_field = self.config.get("recipe", {}).get("barcode_serial_field", "codice_a_barre").strip()
decsep= locale.localeconv()["decimal_point"]
decsep = locale.localeconv()["decimal_point"]
rcsv = row.get("r nominale", defaults["r nominale"]).replace(" ", "").replace(",", decsep).replace("Ω", "").replace("?", "")
if rcsv == "":
rcsv = "999"
@ -192,7 +194,7 @@ class Recipe_Selection(Widget):
"count": {
"amount": row.get("dimensione_lotto", defaults["dimensione_lotto"]),
"warning_img": row.get("immagine_warning", ""),
"require_discard_piece": row.get("richiedi_inserimento_scarto",defaults["richiedi_inserimento_scarto"])
"require_discard_piece": row.get("richiedi_inserimento_scarto", defaults["richiedi_inserimento_scarto"])
},
"connector": {
"connector": row.get("connettore", defaults["connettore"]),
@ -203,8 +205,8 @@ class Recipe_Selection(Widget):
"resistance": {
"scale": locale.atof(row.get("scala_resistenza", defaults["scala_resistenza"])),
"expected": locale.atof(rcsv),
"tolerance_pos": locale.atof(self.get_def(row,"tolleranza_resistenza_pos")),
"tolerance_neg": locale.atof(self.get_def(row,"tolleranza_resistenza_neg")),
"tolerance_pos": locale.atof(self.get_def(row, "tolleranza_resistenza_pos")),
"tolerance_neg": locale.atof(self.get_def(row, "tolleranza_resistenza_neg")),
},
"screws": {
"quantity": row.get("viti", defaults["viti"])
@ -214,9 +216,11 @@ class Recipe_Selection(Widget):
"pre_filling_time": int(row.get("tempo_pre_riempimento", defaults["tempo_pre_riempimento"])),
"pre_filling_pressure": int(row.get("pressione_pre_riempimento", defaults["pressione_pre_riempimento"])),
"filling_time": int(row.get("tempo_riempimento", defaults["tempo_riempimento"])),
"settling_time": int(self.get_def(row,"tempo_assestamento")),
"settling_pressure_min_percent": int(row.get("percentuale_minima_pressione_assestamento", defaults["percentuale_minima_pressione_assestamento"])),
"settling_pressure_max_percent": int(row.get("percentuale_massima_pressione_assestamento", defaults["percentuale_massima_pressione_assestamento"])),
"settling_time": int(self.get_def(row, "tempo_assestamento")),
"settling_pressure_min_percent": int(
row.get("percentuale_minima_pressione_assestamento", defaults["percentuale_minima_pressione_assestamento"])),
"settling_pressure_max_percent": int(
row.get("percentuale_massima_pressione_assestamento", defaults["percentuale_massima_pressione_assestamento"])),
"test_time": int(row.get("tempo_di_test", defaults["tempo_di_test"])),
"test_pressure_qneg": int(row.get("pressione_di_test_delta_minimo", defaults["pressione_di_test_delta_minimo"])),
"test_pressure": int(row.get("pressione_di_test", defaults["pressione_di_test"])),
@ -232,8 +236,10 @@ class Recipe_Selection(Widget):
"pre_filling_pressure": int(row.get("pressione_pre_riempimento_2", defaults["pressione_pre_riempimento_2"])),
"filling_time": int(row.get("tempo_riempimento_2", defaults["tempo_riempimento_2"])),
"settling_time": int(row.get("tempo_assestamento_2", defaults["tempo_assestamento_2"])),
"settling_pressure_min_percent": int(row.get("percentuale_minima_pressione_assestamento_2", defaults["percentuale_minima_pressione_assestamento_2"])),
"settling_pressure_max_percent": int(row.get("percentuale_massima_pressione_assestamento_2", defaults["percentuale_massima_pressione_assestamento_2"])),
"settling_pressure_min_percent": int(
row.get("percentuale_minima_pressione_assestamento_2", defaults["percentuale_minima_pressione_assestamento_2"])),
"settling_pressure_max_percent": int(
row.get("percentuale_massima_pressione_assestamento_2", defaults["percentuale_massima_pressione_assestamento_2"])),
"test_time": int(row.get("tempo_di_test_2", defaults["tempo_di_test_2"])),
"test_pressure_qneg": int(row.get("pressione_di_test_delta_minimo_2", defaults["pressione_di_test_delta_minimo_2"])),
"test_pressure": int(row.get("pressione_di_test_2", defaults["pressione_di_test_2"])),
@ -249,7 +255,7 @@ class Recipe_Selection(Widget):
},
"print": {
"template": row.get(print_template_field, defaults["modello_etichetta"]),
"labeltxt_1": row.get("testo_etich_1",""),
"labeltxt_1": row.get("testo_etich_1", ""),
"labeltxt_2": row.get("testo_etich_2", ""),
"labeltxt_3": row.get("testo_etich_3", ""),
"labeltxt_4": row.get("testo_etich_4", ""),
@ -278,12 +284,11 @@ class Recipe_Selection(Widget):
description_field = self.config.get("recipe", {}).get("description_field", "descrizione").strip()
barcode_enable_field = self.config.get("recipe", {}).get("barcode_enable_field", "verifica_codice_a_barre_abilitata").strip()
with open(csv_path, "r",encoding="utf-8-sig") as f:
with open(csv_path, "r", encoding="utf-8-sig") as f:
reader = csv.DictReader(f)
count = 0
for ucrow in reader:
row= dict((k.lower(), v) for k, v in ucrow.items())
row = dict((k.lower(), v) for k, v in ucrow.items())
recipe_name = row.get(recipe_name_field, defaults["codice_ricetta"])
steps_specs = self.read_steps(row, defaults=defaults)
try:
@ -299,7 +304,7 @@ class Recipe_Selection(Widget):
recipe_is_new = True
for step_name, step_spec in steps_specs.items():
step = steps[step_name]
#step.type = re.sub(r"^(.*)_[0-9]+$", r"\1", step_name)
# step.type = re.sub(r"^(.*)_[0-9]+$", r"\1", step_name)
step.type = step_name
step.spec = step_spec
if recipe_is_new:
@ -311,9 +316,11 @@ class Recipe_Selection(Widget):
recipe.description = row.get(description_field, defaults["descrizione"])
recipe.spec = {
"count": len(row.get("dimensione_lotto_abilitata", defaults["dimensione_lotto_abilitata"])) and "count" not in self.unsupported_steps,
"connector": len(row.get("verifica_connettore_abilitata", defaults["verifica_connettore_abilitata"])) and "connector" not in self.unsupported_steps,
"connector": len(
row.get("verifica_connettore_abilitata", defaults["verifica_connettore_abilitata"])) and "connector" not in self.unsupported_steps,
"barcodes": len(row.get(barcode_enable_field, defaults["verifica_codice_a_barre_abilitata"])) and "barcodes" not in self.unsupported_steps,
"resistance": len(row.get("verifica_resistenza_connettore_abilitata", defaults["verifica_resistenza_connettore_abilitata"])) and "resistance" not in self.unsupported_steps,
"resistance": len(row.get("verifica_resistenza_connettore_abilitata",
defaults["verifica_resistenza_connettore_abilitata"])) and "resistance" not in self.unsupported_steps,
"screws": len(row.get("avvitatura_abilitata", defaults["avvitatura_abilitata"])) and "screws" not in self.unsupported_steps,
"instruction": len(row.get("istruzione_abilitata", defaults["istruzione_abilitata"])) and "instruction" not in self.unsupported_steps,
"leak_1": len(row.get("prova_tenuta_abilitata", defaults["prova_tenuta_abilitata"])) and "leak_1" not in self.unsupported_steps,

View File

@ -622,7 +622,7 @@ class Test(Widget):
psetmaxp_a = leak_test_1_step_spec.get("settling_pressure_max_percent", 0) * (100 + leak_test_1_step_spec.get("test_pressure_qpos", 0) / 100)
psetminp2_a = leak_test_2_step_spec.get("settling_pressure_min_percent", 0) * (100 + leak_test_2_step_spec.get("test_pressure_qneg", 0) / 100)
psetmaxp2_a = leak_test_2_step_spec.get("settling_pressure_max_percent", 0) * (100 + leak_test_2_step_spec.get("test_pressure_qpos", 0) / 100)
leak_test_1_results["Running test: pressure at the end of measure"] = leak_test_1_results["Running test: pressure at the end of settling"] - leak_test_1_results["Running test: measured leak"]
leak_test_1_results["Running test: pressure at the end of measure"] = leak_test_1_results["Running test: pressure at the end of settling"] + leak_test_1_results["Running test: measured leak"]
printer_fields = self.print_step.spec
context = {
# RECIPE DATA