Private
Public Access
1
0

fixing seatnumber issue

This commit is contained in:
Sander Roosendaal
2022-09-06 20:52:52 +02:00
parent c5dee693d7
commit b893653781
5 changed files with 24 additions and 9 deletions

View File

@@ -74,7 +74,10 @@ def add_workout_from_data(userid, nkid, data, strokedata, source='nk', splitdata
# boatName = oarlocksession["boatName"]
oarLength = oarlocksession["oarLength"] # cm
oarInboardLength = oarlocksession["oarInboardLength"] # cm
# seatNumber = oarlocksession["seatNumber"]
try:
seatNumber = oarlocksession["seatNumber"]
except KeyError:
seatNumber = 1
try:
oarlockfirmware = oarlocksession["firmwareVersion"]
except KeyError:
@@ -83,7 +86,7 @@ def add_workout_from_data(userid, nkid, data, strokedata, source='nk', splitdata
# boatName = ''
oarLength = 289
oarInboardLength = 88
# seatNumber = 1
seatNumber = 1
oarlockfirmware = ''
workouttype = "water"
@@ -103,7 +106,8 @@ def add_workout_from_data(userid, nkid, data, strokedata, source='nk', splitdata
'oarlockfirmware': oarlockfirmware,
'elapsedTime': elapsedTime/1000., # in seconds
'totalDistance': totalDistance,
'useImpeller': useImpeller
'useImpeller': useImpeller,
'seatNumber': seatNumber,
}
# dologging('nklog.log',json.dumps(uploadoptions))
@@ -271,13 +275,13 @@ def getdict(x, seatIndex=1):
return {}
def strokeDataToDf(strokeData):
def strokeDataToDf(strokeData, seatIndex=1):
df = pd.DataFrame.from_dict(strokeData)
oarlockData = df['oarlockStrokes']
oarlockData = oarlockData.apply(lambda x: getdict(x, seatIndex=1))
oarlockData = oarlockData.apply(lambda x: getdict(x, seatIndex=seatIndex))
df2 = pd.DataFrame.from_records(oarlockData.values)
# df.set_index('timestamp',inplace=True)

View File

@@ -3031,7 +3031,16 @@ def handle_nk_async_workout(alldata, userid, nktoken, nkid, delaysec, defaulttim
dologging('nklog.log', json.dumps(data))
dologging('nklog.log', json.dumps(strokeData))
df = strokeDataToDf(strokeData)
seatNumber = 1
try:
oarlockSessions = data['oarlockSessions']
if oarlockSessions:
oarlocksession = oarlockSessions[0]
seatNumber = oarlocksession['seatNumber']
except KeyError:
pass
df = strokeDataToDf(strokeData, seatIndex=seatNumber)
csvfilename = 'media/{code}_{nkid}.csv.gz'.format(
nkid=nkid,

View File

@@ -14,7 +14,7 @@
}
</script>
<h1>{{ team.name }} Select Duplicate Workouts</h1>
<h1>{{ team.name }} Select Duplicate Workouts ({{ rower.user.first_name }})</h1>
<ul class="main-content">
<li class="grid_4">

View File

@@ -355,6 +355,8 @@ urlpatterns = [
re_path(
r'^user-analysis-select/(?P<function>\w.*)/team/(?P<teamid>\d+)/workout/(?P<id>\b[0-9A-Fa-f]+\b)/$',
views.analysis_new, name='analysis_new'),
re_path(r'^workouts-dupes-select/user/(?P<userid>\d+)/$',
views.workouts_duplicates_select_view, name='workouts_duplicates_select_view'),
re_path(r'^workouts-dupes-select/$',
views.workouts_duplicates_select_view, name='workouts_duplicates_select_view'),
re_path(

View File

@@ -812,8 +812,8 @@ def workout_recalcsummary_view(request, id=0):
message="This functionality requires a Pro plan or higher."
" If you are already a Pro user, please log in to access this functionality",
redirect_field_name=None)
def workouts_duplicates_select_view(request):
r = getrequestrower(request)
def workouts_duplicates_select_view(request, userid=0):
r = getrequestrower(request, userid=userid)
if request.method == 'POST':
form = WorkoutMultipleCompareForm(request.POST)