From 78c6bfb34580519ef77092ec73ee94b32f53c67e Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Wed, 2 Dec 2020 15:54:46 +0100 Subject: [PATCH] Manual Entry working --- rowers/dataprep.py | 5 ++++- rowers/interactiveplots.py | 9 +++++---- rowers/views/workoutviews.py | 2 ++ 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/rowers/dataprep.py b/rowers/dataprep.py index 0ea6635a..73928eaa 100644 --- a/rowers/dataprep.py +++ b/rowers/dataprep.py @@ -1242,7 +1242,7 @@ def fetchcp(rower,theworkouts,table='cpdata'): def create_row_df(r,distance,duration,startdatetime,workouttype='rower', avghr=None,avgpwr=None,avgspm=None, rankingpiece = False, - duplicate=False, + duplicate=False,rpe=-1, title='Manual entry',notes='',weightcategory='hwt', adaptiveclass='None'): @@ -1351,6 +1351,7 @@ def save_workout_database(f2, r, dosmooth=True, workouttype='rower', workoutsource='unknown', notes='', totaldist=0, totaltime=0, rankingpiece=False, + rpe=-1, duplicate=False, summary='', makeprivate=False, @@ -1571,6 +1572,7 @@ def save_workout_database(f2, r, dosmooth=True, workouttype='rower', if title is not None and len(title)>140: title = title[0:140] + w = Workout(user=r, name=title, date=workoutdate, workouttype=workouttype, boattype=boattype, @@ -1583,6 +1585,7 @@ def save_workout_database(f2, r, dosmooth=True, workouttype='rower', workoutsource=workoutsource, rankingpiece=rankingpiece, forceunit=forceunit, + rpe=rpe, csvfilename=f2, notes=notes, summary=summary, maxhr=maxhr, averagehr=averagehr, startdatetime=workoutstartdatetime, diff --git a/rowers/interactiveplots.py b/rowers/interactiveplots.py index 7e14edea..3c3f7267 100644 --- a/rowers/interactiveplots.py +++ b/rowers/interactiveplots.py @@ -1655,24 +1655,25 @@ def getfatigues( ws = Workout.objects.filter(user=user.rower,date=date,duplicate=False) weight = 0 for w in ws: - weight += factor*getattr(w,metricchoice) + if getattr(w,metricchoice) > 0: + weight += factor*getattr(w,metricchoice) if getattr(w,metricchoice) <= 0: if metricchoice == 'rscore' and w.hrtss > 0: weight+= factor*w.hrtss - else: + elif metricchoice == 'rscore' and w.hrtss <= 0: trimp,hrtss = dataprep.workout_trimp(w) rscore,normp = dataprep.workout_rscore(w) if w.rpe and w.rpe > 0: dd = 3600*w.duration.hour+60*w.duration.minute+w.duration.second dd = dd/3600 weight += factor*rpetotss[w.rpe]*dd - if metricchoice == 'trimp' and w.trimp <= 0: + elif metricchoice == 'trimp' and w.trimp <= 0: trimp,hrtss = dataprep.workout_trimp(w) rscore,normp = dataprep.workout_rscore(w) if w.rpe and w.rpe > 0: dd = 3600*w.duration.hour+60*w.duration.minute+w.duration.second dd = dd/3600 - weight += factor*rpetotss[w.rpe]*dd + weight += 2*rpetotss[w.rpe]*dd impulses.append(weight) diff --git a/rowers/views/workoutviews.py b/rowers/views/workoutviews.py index 093a32b5..6373b10c 100644 --- a/rowers/views/workoutviews.py +++ b/rowers/views/workoutviews.py @@ -636,6 +636,7 @@ def addmanual_view(request,raceid=0): id,message = dataprep.create_row_df(r, distance, duration,startdatetime, + rpe=rpe, weightcategory=weightcategory, adaptiveclass=adaptiveclass, avghr=avghr, @@ -661,6 +662,7 @@ def addmanual_view(request,raceid=0): w.notes = notes w.plannedsession = ps w.name = name + w.rpe = rpe w.workouttype = workouttype w.boattype = boattype w.save()