diff --git a/SW/PC/Stopwatch/registrace.py b/SW/PC/Stopwatch/registrace.py index e008999..4915791 100644 --- a/SW/PC/Stopwatch/registrace.py +++ b/SW/PC/Stopwatch/registrace.py @@ -55,12 +55,16 @@ class Worker(QtCore.QThread): def worker(self): while True: item = queue.get() - log.append(item) + log.append({ + 'url': item['url'], + 'json': item['json'], + }) with open('log.json', 'w') as f: f.write(json.dumps(log)) response = session.post(item['url'], json=item['json']) - if response.status_code == 200: + if item.get('on_success'): + item['on_success']() if item.get('message'): self.returned_state.emit(f'{item['message']}') else: @@ -90,19 +94,20 @@ def register_racer(): starting_number = 1 racer = list(filter(lambda x: x['racer_id'] == racer_id, racers))[0] + def update_racer(): + racer['card_id'] = card_id + racer['starting_number'] = starting_number + racer['started'] = False + updateRacers() + queue.put({ 'url': config['host'] + '/api/card/register', 'json': {'racer_id': racer_id, 'starting_number': starting_number, 'card_id': card_id, 'time': datetime.datetime.now().strftime('%d.%m.%Y %H:%M:%S.%f')}, 'message': f"Úspěšné zaregistrování závodníka {racer['first_name']} {racer['last_name']} se startovním číslem {starting_number}!", - 'failed': f"Neúspěšná registrace závodníka {racer['first_name']} {racer['last_name']}" + 'failed': f"Neúspěšná registrace závodníka {racer['first_name']} {racer['last_name']}", + 'on_success': update_racer, }) - racer['card_id'] = card_id - racer['starting_number'] = starting_number - racer['started'] = False - updateRacers() - - model = QtGui.QStandardItemModel() diff --git a/SW/PC/Stopwatch/usbcardreader.py b/SW/PC/Stopwatch/usbcardreader.py index 39f4619..4c09da8 100644 --- a/SW/PC/Stopwatch/usbcardreader.py +++ b/SW/PC/Stopwatch/usbcardreader.py @@ -48,4 +48,4 @@ class UsbCardReader: except: pass - time.sleep(0.001) \ No newline at end of file + time.sleep(0.001)