浏览代码

统计分析

wushaodong 4 年之前
父节点
当前提交
50f769c262
共有 1 个文件被更改,包括 5 次插入4 次删除
  1. 5 4
      apps/wxapp/views.py

+ 5 - 4
apps/wxapp/views.py

@@ -6,7 +6,7 @@ from django.db import transaction
 from rest_framework.views import APIView
 from rest_framework import generics
 import datetime
-from django.db.models import Sum
+from django.db.models import Sum,Count
 from rest_framework_jwt.views import ObtainJSONWebToken,VerifyJSONWebToken,RefreshJSONWebToken
 from rest_framework.serializers import ValidationError
 from utils import response_ok, response_error
@@ -185,14 +185,15 @@ class StatisticsEvaluateView(APIView):
         # 分组统计分析
         rows = RepairOrderComment.objects.filter(repair_order__tenant=tenant,create_time__gte=date,) \
             .values('repair_user_id') \
-            .annotate(count=Sum('start')) \
-            .values('repair_user__employee__name', 'count')
+            .annotate(starts=Sum('start'),count=Count('id')) \
+            .values('repair_user__employee__name', 'starts', 'count')
         for row in rows:
             item = {
                 'title':row['repair_user__employee__name'],
-                'data':row['count'],
+                'data':round(float(row['starts']) / float(row['count']),2),
             }
             data.append(item)
+        data.sort(key=lambda d: d['data'], reverse=True)
 
         return response_ok(data)