fix leak sign
This commit is contained in:
parent
a61f2c4bc0
commit
3eb19be036
@ -30,7 +30,7 @@ class Recipe_Selection(Widget):
|
|||||||
global noner
|
global noner
|
||||||
super().__init__()
|
super().__init__()
|
||||||
self.config = config
|
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.defaults = self.config.get("recipes_defaults", noner)
|
||||||
self.unsupported_steps = unsupported_steps
|
self.unsupported_steps = unsupported_steps
|
||||||
if not self.second_leak_test_enabled:
|
if not self.second_leak_test_enabled:
|
||||||
@ -57,8 +57,8 @@ class Recipe_Selection(Widget):
|
|||||||
}
|
}
|
||||||
filters = {"archived": False}
|
filters = {"archived": False}
|
||||||
step_defaults = self.read_steps(self.config.get("recipes_defaults", noner), noner)
|
step_defaults = self.read_steps(self.config.get("recipes_defaults", noner), noner)
|
||||||
custom_label_folder=f"config/label_templates/{str(self.config.machine_id)}/"
|
custom_label_folder = f"config/label_templates/{str(self.config.machine_id)}/"
|
||||||
standard_label_folder=f"config/label_templates/"
|
standard_label_folder = f"config/label_templates/"
|
||||||
if os.path.exists(custom_label_folder):
|
if os.path.exists(custom_label_folder):
|
||||||
label_folder = custom_label_folder
|
label_folder = custom_label_folder
|
||||||
else:
|
else:
|
||||||
@ -88,8 +88,10 @@ class Recipe_Selection(Widget):
|
|||||||
"spec": {
|
"spec": {
|
||||||
"count": len(self.config.get("recipes_defaults", noner)["dimensione_lotto_abilitata"]) and "count" not in self.unsupported_steps,
|
"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,
|
"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,
|
"barcodes": len(
|
||||||
"resistance": len(self.config.get("recipes_defaults", noner)["verifica_resistenza_connettore_abilitata"]) and "resistance" not in self.unsupported_steps,
|
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,
|
"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,
|
"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,
|
"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(4, 200)
|
||||||
self.crud.db_tw.setColumnWidth(5, 400)
|
self.crud.db_tw.setColumnWidth(5, 400)
|
||||||
if session.is_admin:
|
if session.is_admin:
|
||||||
self.import_b.clicked.connect(lambda checked, self=weakref.ref(self): self().import_recipes())
|
self.import_b.clicked.connect(lambda checked, selfi=weakref.ref(self): selfi().import_recipes())
|
||||||
self.export_b.clicked.connect(lambda checked, self=weakref.ref(self): self().export_recipes())
|
self.export_b.clicked.connect(lambda checked, selfi=weakref.ref(self): selfi().export_recipes())
|
||||||
self.delete_all_b.clicked.connect(lambda checked, self=weakref.ref(self): self().delete_recipes())
|
self.delete_all_b.clicked.connect(lambda checked, selfi=weakref.ref(self): selfi().delete_recipes())
|
||||||
else:
|
else:
|
||||||
self.import_b.setVisible(False)
|
self.import_b.setVisible(False)
|
||||||
self.export_b.setVisible(False)
|
self.export_b.setVisible(False)
|
||||||
@ -156,7 +158,7 @@ class Recipe_Selection(Widget):
|
|||||||
|
|
||||||
def check_selected(self, selected=None):
|
def check_selected(self, selected=None):
|
||||||
if selected is not None and len(selected) == 1:
|
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):
|
if selected >= 0 and selected < len(self.crud.data_index):
|
||||||
selected = self.crud.data_index[selected]
|
selected = self.crud.data_index[selected]
|
||||||
if selected is not None:
|
if selected is not None:
|
||||||
@ -174,8 +176,8 @@ class Recipe_Selection(Widget):
|
|||||||
if self.selected is not None:
|
if self.selected is not None:
|
||||||
self.ok.emit(self.crud.db.table_model.get_by_id(self.selected))
|
self.ok.emit(self.crud.db.table_model.get_by_id(self.selected))
|
||||||
|
|
||||||
def get_def(self,dict,key):
|
def get_def(self, dict, key):
|
||||||
val=dict.get(key,self.defaults[key])
|
val = dict.get(key, self.defaults[key])
|
||||||
return val if val != "" else self.defaults[key]
|
return val if val != "" else self.defaults[key]
|
||||||
|
|
||||||
def read_steps(self, row, defaults=None):
|
def read_steps(self, row, defaults=None):
|
||||||
@ -183,7 +185,7 @@ class Recipe_Selection(Widget):
|
|||||||
global noner
|
global noner
|
||||||
defaults = self.config.get("recipes_defaults", noner)
|
defaults = self.config.get("recipes_defaults", noner)
|
||||||
barcode_serial_field = self.config.get("recipe", {}).get("barcode_serial_field", "codice_a_barre").strip()
|
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("?", "")
|
rcsv = row.get("r nominale", defaults["r nominale"]).replace(" ", "").replace(",", decsep).replace("Ω", "").replace("?", "")
|
||||||
if rcsv == "":
|
if rcsv == "":
|
||||||
rcsv = "999"
|
rcsv = "999"
|
||||||
@ -192,7 +194,7 @@ class Recipe_Selection(Widget):
|
|||||||
"count": {
|
"count": {
|
||||||
"amount": row.get("dimensione_lotto", defaults["dimensione_lotto"]),
|
"amount": row.get("dimensione_lotto", defaults["dimensione_lotto"]),
|
||||||
"warning_img": row.get("immagine_warning", ""),
|
"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": {
|
||||||
"connector": row.get("connettore", defaults["connettore"]),
|
"connector": row.get("connettore", defaults["connettore"]),
|
||||||
@ -203,8 +205,8 @@ class Recipe_Selection(Widget):
|
|||||||
"resistance": {
|
"resistance": {
|
||||||
"scale": locale.atof(row.get("scala_resistenza", defaults["scala_resistenza"])),
|
"scale": locale.atof(row.get("scala_resistenza", defaults["scala_resistenza"])),
|
||||||
"expected": locale.atof(rcsv),
|
"expected": locale.atof(rcsv),
|
||||||
"tolerance_pos": locale.atof(self.get_def(row,"tolleranza_resistenza_pos")),
|
"tolerance_pos": locale.atof(self.get_def(row, "tolleranza_resistenza_pos")),
|
||||||
"tolerance_neg": locale.atof(self.get_def(row,"tolleranza_resistenza_neg")),
|
"tolerance_neg": locale.atof(self.get_def(row, "tolleranza_resistenza_neg")),
|
||||||
},
|
},
|
||||||
"screws": {
|
"screws": {
|
||||||
"quantity": row.get("viti", defaults["viti"])
|
"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_time": int(row.get("tempo_pre_riempimento", defaults["tempo_pre_riempimento"])),
|
||||||
"pre_filling_pressure": int(row.get("pressione_pre_riempimento", defaults["pressione_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"])),
|
"filling_time": int(row.get("tempo_riempimento", defaults["tempo_riempimento"])),
|
||||||
"settling_time": int(self.get_def(row,"tempo_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_min_percent": int(
|
||||||
"settling_pressure_max_percent": int(row.get("percentuale_massima_pressione_assestamento", defaults["percentuale_massima_pressione_assestamento"])),
|
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_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_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"])),
|
"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"])),
|
"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"])),
|
"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_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_min_percent": int(
|
||||||
"settling_pressure_max_percent": int(row.get("percentuale_massima_pressione_assestamento_2", defaults["percentuale_massima_pressione_assestamento_2"])),
|
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_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_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"])),
|
"test_pressure": int(row.get("pressione_di_test_2", defaults["pressione_di_test_2"])),
|
||||||
@ -249,7 +255,7 @@ class Recipe_Selection(Widget):
|
|||||||
},
|
},
|
||||||
"print": {
|
"print": {
|
||||||
"template": row.get(print_template_field, defaults["modello_etichetta"]),
|
"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_2": row.get("testo_etich_2", ""),
|
||||||
"labeltxt_3": row.get("testo_etich_3", ""),
|
"labeltxt_3": row.get("testo_etich_3", ""),
|
||||||
"labeltxt_4": row.get("testo_etich_4", ""),
|
"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()
|
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()
|
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)
|
reader = csv.DictReader(f)
|
||||||
count = 0
|
count = 0
|
||||||
for ucrow in reader:
|
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"])
|
recipe_name = row.get(recipe_name_field, defaults["codice_ricetta"])
|
||||||
steps_specs = self.read_steps(row, defaults=defaults)
|
steps_specs = self.read_steps(row, defaults=defaults)
|
||||||
try:
|
try:
|
||||||
@ -299,7 +304,7 @@ class Recipe_Selection(Widget):
|
|||||||
recipe_is_new = True
|
recipe_is_new = True
|
||||||
for step_name, step_spec in steps_specs.items():
|
for step_name, step_spec in steps_specs.items():
|
||||||
step = steps[step_name]
|
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.type = step_name
|
||||||
step.spec = step_spec
|
step.spec = step_spec
|
||||||
if recipe_is_new:
|
if recipe_is_new:
|
||||||
@ -311,9 +316,11 @@ class Recipe_Selection(Widget):
|
|||||||
recipe.description = row.get(description_field, defaults["descrizione"])
|
recipe.description = row.get(description_field, defaults["descrizione"])
|
||||||
recipe.spec = {
|
recipe.spec = {
|
||||||
"count": len(row.get("dimensione_lotto_abilitata", defaults["dimensione_lotto_abilitata"])) and "count" not in self.unsupported_steps,
|
"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,
|
"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,
|
"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,
|
"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,
|
"leak_1": len(row.get("prova_tenuta_abilitata", defaults["prova_tenuta_abilitata"])) and "leak_1" not in self.unsupported_steps,
|
||||||
|
|||||||
@ -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)
|
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)
|
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)
|
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
|
printer_fields = self.print_step.spec
|
||||||
context = {
|
context = {
|
||||||
# RECIPE DATA
|
# RECIPE DATA
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user