diff --git a/ratedata.dat b/ratedata.dat index 57861e94..879447c0 100644 Binary files a/ratedata.dat and b/ratedata.dat differ diff --git a/safesite/views.py b/safesite/views.py index 0392764b..0a968e87 100644 --- a/safesite/views.py +++ b/safesite/views.py @@ -6084,6 +6084,8 @@ def apiexamtestdetail(req): elif a == 'handtest': data = json.loads(req.body.decode('utf-8')) testid = data['testid'] + obj,created = ExamTestDetail.objects.get_or_create(examtest__id=testid, user__userid=userid, + defaults={'examtest': ExamTest.objects.get(id=testid),'user':User.objects.get(userid=userid)}) starttime = data['starttime'] endtime = datetime.now() took = (endtime - datetime.strptime(starttime, '%Y-%m-%d %H:%M:%S')).total_seconds() #计算相差多少秒 @@ -6120,8 +6122,6 @@ def apiexamtestdetail(req): i['iscore'] = iscore score = score + iscore tms.append(str(i['question__id'])) - obj,created = ExamTestDetail.objects.get_or_create(examtest__id=testid, user__userid=userid, - defaults={'examtest': ExamTest.objects.get(id=testid),'user':User.objects.get(userid=userid)}) obj.testnum = obj.testnum + 1 obj.starttime = starttime obj.endtime = endtime @@ -6192,6 +6192,7 @@ def apiexamtestrate(req): ''' companyid = req.GET.get('companyid') alltest = ExamTest.objects.filter(usecomps__contains=','+str(companyid)+',').exclude(nousecomps__contains=','+str(companyid)+',') + print(alltest) objs = ExamTestDetail.objects.filter(examtest__in=alltest,ison=1).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') total = objs.count() with open('ratedata.dat','wb') as f: