diff --git a/config/label_designs/STANDARD/EtichettaR5_Montaggio.nlbl b/config/label_designs/STANDARD/EtichettaR5_Montaggio.nlbl deleted file mode 100644 index b810204..0000000 Binary files a/config/label_designs/STANDARD/EtichettaR5_Montaggio.nlbl and /dev/null differ diff --git a/config/label_designs/STANDARD/EtichettaR5_Montaggio_1prova.nlbl b/config/label_designs/STANDARD/EtichettaR5_Montaggio_1prova.nlbl new file mode 100644 index 0000000..6c7fffe Binary files /dev/null and b/config/label_designs/STANDARD/EtichettaR5_Montaggio_1prova.nlbl differ diff --git a/config/label_designs/STANDARD/EtichettaR5_Montaggio_2prove.nlbl b/config/label_designs/STANDARD/EtichettaR5_Montaggio_2prove.nlbl index 11aa538..17230df 100644 Binary files a/config/label_designs/STANDARD/EtichettaR5_Montaggio_2prove.nlbl and b/config/label_designs/STANDARD/EtichettaR5_Montaggio_2prove.nlbl differ diff --git a/config/label_templates/EtichettaR5_Montaggio_1prova.prn b/config/label_templates/EtichettaR5_Montaggio_1prova.prn new file mode 100644 index 0000000..5c86a99 --- /dev/null +++ b/config/label_templates/EtichettaR5_Montaggio_1prova.prn @@ -0,0 +1,45 @@ +CT~~CD,~CC^~CT~ +^XA~TA000~JSN^LT0^MNW^MTT^PON^PMN^LH0,0^JMA^PR2,2~SD20^JUS^LRN^CI0^XZ +^XA +^MMT +^PW320 +^LL1119 +^LS0 +^FT263,1045^A0I,39,36^FH\^FDERRECINQUE^FS +^FT209,1017^A0I,20,19^FB156,1,0,C^FH\^FDFluid System^FS +^FT209,993^A0I,20,19^FB156,1,0,C^FH\^FDVia Meucci 31/A^FS +^FT209,969^A0I,20,19^FB156,1,0,C^FH\^FD10079 Mappano(TO)^FS +^FT235,932^A0I,25,24^FH\^FDCliente:^FS +^FT233,767^A0I,20,16^FH\^FD{DD}/{MO}/{YY}^FS +^FT104,767^A0I,20,16^FH\^FD{HH}:{MI}:{SS}^FS +^FT302,106^A0I,31,28^FH\^FDESITO:^FS +^FT176,106^A0I,31,28^FH\^FDCONFORME^FS +^FT235,907^A0I,20,19^FH\^FD{CLIENT}^FS +^FT233,878^A0I,25,24^FH\^FDNumero Disegno:^FS +^FT233,853^A0I,20,19^FH\^FD{PART}^FS +^FT233,792^A0I,26,24^FH\^FDData/Ora Prova^FS +^FT233,733^A0I,25,24^FH\^FDStazione:^FS +^FT232,824^A0I,25,24^FH\^FDN. Pezzo:^FS +^FT130,827^A0I,20,19^FH\^FD{SN4}^FS +^FT233,693^A0I,25,24^FH\^FDOPERATORE:^FS +^FT138,736^A0I,23,16^FH\^FD{STATION}^FS +^FT103,696^A0I,23,16^FH\^FD{BADGE_NUM}^FS +^FO53,636^GB215,0,8^FS +^FT301,578^A0I,28,26^FH\^FDProva 1:^FS +^FT301,551^A0I,23,21^FH\^FDP. rilevata:^FS +^FT129,548^A0I,20,19^FH\^FD{RESPSET}^FS +^FT301,528^A0I,23,21^FH\^FDCaduta ammessa:^FS +^FT129,526^A0I,20,19^FH\^FD{PMIN} mbar^FS +^FT301,506^A0I,23,21^FH\^FDCaduta rilevata:^FS +^FT141,505^A0I,20,19^FH\^FD{RESLEAK} mbar^FS +^FT301,418^A0I,23,21^FH\^FDT.Prova^FS +^FT113,417^A0I,20,19^FH\^FD{TTEST} s^FS +^FT302,462^A0I,23,21^FH\^FDT.Riempim.^FS +^FT113,465^A0I,20,19^FH\^FD{TFILL} s^FS +^FT301,440^A0I,23,21^FH\^FDT.Stabilizzaz.^FS +^FT113,441^A0I,20,19^FH\^FD{TSET} s^FS +^FT308,990^A0B,23,21^FH\^FD{YY}{MO}{DD}{HH}{MI}{SS}{SN4}^FS +^BY1,3,39^FT281,999^BCB,,N,N +^FD>:{YY}{MO}{DD}{HH}{MI}{SS}{SN4}^FS +^FT192,578^A0I,28,26^FH\^FD{PTEST} mbar^FS +^PQ1,0,1,Y^XZ diff --git a/config/label_templates/EtichettaR5_Montaggio_2prove.prn b/config/label_templates/EtichettaR5_Montaggio_2prove.prn index 2a5d24c..f287468 100644 --- a/config/label_templates/EtichettaR5_Montaggio_2prove.prn +++ b/config/label_templates/EtichettaR5_Montaggio_2prove.prn @@ -1,76 +1,59 @@ CT~~CD,~CC^~CT~ -^XA -~TA000 -~JSN -^LT0 -^MNW -^MTT -^PON -^PMN -^LH0,0 -^JMA -^PR2,2 -~SD20 -^JUS -^LRN -^CI27 -^PA0,1,1,0 -^XZ +^XA~TA000~JSN^LT0^MNW^MTT^PON^PMN^LH0,0^JMA^PR2,2~SD20^JUS^LRN^CI0^XZ ^XA ^MMT ^PW320 ^LL1119 ^LS0 -^FT57,74^A0N,39,38^FH\^CI28^FDERRECINQUE^FS^CI27 -^FT71,102^A0N,20,20^FB249,1,5,C^FH\^CI28^FDFluid System^FS^CI27 -^FT71,127^A0N,20,20^FB249,1,5,C^FH\^CI28^FDVia Meucci 31/A^FS^CI27 -^FT71,152^A0N,20,20^FB249,1,5,C^FH\^CI28^FD10079 Mappano(TO)^FS^CI27 -^FT85,187^A0N,25,25^FH\^CI28^FDCliente:^FS^CI27 -^FT87,352^A0N,20,18^FH\^CI28^FD{DD}/{MO}/{YY}^FS^CI27 -^FT216,352^A0N,20,18^FH\^CI28^FD{HH}:{MI}:{SS}^FS^CI27 -^FT18,1013^A0N,31,30^FH\^CI28^FDESITO:^FS^CI27 -^FT144,1013^A0N,31,30^FH\^CI28^FDCONFORME^FS^CI27 -^FT85,212^A0N,20,20^FH\^CI28^FD{CLIENT}^FS^CI27 -^FT87,241^A0N,25,25^FH\^CI28^FDNumero Disegno:^FS^CI27 -^FT87,266^A0N,20,20^FH\^CI28^FD{PART}^FS^CI27 -^FT87,327^A0N,26,25^FH\^CI28^FDData/Ora Prova^FS^CI27 -^FT87,386^A0N,25,25^FH\^CI28^FDStazione:^FS^CI27 -^FT88,295^A0N,25,25^FH\^CI28^FDN. Pezzo:^FS^CI27 -^FT223,296^A0N,20,20^FH\^CI28^FD{SN4}^FS^CI27 -^FT87,426^A0N,25,25^FH\^CI28^FDOPERATORE:^FS^CI27 -^FT199,385^A0N,20,15^FH\^CI28^FD{STATION}^FS^CI27 -^FT231,424^A0N,20,15^FH\^CI28^FD{OPERATOR}^FS^CI27 -^FO52,475^GB215,0,8^FS -^FT19,541^A0N,28,28^FH\^CI28^FDProva 1:^FS^CI27 -^FT19,568^A0N,23,23^FH\^CI28^FDP. rilevata:^FS^CI27 -^FT191,571^A0N,20,20^FH\^CI28^FD{RESPSET}^FS^CI27 -^FT19,591^A0N,23,23^FH\^CI28^FDCaduta ammessa:^FS^CI27 -^FT191,593^A0N,20,20^FH\^CI28^FD{PMIN} mbar^FS^CI27 -^FT19,613^A0N,23,23^FH\^CI28^FDCaduta rilevata:^FS^CI27 -^FT179,614^A0N,20,20^FH\^CI28^FD{RESLEAK} mbar^FS^CI27 -^FT19,701^A0N,23,23^FH\^CI28^FDT.Prova^FS^CI27 -^FT207,702^A0N,20,20^FH\^CI28^FD{TTEST} s^FS^CI27 -^FT18,657^A0N,23,23^FH\^CI28^FDT.Riempim.^FS^CI27 -^FT207,654^A0N,20,20^FH\^CI28^FD{TFILL} s^FS^CI27 -^FT19,679^A0N,23,23^FH\^CI28^FDT.Stabilizzaz.^FS^CI27 -^FT207,678^A0N,20,20^FH\^CI28^FD{TSET} s^FS^CI27 -^FT12,129^A0R,23,23^FH\^CI28^FD{YY}{MO}{DD}{HH}{MI}{SS}{SN4}^FS^CI27 -^BY1,3,39^FT39,120^BCR,,N,N -^FH\^FD>:{YY}{MO}{DD}{HH}{MI}{SS}{SN4}^FS -^FT128,541^A0N,28,28^FH\^CI28^FD{PTEST} mbar^FS^CI27 -^FT19,775^A0N,28,28^FH\^CI28^FDProva 2:^FS^CI27 -^FT19,802^A0N,23,23^FH\^CI28^FDP. rilevata:^FS^CI27 -^FT191,805^A0N,20,20^FH\^CI28^FD{RESPSET2}^FS^CI27 -^FT19,825^A0N,23,23^FH\^CI28^FDCaduta ammessa:^FS^CI27 -^FT191,826^A0N,20,20^FH\^CI28^FD{PMIN2} mbar^FS^CI27 -^FT19,847^A0N,23,23^FH\^CI28^FDCaduta rilevata:^FS^CI27 -^FT179,848^A0N,20,20^FH\^CI28^FD{RESLEAK2} mbar^FS^CI27 -^FT19,934^A0N,23,23^FH\^CI28^FDT.Prova^FS^CI27 -^FT207,935^A0N,20,20^FH\^CI28^FD{TTEST2} s^FS^CI27 -^FT18,891^A0N,23,23^FH\^CI28^FDT.Riempim.^FS^CI27 -^FT207,888^A0N,20,20^FH\^CI28^FD{TFILL2} s^FS^CI27 -^FT19,912^A0N,23,23^FH\^CI28^FDT.Stabilizzaz.^FS^CI27 -^FT207,911^A0N,20,20^FH\^CI28^FD{TSET2} s^FS^CI27 -^FT128,775^A0N,28,28^FH\^CI28^FD{PTEST2} mbar^FS^CI27 -^PQ1,0,1,Y -^XZ +^FT263,1045^A0I,39,36^FH\^FDERRECINQUE^FS +^FT209,1017^A0I,20,19^FB156,1,0,C^FH\^FDFluid System^FS +^FT209,993^A0I,20,19^FB156,1,0,C^FH\^FDVia Meucci 31/A^FS +^FT209,969^A0I,20,19^FB156,1,0,C^FH\^FD10079 Mappano(TO)^FS +^FT235,932^A0I,25,24^FH\^FDCliente:^FS +^FT233,767^A0I,20,16^FH\^FD{DD}/{MO}/{YY}^FS +^FT104,767^A0I,20,16^FH\^FD{HH}:{MI}:{SS}^FS +^FT302,106^A0I,31,28^FH\^FDESITO:^FS +^FT176,106^A0I,31,28^FH\^FDCONFORME^FS +^FT235,907^A0I,20,19^FH\^FD{CLIENT}^FS +^FT233,878^A0I,25,24^FH\^FDNumero Disegno:^FS +^FT233,853^A0I,20,19^FH\^FD{PART}^FS +^FT233,792^A0I,26,24^FH\^FDData/Ora Prova^FS +^FT233,733^A0I,25,24^FH\^FDStazione:^FS +^FT232,824^A0I,25,24^FH\^FDN. Pezzo:^FS +^FT136,826^A0I,23,24^FH\^FD{SN4}^FS +^FT233,693^A0I,25,24^FH\^FDOPERATORE:^FS +^FT140,736^A0I,23,16^FH\^FD{STATION}^FS +^FT103,696^A0I,23,16^FH\^FD{BADGE_NUM}^FS +^FO53,636^GB215,0,8^FS +^FT301,578^A0I,28,26^FH\^FDProva 1:^FS +^FT301,551^A0I,23,21^FH\^FDP. rilevata:^FS +^FT129,548^A0I,20,19^FH\^FD{RESPSET}^FS +^FT301,528^A0I,23,21^FH\^FDCaduta ammessa:^FS +^FT129,526^A0I,20,19^FH\^FD{PMIN} mbar^FS +^FT301,506^A0I,23,21^FH\^FDCaduta rilevata:^FS +^FT141,505^A0I,20,19^FH\^FD{RESLEAK} mbar^FS +^FT301,418^A0I,23,21^FH\^FDT.Prova^FS +^FT113,417^A0I,20,19^FH\^FD{TTEST} s^FS +^FT302,462^A0I,23,21^FH\^FDT.Riempim.^FS +^FT113,465^A0I,20,19^FH\^FD{TFILL} s^FS +^FT301,440^A0I,23,21^FH\^FDT.Stabilizzaz.^FS +^FT113,441^A0I,20,19^FH\^FD{TSET} s^FS +^FT308,990^A0B,23,21^FH\^FD{YY}{MO}{DD}{HH}{MI}{SS}{SN4}^FS +^BY1,3,39^FT281,999^BCB,,N,N +^FD>:{YY}{MO}{DD}{HH}{MI}{SS}{SN4}^FS +^FT192,578^A0I,28,26^FH\^FD{PTEST} mbar^FS +^FT301,344^A0I,28,26^FH\^FDProva 2:^FS +^FT301,317^A0I,23,21^FH\^FDP. rilevata:^FS +^FT129,314^A0I,20,19^FH\^FD{RESPSET2}^FS +^FT301,294^A0I,23,21^FH\^FDCaduta ammessa:^FS +^FT129,293^A0I,20,19^FH\^FD{PMIN2} mbar^FS +^FT301,272^A0I,23,21^FH\^FDCaduta rilevata:^FS +^FT141,271^A0I,20,19^FH\^FD{RESLEAK2} mbar^FS +^FT301,185^A0I,23,21^FH\^FDT.Prova^FS +^FT113,184^A0I,20,19^FH\^FD{TTEST2} s^FS +^FT302,228^A0I,23,21^FH\^FDT.Riempim.^FS +^FT113,231^A0I,20,19^FH\^FD{TFILL2} s^FS +^FT301,207^A0I,23,21^FH\^FDT.Stabilizzaz.^FS +^FT113,208^A0I,20,19^FH\^FD{TSET2} s^FS +^FT192,344^A0I,28,26^FH\^FD{PTEST2} mbar^FS +^PQ1,0,1,Y^XZ diff --git a/config/machine_settings/st-ten-6.ini b/config/machine_settings/st-ten-6.ini index 62fa940..fda6a0b 100644 --- a/config/machine_settings/st-ten-6.ini +++ b/config/machine_settings/st-ten-6.ini @@ -32,12 +32,9 @@ description_field: descrizione dimensione_lotto_abilitata: tempo_pre_riempimento: 0 pressione_pre_riempimento: 1000 -#tempo_riempimento: 10 -#tempo_assestamento: 12 -#tempo_di_test: 10 -tempo_riempimento: 2 -tempo_assestamento: 3 -tempo_di_test: 4 +tempo_riempimento: 15 +tempo_assestamento: 15 +tempo_di_test: 10 percentuale_minima_pressione_assestamento: 5 percentuale_massima_pressione_assestamento: 5 pressione_di_test_delta_minimo: 30 @@ -45,16 +42,13 @@ pressione_di_test: 7000 pressione_di_test_delta_massimo: 30 tempo_svuotamento: 1 pressione_svuotamento: 100 -config_elettrovalvole: 0 -prova_tenuta_abilitata_2: x +config_elettrovalvole: 1 +prova_tenuta_abilitata_2: tempo_pre_riempimento_2: 0 pressione_pre_riempimento_2: 1000 -#tempo_riempimento_2: 10 -#tempo_assestamento_2: 12 -#tempo_di_test_2: 10 -tempo_riempimento_2: 5 -tempo_assestamento_2: 6 -tempo_di_test_2: 7 +tempo_riempimento_2: 15 +tempo_assestamento_2: 15 +tempo_di_test_2: 10 percentuale_minima_pressione_assestamento_2: 5 percentuale_massima_pressione_assestamento_2: 5 pressione_di_test_delta_minimo_2: 30 @@ -62,7 +56,8 @@ pressione_di_test_2: 15000 pressione_di_test_delta_massimo_2: 30 tempo_svuotamento_2: 1 pressione_svuotamento_2: 100 -config_elettrovalvole_2: 1 +config_elettrovalvole_2: 2 +modello_etichetta: EtichettaR5_Montaggio_1prova.prn [label_printer] platform: windows diff --git a/src/lib/db/models/users.py b/src/lib/db/models/users.py index 8211ca4..d7018a2 100755 --- a/src/lib/db/models/users.py +++ b/src/lib/db/models/users.py @@ -41,7 +41,7 @@ class Users(BaseModel): username = TextField(unique=True, null=False) password = TextField(null=False) # enable nulling to enable passwordless login roles = JSONField(null=True, json_dumps=json_dumps_roles, json_loads=json_loads_roles) - + badge_number = TextField(unique=False,null=True,default="") @classmethod def get_users(cls): return cls.select().where(cls.password != b"").execute() diff --git a/src/ui/test/test.py b/src/ui/test/test.py index c67ed1c..56b78be 100755 --- a/src/ui/test/test.py +++ b/src/ui/test/test.py @@ -580,6 +580,8 @@ class Test(Widget): "SHIFT": str(get_shift(archived.time)), "STATION": str(self.config.machine_id), "OPERATOR": str(archived.user.username), + "BADGE_NUM": str(archived.user.badge_number), + # RESULT "RESULT": str("CONFORME" if leak_test_1_results.get("ok", False) else "SCARTO") + str(" FORZATO" if self.data.get("overridden", False) else ""), "RESULT_L1": "ESITO" + str(" FORZATO" if self.data.get("overridden", False) else ""), diff --git a/src/ui/test_leak/test_leak.py b/src/ui/test_leak/test_leak.py index c9266fa..b82685d 100644 --- a/src/ui/test_leak/test_leak.py +++ b/src/ui/test_leak/test_leak.py @@ -32,21 +32,23 @@ class Test_Leak(Test_Test): self.start_b.setEnabled(False) self.stop_b.setEnabled(False) - # SETUP RELAY + # SETUP RELAY CONFIGURATION if "digital_io" in self.components.keys(): if "relay_config" in step.spec.keys(): relay_config = step.spec["relay_config"] + bits = [0, 0] if relay_config == 1: - ret=self.components["digital_io"].set_bit_verify(0, 0, 1) - ret=self.components["digital_io"].set_bit_verify(0, 1, 0) - else: - ret=self.components["digital_io"].set_bit_verify(0, 0, 0) - ret=self.components["digital_io"].set_bit_verify(0, 1, 1) + bits = [0,1] + if relay_config == 2: + bits = [1,0] + + ret=self.components["digital_io"].set_bit_verify(0, 0, bits[0]) + ret=self.components["digital_io"].set_bit_verify(0, 1, bits[1]) if ret: time.sleep(1) # AUTO START SECOND TEST - if relay_config == 2: + if step.spec == "leak_2": self.start_b.setEnabled(True) self.start_b.click() else: @@ -74,6 +76,7 @@ class Test_Leak(Test_Test): super().get(None, override=override) return data = data[-1] + # TESTING if self.simulate: if self.step.spec.get("autotest", False) is not True: @@ -84,13 +87,18 @@ class Test_Leak(Test_Test): data["tecna_t3"] = { "Running test: result": "-----TESTING----- failed", } - # /TESTING + if "Running test: result" in data["tecna_t3"]: result = data["tecna_t3"]["Running test: result"] if self.step.spec.get("autotest", False) is not True: ok = type(result) is str and "passed" in result.lower() else: ok = type(result) is str and "failed" in result.lower() + + # RESET RELAYS + ret = self.components["digital_io"].set_bit_verify(0, 0, 0) + ret = self.components["digital_io"].set_bit_verify(0, 1, 0) + else: result = None ok = None @@ -141,7 +149,7 @@ class Test_Leak(Test_Test): self.parent_assembly_widget().set_text(text="PROVA TENUTA IN CORSO") else: if self.parent_assembly_widget is not None: - self.parent_assembly_widget().set_text(text="AUTOTEST: PROVA TENUTA DI PROVA IN CORSO") + self.parent_assembly_widget().set_text(text="AUTOTEST: PROVA TENUTA IN CORSO") self.start_b.setEnabled(False) self.stop_b.setEnabled(True) ok = data.get("results", {}).get("ok", None) diff --git a/src/ui/users_management/users_management.py b/src/ui/users_management/users_management.py index caaa375..99887d6 100644 --- a/src/ui/users_management/users_management.py +++ b/src/ui/users_management/users_management.py @@ -47,6 +47,7 @@ class Users_Management(Widget): "username": "Nome utente", "password": "Password", "roles": "Ruoli", + "badge_number": "Matricola", } self.crud = Crud( "users",