making workout shells from summaries
This commit is contained in:
@@ -109,3 +109,53 @@ def get_garmin_workout_list(user):
|
||||
result = garmin.get(url)
|
||||
|
||||
return result
|
||||
|
||||
def garmin_workouts_from_summaries(activities):
|
||||
for activity in activities:
|
||||
garmintoken = activity['userAccessToken']
|
||||
try:
|
||||
r = Rower.objects.get(garmintoken=garmintoken)
|
||||
starttime = activity['startTimeInSeconds']
|
||||
startdatetime = arrow.get(starttime)
|
||||
durationseconds = activity['durationInSeconds']
|
||||
duration = dataprep.totaltime_sec_to_string(durationseconds)
|
||||
activitytype = activity['activityType']
|
||||
name = 'Imported from Garmin'
|
||||
date = startdatetime.date()
|
||||
try:
|
||||
distance = activity['durationInMeters']
|
||||
except KeyError:
|
||||
distance = 0
|
||||
try:
|
||||
averagehr = activity['averageHeartRateInBeatsPerMinute']
|
||||
maxhr = activity['maxHeartRateInBeatsPerMinute']
|
||||
except KeyError:
|
||||
averagehr = 0
|
||||
maxhr = 0
|
||||
uploadedtogarmin = activity['summaryId']
|
||||
try:
|
||||
w = Workout.objects.get(uploadedtogarmin=uploadedtogarmin)
|
||||
except Workout.DoesNotExist:
|
||||
newcsvfile='media/garmin{code}_{importid}.csv'
|
||||
w = Workout(user=r,csvfilename=newcsvfile)
|
||||
w.startdatetime = datetime.datetime(
|
||||
year=startdatetime.year,
|
||||
month=startdatetime.month,
|
||||
day=startdatetime.day,
|
||||
hour=startdatetime.hour,
|
||||
minute=startdatetime.minute,
|
||||
second=startdatetime.second,
|
||||
tzinfo=startdatetime.tzinfo)
|
||||
w.starttime = startdatetime.time()
|
||||
w.duration = duration
|
||||
try:
|
||||
w.activitytype = mytypes.garminmappinginv[activitytype]
|
||||
except KeyError:
|
||||
w.activitytype = 'other'
|
||||
w.name = name
|
||||
w.date = date
|
||||
w.save()
|
||||
except Rower.DoesNotExist:
|
||||
pass
|
||||
|
||||
return 1
|
||||
|
||||
Reference in New Issue
Block a user