更新总排名计算方式
This commit is contained in:
parent
a13c3fd55e
commit
8c99202755
|
@ -21,7 +21,7 @@ from django.contrib.auth.hashers import check_password, make_password
|
|||
from django.contrib.sessions.models import Session
|
||||
from django.core import serializers
|
||||
from django.core.serializers.json import DjangoJSONEncoder
|
||||
from django.db.models import Avg, Count, F, Q, Sum
|
||||
from django.db.models import Avg, Count, F, Q, Sum, Max
|
||||
from django.forms.models import model_to_dict
|
||||
from django.http import (HttpResponse, HttpResponseRedirect, JsonResponse,
|
||||
request)
|
||||
|
@ -6710,7 +6710,11 @@ def apiexamtestrate(req):
|
|||
companyid = req.GET.get('companyid')
|
||||
alltest = ExamTest.objects.filter(usecomps__contains=','+str(companyid)+',').exclude(nousecomps__contains=','+str(companyid)+',')
|
||||
allexamtestdetail = ExamTestDetail.objects.filter(examtest__in=alltest,testnum__gte=1)
|
||||
objs = allexamtestdetail.values('user__userid','user__name','user__headimgurl','user__ubelongpart__partname').annotate(totalscore=Sum('score'),totaltook=Sum('took'),testnum=Count('user__userid')).order_by('-totalscore','totaltook')
|
||||
objs = allexamtestdetail.values('user__userid','user__name','user__headimgurl','user__ubelongpart__partname').annotate(totalscore=Sum('score'),totaltook=Sum('took'),testnum=Count('user__userid'), maxscore = Max('score'))
|
||||
# if req.GET.get('type', None) == 'max':
|
||||
objs = objs.order_by('-maxscore','testnum', '-totalscore')
|
||||
# else:
|
||||
# objs = objs.order_by('-totalscore','totaltook')
|
||||
total = objs.count()
|
||||
objslist = list(objs)
|
||||
for i in objslist:
|
||||
|
|
Loading…
Reference in New Issue