From 8f607c30c145db2f578e8a75f1b86dc0dcea0318 Mon Sep 17 00:00:00 2001 From: caoqianming Date: Wed, 14 Oct 2020 17:33:56 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9B=BE=E8=A1=A8=E5=88=86=E6=9E=90-=E6=A8=A1?= =?UTF-8?q?=E8=80=83=E6=9C=AA=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- test_server/analyse/urls.py | 1 + test_server/analyse/views.py | 17 +++++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/test_server/analyse/urls.py b/test_server/analyse/urls.py index 8708cae..bbe8270 100644 --- a/test_server/analyse/urls.py +++ b/test_server/analyse/urls.py @@ -10,5 +10,6 @@ urlpatterns = [ path('admindata1/', Admindata1.as_view()), path('companydis/', Companydis.as_view()), path('consumerdis/', Consumerdis.as_view()), + path('monitest/', Monitest.as_view()), path('searchcandidates/', SearchCandidates.as_view()) ] diff --git a/test_server/analyse/views.py b/test_server/analyse/views.py index 8989314..72c1ff9 100644 --- a/test_server/analyse/views.py +++ b/test_server/analyse/views.py @@ -12,6 +12,7 @@ import requests from lxml import etree from django.db.models import Count from rbac.models import UserProfile +from django.db.models.functions import ExtractMonth, ExtractWeek, ExtractYear # Create your views here. class BasicCount(APIView): @@ -38,6 +39,22 @@ class Admindata1(APIView): ret['s'][0]['data'].append(i['total']) return Response(ret) +from examtest.models import ExamTest +class Monitest(APIView): + """ + 模拟考试数据-时间分布图 + """ + def get(self, request): + ret = {'x':{'name':'月份', 'data':[]}, 's':[{'name':'自助模考', 'data':[]}, {'name':'押卷模考', 'data':[]}], 't':'模考次数趋势图'} + tmp = ExamTest.objects.exclude(consumer__create_admin__isnull=True)\ + .annotate(create_month=ExtractMonth('create_time'), create_year=ExtractYear('create_time'))\ + .values('create_month', 'create_year', 'type').order_by('create_year', 'create_month').annotate(total=Count('create_month')) + for i in tmp: + if str(i['create_year'])+'年'+str(i['create_month'])+'月' not in ret['x']['data']: + ret['x']['data'].append(str(i['create_year'])+'年'+str(i['create_month'])+'月') + + return Response(ret) + nameMap = { "南海诸岛" : "南海诸岛", '北京市' :'北京',