Private
Public Access
1
0

calculates and stores start / end time

This commit is contained in:
Sander Roosendaal
2020-05-24 11:52:58 +02:00
parent 6f5462f013
commit d5f61d75ae
2 changed files with 20 additions and 5 deletions

View File

@@ -2926,6 +2926,9 @@ class VirtualRaceResult(models.Model):
emailnotifications = models.BooleanField(default=True, emailnotifications = models.BooleanField(default=True,
verbose_name = 'Receive challenge notifications by email') verbose_name = 'Receive challenge notifications by email')
startsecond = models.FloatField(default=0)
endsecond = models.FloatField(default=0)
def __str__(self): def __str__(self):
rr = Rower.objects.get(id=self.userid) rr = Rower.objects.get(id=self.userid)
name = '{u1} {u2}'.format( name = '{u1} {u2}'.format(

View File

@@ -425,6 +425,8 @@ def handle_check_race_course(self,
cseconds = [] cseconds = []
cmeters = [] cmeters = []
ccomplete = [] ccomplete = []
startseconds = []
endseconds = []
for startt in entrytimes: for startt in entrytimes:
@@ -445,19 +447,23 @@ def handle_check_race_course(self,
coursetimeseconds = coursetimeseconds-coursetimefirst coursetimesecondsnet = coursetimeseconds-coursetimefirst
coursemeters = coursemeters-coursemetersfirst coursemeters = coursemeters-coursemetersfirst
cseconds.append(coursetimeseconds) cseconds.append(coursetimesecondsnet)
cmeters.append(coursemeters) cmeters.append(coursemeters)
ccomplete.append(coursecompleted) ccomplete.append(coursecompleted)
endseconds.append(coursetimeseconds)
startseconds.append(coursetimefirst)
records = pd.DataFrame({ records = pd.DataFrame({
'coursetimeseconds':cseconds, 'coursetimeseconds':cseconds,
'coursecompleted': ccomplete, 'coursecompleted': ccomplete,
'coursemeters': cmeters 'coursemeters': cmeters,
'startsecond':startseconds,
'endsecond':endseconds,
}) })
records = records[records['coursecompleted'] == True] records = records[records['coursecompleted'] == True]
@@ -468,24 +474,30 @@ def handle_check_race_course(self,
mintime = records['coursetimeseconds'].min() mintime = records['coursetimeseconds'].min()
coursetimeseconds = records[records['coursetimeseconds'] == mintime]['coursetimeseconds'].min() coursetimeseconds = records[records['coursetimeseconds'] == mintime]['coursetimeseconds'].min()
coursemeters = records[records['coursetimeseconds'] == mintime]['coursemeters'].min() coursemeters = records[records['coursetimeseconds'] == mintime]['coursemeters'].min()
startsecond = records[records['coursetimeseconds'] == mintime]['startsecond'].min()
endsecond = records[records['coursetimeseconds'] == mintime]['endsecond'].min()
else: else:
coursecompleted = False coursecompleted = False
if coursecompleted: if coursecompleted:
query = 'UPDATE rowers_virtualraceresult SET coursecompleted = 1, duration = "{duration}", distance = {distance}, workoutid = {workoutid} WHERE id={recordid}'.format( query = 'UPDATE rowers_virtualraceresult SET coursecompleted = 1, duration = "{duration}", distance = {distance}, workoutid = {workoutid}, startsecond = {startsecond}, endsecond = {endsecond} WHERE id={recordid}'.format(
recordid=recordid, recordid=recordid,
duration=totaltime_sec_to_string(coursetimeseconds), duration=totaltime_sec_to_string(coursetimeseconds),
distance=int(coursemeters), distance=int(coursemeters),
workoutid=workoutid, workoutid=workoutid,
startsecond=startsecond,
endsecond=endsecond,
) )
if mode == 'coursetest': if mode == 'coursetest':
query = 'UPDATE rowers_coursetestresult SET coursecompleted = 1, duration = "{duration}", distance = {distance}, workoutid = {workoutid} WHERE id={recordid}'.format( query = 'UPDATE rowers_coursetestresult SET coursecompleted = 1, duration = "{duration}", distance = {distance}, workoutid = {workoutid}, startsecond = {startsecond}, endsecond = {endsecond} WHERE id={recordid}'.format(
recordid=recordid, recordid=recordid,
duration=totaltime_sec_to_string(coursetimeseconds), duration=totaltime_sec_to_string(coursetimeseconds),
distance=int(coursemeters), distance=int(coursemeters),
workoutid=workoutid, workoutid=workoutid,
startsecond=startsecond,
endsecond=endsecond,
) )