From 574e361a6cb02371c2edea957e80a1c8f3beaa73 Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Fri, 28 Mar 2025 16:27:53 +0100 Subject: [PATCH] fixes --- rowers/plannedsessions.py | 27 +++++++++++--------------- rowers/session_utils.py | 6 +++++- rowers/tests/testdata/testdata.tcx.gz | Bin 3989 -> 3989 bytes 3 files changed, 16 insertions(+), 17 deletions(-) diff --git a/rowers/plannedsessions.py b/rowers/plannedsessions.py index fe89dbbd..7df99eda 100644 --- a/rowers/plannedsessions.py +++ b/rowers/plannedsessions.py @@ -48,6 +48,7 @@ queue = django_rq.get_queue('default') queuelow = django_rq.get_queue('low') queuehigh = django_rq.get_queue('low') +from rowers.session_utils import timefield_to_minutes_duration def to_time(milliseconds): seconds = milliseconds/1000. @@ -325,23 +326,17 @@ def get_indoorraces(workout): sessionmode='distance', sessionvalue=workout.distance) + duration = timefield_to_minutes_duration(workout.duration) + + races2 = VirtualRace.objects.filter( + sessiontype='indoorrace', + startdate__lte=workout.date, + enddate__gte=workout.date, + sessionmode='time', + sessionvalue=duration) + + races = races1 | races2 - if workout.duration is None: - workout.duration = timedelta(0) - - if workout.duration.seconds == 0 and workout.duration.microseconds == 0: - duration = 60*workout.duration.hour+workout.duration.minute - - races2 = VirtualRace.objects.filter( - sessiontype='indoorrace', - startdate__lte=workout.date, - enddate__gte=workout.date, - sessionmode='time', - sessionvalue=duration) - - races = races1 | races2 - else: - races = races1 registrations = IndoorVirtualRaceResult.objects.filter( race__in=races, diff --git a/rowers/session_utils.py b/rowers/session_utils.py index 87de7643..76128450 100644 --- a/rowers/session_utils.py +++ b/rowers/session_utils.py @@ -10,7 +10,11 @@ def timefield_to_seconds_duration(t): return duration - +def timefield_to_minutes_duration(t): + duration = t.hour*60. + duration += t.minute + + return duration def is_session_complete_ws(ws, ps): ws = ws.order_by("date") diff --git a/rowers/tests/testdata/testdata.tcx.gz b/rowers/tests/testdata/testdata.tcx.gz index 68924396d8e1d6872241ea6f12c99cc5f1f38bcd..9030071b5d875089e5ae6e7ad11d4b622bb92a28 100644 GIT binary patch delta 15 WcmbO#KUJPhzMF%?WXDFfetrNWCj@E$ delta 15 WcmbO#KUJPhzMF$XDrX~GKR*B=4+I1N