Make stats refresh, and add filter support to stats endpoint

This commit is contained in:
Peter Stockings
2025-01-26 23:01:39 +11:00
parent 23de6ef1f7
commit 527395d704
10 changed files with 73 additions and 65 deletions

View File

@@ -148,6 +148,10 @@ def get_stats_from_topsets(topsets):
len(topsets) / workout_count, 1)
stats.append({"Text": "Average sets per workout",
"Value": average_number_sets_per_workout})
# Average exercises per workout
average_exercises_per_workout = round(exercise_count / workout_count, 1)
stats.append({"Text": "Average Exercises Per Workout", "Value": average_exercises_per_workout})
training_duration = last_workout_date - first_workout_date
if training_duration > timedelta(days=0):
@@ -155,6 +159,10 @@ def get_stats_from_topsets(topsets):
workout_count / (training_duration.days / 7), 1)
stats.append({"Text": "Average Workouts Per Week",
"Value": average_workouts_per_week})
# Average sets per exercise
average_sets_per_exercise = round(len(topsets) / exercise_count, 1) if exercise_count > 0 else 0
stats.append({"Text": "Average Sets Per Exercise", "Value": average_sets_per_exercise})
return stats