From 1ecb96f5201f9fe9dc14b69aad96fefab4385040 Mon Sep 17 00:00:00 2001 From: Robert Einsle Date: Fri, 17 Feb 2017 18:49:19 +0100 Subject: [PATCH] fix ld management --- billard/models.py | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/billard/models.py b/billard/models.py index 7b8c7fa..54ce203 100644 --- a/billard/models.py +++ b/billard/models.py @@ -113,21 +113,26 @@ def process_location_data(): cli = Client.objects.filter(uuid=ld.client_id, desks__desk_no=ld.desk_no) if cli.count() < 1: ld.processed = True - ld.error_msg = 'No location object found. Stopp processing! {}, {}'.format(ld.client_id, ld.desk_no) + ld.error_msg = 'No client object found. Stopp processing! {}, {}'.format(ld.client_id, ld.desk_no) ld.save() mail_admins(subject=ld.error_msg, message=ld.error_msg) - # TODO Send error eMail to Admin else: cli = cli[0] - desk = cli.desks.filter(desk_no=ld.desk_no)[0] + desk = cli.desks.filter(desk_no=ld.desk_no, enabled=True) + if desk.count() != 1: + ld.processed = True + ld.error_msg = 'No desk object found. Stopp processing! {}, {}'.format(ld.client_id, ld.desk_no) + ld.save() + mail_admins(subject=ld.error_msg, message=ld.error_msg) + desk = desk[0] ac = desk.accounting_set.order_by('time_from').reverse() if ld.on_off: if ac.count() > 0 and ac[0].time_to is None: - ac[0].time_to = datetime.now() + ac[0].time_to = ld.tst ac[0].save() mail_admins(subject='Accounting passt nicht', - message='Vorheriges Accounting nicht abgeschlossen: Accounting_id {}'.format(ac[0].id)) - # TODO Send error eMail to Admin + message='Vorheriges Accounting nicht abgeschlossen: Desk_id {}, Accounting_id {}' + .format(desk.id, ac[0].id)) acc = Accounting( desk=desk, time_from=ld.tst,