Merge remote-tracking branch 'origin/master'
BIN
config/label_designs/MCLAREN/MCLAREN_353.nlbl
Normal file
45
config/label_templates/st-ten-11/EtichettaR5_Pitesti.prn
Normal file
|
|
@ -0,0 +1,45 @@
|
||||||
|
CT~~CD,~CC^~CT~
|
||||||
|
^XA
|
||||||
|
~TA000
|
||||||
|
~JSN
|
||||||
|
^LT0
|
||||||
|
^MNW
|
||||||
|
^MTT
|
||||||
|
^PON
|
||||||
|
^PMN
|
||||||
|
^LH0,0
|
||||||
|
^JMA
|
||||||
|
^PR2,2
|
||||||
|
~SD22
|
||||||
|
^JUS
|
||||||
|
^LRN
|
||||||
|
^CI27
|
||||||
|
^PA0,1,1,0
|
||||||
|
^XZ
|
||||||
|
^XA
|
||||||
|
^MMT
|
||||||
|
^PW320
|
||||||
|
^LL1119
|
||||||
|
^LS0
|
||||||
|
^FT57,105^A0N,39,38^FH\^CI28^FDERRECINQUE^FS^CI27
|
||||||
|
^FT58,148^A0N,20,20^FH\^CI28^FDVia Meucci 31/A^FS^CI27
|
||||||
|
^FT58,173^A0N,20,20^FH\^CI28^FD10079 Mappano(TO)^FS^CI27
|
||||||
|
^FT18,758^A0N,23,20^FH\^CI28^FD{DD}/{MO}/{YY}^FS^CI27
|
||||||
|
^FT183,758^A0N,23,20^FH\^CI28^FD{HH}:{MI}:{SS}^FS^CI27
|
||||||
|
^FT18,981^A0N,31,30^FH\^CI28^FDESITO:^FS^CI27
|
||||||
|
^FT144,981^A0N,31,30^FH\^CI28^FDCONFORME^FS^CI27
|
||||||
|
^FT24,471^A0N,25,25^FH\^CI28^FDPart number:^FS^CI27
|
||||||
|
^FT24,513^A0N,23,23^FH\^CI28^FD{PART}^FS^CI27
|
||||||
|
^FT24,555^A0N,25,25^FH\^CI28^FDSequential number:^FS^CI27
|
||||||
|
^FT24,598^A0N,23,23^FH\^CI28^FD{SN4}^FS^CI27
|
||||||
|
^FT18,833^A0N,23,23^FH\^CI28^FDOperatore:^FS^CI27
|
||||||
|
^FT157,674^A0N,23,23^FH\^CI28^FD{RESLEAK} mbar^FS^CI27
|
||||||
|
^FT18,674^A0N,23,23^FH\^CI28^FD{TTEST} s^FS^CI27
|
||||||
|
^FT18,724^A0N,23,23^FH\^CI28^FD{PTEST} mbar^FS^CI27
|
||||||
|
^BY1,3,64^FT58,384^BCN,,N,N
|
||||||
|
^FH\^FD>:{PART}^FS
|
||||||
|
^FT58,241^A0N,25,25^FH\^CI28^FD{DESCRIPTION}^FS^CI27
|
||||||
|
^FT58,292^A0N,45,46^FH\^CI28^FDLEAK TEST^FS^CI27
|
||||||
|
^FT165,833^A0N,23,23^FH\^CI28^FD{BADGE_NUM}^FS^CI27
|
||||||
|
^PQ1,0,1,Y
|
||||||
|
^XZ
|
||||||
46
config/label_templates/st-ten-11/MCLAREN_353.prn
Normal file
|
|
@ -0,0 +1,46 @@
|
||||||
|
CT~~CD,~CC^~CT~
|
||||||
|
^XA
|
||||||
|
~TA000
|
||||||
|
~JSN
|
||||||
|
^LT0
|
||||||
|
^MNW
|
||||||
|
^MTT
|
||||||
|
^PON
|
||||||
|
^PMN
|
||||||
|
^LH0,0
|
||||||
|
^JMA
|
||||||
|
^PR2,2
|
||||||
|
~SD26
|
||||||
|
^JUS
|
||||||
|
^LRN
|
||||||
|
^CI27
|
||||||
|
^PA0,1,1,0
|
||||||
|
^XZ
|
||||||
|
^XA
|
||||||
|
^MMT
|
||||||
|
^PW320
|
||||||
|
^LL1119
|
||||||
|
^LS0
|
||||||
|
^FT57,105^A0N,39,38^FH\^CI28^FDERRECINQUE^FS^CI27
|
||||||
|
^FT58,148^A0N,20,20^FH\^CI28^FDVia Meucci 31/A^FS^CI27
|
||||||
|
^FT58,173^A0N,20,20^FH\^CI28^FD10079 Mappano(TO)^FS^CI27
|
||||||
|
^FT18,758^A0N,23,20^FH\^CI28^FD{DD}/{MO}/{YY}^FS^CI27
|
||||||
|
^FT183,758^A0N,23,20^FH\^CI28^FD{HH}:{MI}:{SS}^FS^CI27
|
||||||
|
^FT18,981^A0N,31,30^FH\^CI28^FDESITO:^FS^CI27
|
||||||
|
^FT144,981^A0N,31,30^FH\^CI28^FDCONFORME^FS^CI27
|
||||||
|
^FT24,439^A0N,25,25^FH\^CI28^FDPart number:^FS^CI27
|
||||||
|
^FT24,481^A0N,23,23^FH\^CI28^FD{LABELTXT_2}^FS^CI27
|
||||||
|
^FT24,555^A0N,25,25^FH\^CI28^FDSequential number:^FS^CI27
|
||||||
|
^FT24,598^A0N,23,23^FH\^CI28^FD{SN4}^FS^CI27
|
||||||
|
^FT18,833^A0N,23,23^FH\^CI28^FDOperatore:^FS^CI27
|
||||||
|
^FT157,674^A0N,23,23^FH\^CI28^FD{RESLEAK} mbar^FS^CI27
|
||||||
|
^FT18,674^A0N,23,23^FH\^CI28^FD{TTEST} s^FS^CI27
|
||||||
|
^FT18,724^A0N,23,23^FH\^CI28^FD{PTEST} mbar^FS^CI27
|
||||||
|
^BY1,3,64^FT25,384^BCN,,N,N
|
||||||
|
^FH\^FD>:{PART}^FS
|
||||||
|
^FT58,241^A0N,25,25^FH\^CI28^FD{LABELTXT_1}^FS^CI27
|
||||||
|
^FT58,292^A0N,45,46^FH\^CI28^FDLEAK TEST^FS^CI27
|
||||||
|
^FT165,833^A0N,23,23^FH\^CI28^FD{BADGE_NUM}^FS^CI27
|
||||||
|
^FT24,512^A0N,23,23^FH\^CI28^FD{LABELTXT_3}^FS^CI27
|
||||||
|
^PQ1,0,1,Y
|
||||||
|
^XZ
|
||||||
|
|
@ -56,18 +56,20 @@ status_root:api/device-info-update/
|
||||||
download_root:media/uploads/
|
download_root:media/uploads/
|
||||||
|
|
||||||
images_path: data/images
|
images_path: data/images
|
||||||
poll_time: 60
|
poll_time: 10
|
||||||
hold_time: 30
|
hold_time: 10
|
||||||
service_account_json: config/machine_settings/gcloud_default.json
|
service_account_json: config/machine_settings/gcloud_default.json
|
||||||
bucket_id: st_ten_img
|
bucket_id: st_ten_img
|
||||||
|
|
||||||
[archive_synchronizer_extra]
|
[archive_synchronizer_extra]
|
||||||
archive_endpoint: https://r5portal.it/api/st-ten-save/
|
portal_address: https://r5portal.it/
|
||||||
|
archive_root:api/st-ten-save/
|
||||||
|
status_root:api/device-info-update/
|
||||||
|
download_root:media/uploads/
|
||||||
|
archive_endpoint: http://172.20.3.13/api/st-ten-save/
|
||||||
images_path: data/images
|
images_path: data/images
|
||||||
poll_time: 60
|
poll_time: 10
|
||||||
hold_time: 30
|
hold_time: 10
|
||||||
service_account_json: config/machine_settings/gcloud_default.json
|
|
||||||
bucket_id: st_ten_img
|
|
||||||
|
|
||||||
[label_printer]
|
[label_printer]
|
||||||
platform: windows
|
platform: windows
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ image_for_warning= st-ten-1
|
||||||
|
|
||||||
[hardware_config]
|
[hardware_config]
|
||||||
archive_synchronizer: present
|
archive_synchronizer: present
|
||||||
|
archive_synchronizer_extra: present
|
||||||
galaxy_camera: absent
|
galaxy_camera: absent
|
||||||
uvc_camera: absent
|
uvc_camera: absent
|
||||||
label_printer: present
|
label_printer: present
|
||||||
|
|
@ -18,6 +19,12 @@ screwdriver: absent
|
||||||
digital_io: present
|
digital_io: present
|
||||||
external_flush_blow: absent
|
external_flush_blow: absent
|
||||||
|
|
||||||
|
# VERO PROJECT LOCAL SERVER
|
||||||
|
[archive_synchronizer_extra]
|
||||||
|
portal_address: http://172.20.3.13:45006/
|
||||||
|
poll_time: 10
|
||||||
|
hold_time: 10
|
||||||
|
|
||||||
[tecna_t3]
|
[tecna_t3]
|
||||||
port: COM4
|
port: COM4
|
||||||
model: t3l
|
model: t3l
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ image_for_warning= st-ten-14
|
||||||
|
|
||||||
[hardware_config]
|
[hardware_config]
|
||||||
archive_synchronizer: present
|
archive_synchronizer: present
|
||||||
|
archive_synchronizer_extra: present
|
||||||
uvc_camera: absent
|
uvc_camera: absent
|
||||||
label_printer: present
|
label_printer: present
|
||||||
neo_pixels: absent
|
neo_pixels: absent
|
||||||
|
|
@ -19,13 +20,19 @@ fixture_id: absent
|
||||||
discard_box: absent
|
discard_box: absent
|
||||||
enforce_piece_removal: no
|
enforce_piece_removal: no
|
||||||
|
|
||||||
|
# VERO PROJECT LOCAL SERVER
|
||||||
|
[archive_synchronizer_extra]
|
||||||
|
portal_address: http://172.20.3.13:45007/
|
||||||
|
poll_time: 10
|
||||||
|
hold_time: 10
|
||||||
|
|
||||||
[tecna_t3]
|
[tecna_t3]
|
||||||
port: /dev/ttyUSB0
|
port: /dev/ttyUSB0
|
||||||
model: t3l
|
model: t3l
|
||||||
|
|
||||||
[label_printer]
|
[label_printer]
|
||||||
platform: linux
|
platform: linux
|
||||||
printer: ZTC-ZD421-203dpi-ZPL
|
printer: Zebra_Technologies_ZTC_ZD421-203dpi_ZPL
|
||||||
|
|
||||||
[digital_io]
|
[digital_io]
|
||||||
# OUTPUT MAP FOR FIXTURE CONNECTOR
|
# OUTPUT MAP FOR FIXTURE CONNECTOR
|
||||||
|
|
|
||||||
|
|
@ -2,8 +2,10 @@
|
||||||
description = ST-TEN-4 - REPARTO PREFORMATURA - MAPPANO
|
description = ST-TEN-4 - REPARTO PREFORMATURA - MAPPANO
|
||||||
instruction_folder = st-ten-4
|
instruction_folder = st-ten-4
|
||||||
image_for_warning= st-ten-4
|
image_for_warning= st-ten-4
|
||||||
|
|
||||||
[hardware_config]
|
[hardware_config]
|
||||||
archive_synchronizer: present
|
archive_synchronizer: present
|
||||||
|
archive_synchronizer_extra: present
|
||||||
uvc_camera: absent
|
uvc_camera: absent
|
||||||
label_printer: present
|
label_printer: present
|
||||||
neo_pixels: absent
|
neo_pixels: absent
|
||||||
|
|
@ -13,6 +15,12 @@ vision_saver: absent
|
||||||
vision: absent
|
vision: absent
|
||||||
screwdriver: absent
|
screwdriver: absent
|
||||||
|
|
||||||
|
# VERO PROJECT LOCAL SERVER
|
||||||
|
[archive_synchronizer_extra]
|
||||||
|
portal_address: http://172.20.3.13:45008/
|
||||||
|
poll_time: 10
|
||||||
|
hold_time: 10
|
||||||
|
|
||||||
[tecna_t3]
|
[tecna_t3]
|
||||||
port: COM4
|
port: COM4
|
||||||
model: t3p
|
model: t3p
|
||||||
|
|
|
||||||
BIN
config/warning_images/st-ten-10/Img-G-8606466.png
Normal file
|
After Width: | Height: | Size: 38 KiB |
BIN
config/warning_images/st-ten-10/Img-G-8606706.png
Normal file
|
After Width: | Height: | Size: 37 KiB |
BIN
config/warning_images/st-ten-10/Img-G-8606707.png
Normal file
|
After Width: | Height: | Size: 38 KiB |
BIN
config/warning_images/st-ten-10/Img-G-8612523.png
Normal file
|
After Width: | Height: | Size: 39 KiB |
BIN
config/warning_images/st-ten-10/Img-G-8615927.png
Normal file
|
After Width: | Height: | Size: 40 KiB |
BIN
config/warning_images/st-ten-10/Img-G-8615928.png
Normal file
|
After Width: | Height: | Size: 39 KiB |
BIN
config/warning_images/st-ten-10/Img-G-8626311.png
Normal file
|
After Width: | Height: | Size: 40 KiB |
BIN
config/warning_images/st-ten-10/Img-G-8626312.png
Normal file
|
After Width: | Height: | Size: 38 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R55680.png
Normal file
|
After Width: | Height: | Size: 44 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R55681.png
Normal file
|
After Width: | Height: | Size: 44 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R55682.png
Normal file
|
After Width: | Height: | Size: 38 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R55683.png
Normal file
|
After Width: | Height: | Size: 44 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R55794.png
Normal file
|
After Width: | Height: | Size: 98 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R55795.png
Normal file
|
After Width: | Height: | Size: 49 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R55796.png
Normal file
|
After Width: | Height: | Size: 49 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R55865.png
Normal file
|
After Width: | Height: | Size: 44 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R55866.png
Normal file
|
After Width: | Height: | Size: 44 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R55916.png
Normal file
|
After Width: | Height: | Size: 40 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R55918.png
Normal file
|
After Width: | Height: | Size: 40 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R56061.png
Normal file
|
After Width: | Height: | Size: 48 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R56063.png
Normal file
|
After Width: | Height: | Size: 49 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R56215.png
Normal file
|
After Width: | Height: | Size: 39 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R56217.png
Normal file
|
After Width: | Height: | Size: 38 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R56219.png
Normal file
|
After Width: | Height: | Size: 38 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R56401.png
Normal file
|
After Width: | Height: | Size: 35 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R56583.png
Normal file
|
After Width: | Height: | Size: 35 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R56585.png
Normal file
|
After Width: | Height: | Size: 37 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R56632.png
Normal file
|
After Width: | Height: | Size: 46 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R56636.png
Normal file
|
After Width: | Height: | Size: 37 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R56638.png
Normal file
|
After Width: | Height: | Size: 47 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R56738.png
Normal file
|
After Width: | Height: | Size: 43 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R56739.png
Normal file
|
After Width: | Height: | Size: 82 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R57023.png
Normal file
|
After Width: | Height: | Size: 39 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R57025.png
Normal file
|
After Width: | Height: | Size: 39 KiB |
BIN
config/warning_images/st-ten-10/Img-G-R57027.png
Normal file
|
After Width: | Height: | Size: 34 KiB |
|
|
@ -46,6 +46,7 @@ class ArchiveSynchronizer(Component):
|
||||||
|
|
||||||
self._do_set_period({"period": float(self.config[self.name]["poll_time"])})
|
self._do_set_period({"period": float(self.config[self.name]["poll_time"])})
|
||||||
self.hold_time = round(float(self.config[self.name]["hold_time"]) * 1000)
|
self.hold_time = round(float(self.config[self.name]["hold_time"]) * 1000)
|
||||||
|
if self.name == "archive_synchronizer":
|
||||||
self.gcs_client = storage.Client.from_service_account_json(self.config[self.name]["service_account_json"])
|
self.gcs_client = storage.Client.from_service_account_json(self.config[self.name]["service_account_json"])
|
||||||
self.gcs_client._http.mount("", HTTPAdapter(max_retries=Retry(total=0))) # this seems to be useless
|
self.gcs_client._http.mount("", HTTPAdapter(max_retries=Retry(total=0))) # this seems to be useless
|
||||||
self.gcs_client._http.adapters.move_to_end("", last=False) # this seems to be useless
|
self.gcs_client._http.adapters.move_to_end("", last=False) # this seems to be useless
|
||||||
|
|
@ -57,16 +58,36 @@ class ArchiveSynchronizer(Component):
|
||||||
if self.main_window is None:
|
if self.main_window is None:
|
||||||
self.main_window = get_main_window()
|
self.main_window = get_main_window()
|
||||||
|
|
||||||
|
if self.name != "archive_synchronizer_extra":
|
||||||
for record in list(Archive.select().where((Archive.archived != True) | (Archive.uploaded != True))): # using "is not True" breaks the query.. # list() forces the complete execution of the query unlocking the db unlike __enter__()
|
# MAIN SERVER
|
||||||
|
bit_pos = 0
|
||||||
|
unsaved_records = Archive.select().where((Archive.archived == 0) |
|
||||||
|
(Archive.archived == 2) |
|
||||||
|
(Archive.uploaded == 0))
|
||||||
|
else:
|
||||||
|
# EXTRA SERVER (VERO PROJECT SPA)
|
||||||
|
bit_pos = 1
|
||||||
|
unsaved_records = Archive.select().where((Archive.archived == 0) |
|
||||||
|
(Archive.archived == 1))
|
||||||
|
for record in unsaved_records:
|
||||||
if not self.simulate:
|
if not self.simulate:
|
||||||
if record.archived is not True:
|
if record.archived is not True:
|
||||||
record.archived = self.remote_archive(record) is True
|
s = time.time()
|
||||||
|
save_ok = self.remote_archive(record) is True
|
||||||
|
e = time.time()
|
||||||
|
else:
|
||||||
|
save_ok=True
|
||||||
if record.uploaded is not True:
|
if record.uploaded is not True:
|
||||||
record.uploaded = self.remote_store(record) is True
|
record.uploaded = self.remote_store(record) is True
|
||||||
else:
|
else:
|
||||||
self.log.info("simulated archive synchronizer cycle")
|
self.log.info("simulated archive synchronizer cycle")
|
||||||
#record.save()
|
save_ok=True
|
||||||
|
|
||||||
|
if save_ok:
|
||||||
|
record.archived |= (1 << bit_pos)
|
||||||
|
self.log.info(f"({self.name}) id {record.id}: archived remotely")
|
||||||
|
else:
|
||||||
|
self.log.info(f"({self.name}) id {record.id}: failed to archive remotely")
|
||||||
self.main_window.run_request.emit(record.save, [], {})
|
self.main_window.run_request.emit(record.save, [], {})
|
||||||
|
|
||||||
if self.hold_time > 0:
|
if self.hold_time > 0:
|
||||||
|
|
@ -77,6 +98,8 @@ class ArchiveSynchronizer(Component):
|
||||||
self.machine_status="working"
|
self.machine_status="working"
|
||||||
|
|
||||||
super()._get()
|
super()._get()
|
||||||
|
|
||||||
|
if self.name == "archive_synchronizer":
|
||||||
self.update_machine_status()
|
self.update_machine_status()
|
||||||
|
|
||||||
def update_machine_status(self):
|
def update_machine_status(self):
|
||||||
|
|
@ -141,6 +164,7 @@ class ArchiveSynchronizer(Component):
|
||||||
if not self.simulate:
|
if not self.simulate:
|
||||||
with requests.Session() as s:
|
with requests.Session() as s:
|
||||||
s.mount("", HTTPAdapter(max_retries=Retry(total=0))) # this disables retries
|
s.mount("", HTTPAdapter(max_retries=Retry(total=0))) # this disables retries
|
||||||
|
if self.name == "archive_synchronizer":
|
||||||
r = requests.post(self.archive_endpoint, params={
|
r = requests.post(self.archive_endpoint, params={
|
||||||
"data": json.dumps(record.test_data),
|
"data": json.dumps(record.test_data),
|
||||||
"machine_id": self.machine_id,
|
"machine_id": self.machine_id,
|
||||||
|
|
@ -151,6 +175,17 @@ class ArchiveSynchronizer(Component):
|
||||||
"time": record.time.isoformat(),
|
"time": record.time.isoformat(),
|
||||||
"user": record.user.username,
|
"user": record.user.username,
|
||||||
}, timeout=5, verify=False)
|
}, timeout=5, verify=False)
|
||||||
|
else:
|
||||||
|
r = requests.get(self.archive_endpoint, params={
|
||||||
|
"machine_id": self.machine_id,
|
||||||
|
"overridden": record.overridden,
|
||||||
|
"recipe": record.test_data.get("recipe", {}).get("name", None),
|
||||||
|
"result": "OK" if record.result else "KO",
|
||||||
|
"serial": record.id,
|
||||||
|
"time": record.time.isoformat(),
|
||||||
|
"user": record.user.username,
|
||||||
|
}, timeout=5, verify=False)
|
||||||
|
|
||||||
if r.status_code != 200:
|
if r.status_code != 200:
|
||||||
raise AssertionError("bad status response")
|
raise AssertionError("bad status response")
|
||||||
except AssertionError as e:
|
except AssertionError as e:
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
|
|
||||||
from peewee import (AutoField, BooleanField, DateTimeField, ForeignKeyField,
|
from peewee import (AutoField, BooleanField, DateTimeField, ForeignKeyField,
|
||||||
TextField)
|
TextField, IntegerField)
|
||||||
from playhouse.sqlite_ext import JSONField
|
from playhouse.sqlite_ext import JSONField
|
||||||
|
|
||||||
from .base_model import BaseModel, db
|
from .base_model import BaseModel, db
|
||||||
|
|
@ -16,7 +16,7 @@ class Archive(BaseModel):
|
||||||
overridden = BooleanField(null=False)
|
overridden = BooleanField(null=False)
|
||||||
test_data = JSONField(null=False)
|
test_data = JSONField(null=False)
|
||||||
label = TextField(null=True)
|
label = TextField(null=True)
|
||||||
archived = BooleanField(null=False, default=False)
|
archived = IntegerField(null=False, default=False)
|
||||||
uploaded = BooleanField(null=False, default=False)
|
uploaded = BooleanField(null=False, default=False)
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
|
|
|
||||||
|
|
@ -101,6 +101,7 @@ try:
|
||||||
# INIT COMPONENT
|
# INIT COMPONENT
|
||||||
self.components_specs = {
|
self.components_specs = {
|
||||||
"archive_synchronizer": {"c": ArchiveSynchronizer},
|
"archive_synchronizer": {"c": ArchiveSynchronizer},
|
||||||
|
"archive_synchronizer_extra": {"c": ArchiveSynchronizer},
|
||||||
"label_printer": {"c": Os_Label_Printer, "t": False},
|
"label_printer": {"c": Os_Label_Printer, "t": False},
|
||||||
"extra_label_printer": {"c": Os_Label_Printer, "t": False},
|
"extra_label_printer": {"c": Os_Label_Printer, "t": False},
|
||||||
"label_printer_2": {"c": BrotherLabelPrinter, "t": False},
|
"label_printer_2": {"c": BrotherLabelPrinter, "t": False},
|
||||||
|
|
|
||||||
|
|
@ -370,7 +370,7 @@ class Test(Widget):
|
||||||
self.archived.label = compiled_label
|
self.archived.label = compiled_label
|
||||||
self.log.info(f"Label printed. Saving...")
|
self.log.info(f"Label printed. Saving...")
|
||||||
#self.archived.save()
|
#self.archived.save()
|
||||||
self.main_window.run_request.emit(self.archived.save, [], {})
|
self.main_window.main_window.run_request.emit(self.archived.save, [], {})
|
||||||
self.next_timer.start(500)
|
self.next_timer.start(500)
|
||||||
elif self.step.step_type == "wait":
|
elif self.step.step_type == "wait":
|
||||||
self.next_timer.start(500)
|
self.next_timer.start(500)
|
||||||
|
|
|
||||||