from datetime import datetime #import models def get_prize_for(start, end, pph=0): """ calculate prize of billard table rental :param start: start datetime of rental :param end: end datetime of rental :param pph: prize per hour of rental :return: the calculated prize of rental """ pps = pph / 3600 time = (end - start).seconds prize = round((pps * time), 1) return prize def process_location_data(): pass #data = models.LocationData.objects.filter(processed=False) #for ld in data: # cli = models.Client.objects.filter(uuid=ld.client_id) # if cli.count() < 1: # ld.processed = True # ld.error_msg = 'No location object found. Stopp processing!' # ld.save() # # TODO Send error eMail to Admin # else: # cli = cli[0] # ac = models.Accounting.objects.filter(client=cli, desk_no=ld.table_no).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].save() # # TODO Send error eMail to Admin # acc = models.Accounting( # client=cli, # desk_no=ld.table_no, # time_from=ld.tst, # ) # acc.save() # ld.delete() # else: # acc = ac[0] # acc.time_to = ld.tst # acc.prize = get_prize_for( # start=acc.time_from, # end=ld.tst, # pph=cli.desk1_prize_ht # ) # acc.save() # ld.delete()