Private
Public Access
1
0
This commit is contained in:
2024-07-26 16:31:29 +02:00
parent 4968ed5550
commit 2dea905b3c
5 changed files with 262 additions and 33 deletions

View File

@@ -2,6 +2,7 @@
from rowers.views.statements import *
from rowers.interactiveplots import sleep
from rowers.plannedsessions import is_session_complete
from rowers.tasks import send_session_stats
from rq import Queue
from redis import Redis
@@ -61,41 +62,15 @@ def sessions_stats(request):
if not request.user.is_staff: # pragma: no cover
raise PermissionDenied("Not Allowed")
ws = Workout.objects.filter(plannedsession__isnull=False)
myqueue(queuelow,
send_session_stats,
request.user)
results = []
r = getrower(request.user)
url = reverse('workouts_view')
for w in ws:
ps = w.plannedsession
r = w.user
ratio, status, cdate = is_session_complete(r, ps)
d = {
'date':w.date,
'session_id':ps.id,
'session_name':ps.name,
'complete': ratio,
'status': status,
'rscore': w.rscore,
'duration': w.duration,
}
results.append(d)
return HttpResponseRedirect(url)
df = pd.DataFrame(results)
code = str(uuid4())
filename = code+'.csv'
df.to_csv(filename)
with open(filename,'r') as f:
response = HttpResponse(f)
response['Content-Disposition'] = 'attachment; filename="%s"' % filename
response['Content-Type'] = 'application/octet-stream'
os.remove(filename)
return response
@login_required()