From 34d9307df9870510f9204659ddf9f5389012cd4d Mon Sep 17 00:00:00 2001
From: cjl <909710561@qq.com>
Date: Mon, 17 Jun 2024 15:57:37 +0800
Subject: [PATCH] fix:sql查询时间调整

---
 screen-api/src/main/java/com/moral/api/service/impl/AllocationServiceImpl.java |   71 ++++++++++++++++++++++++++++++-----
 1 files changed, 61 insertions(+), 10 deletions(-)

diff --git a/screen-api/src/main/java/com/moral/api/service/impl/AllocationServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/AllocationServiceImpl.java
index ec92c53..77f3892 100644
--- a/screen-api/src/main/java/com/moral/api/service/impl/AllocationServiceImpl.java
+++ b/screen-api/src/main/java/com/moral/api/service/impl/AllocationServiceImpl.java
@@ -23,6 +23,7 @@
 import com.moral.api.pojo.ext.allocation.AllocationExt;
 import com.moral.api.pojo.ext.allocation.AllocationListExt;
 import com.moral.api.pojo.ext.allocation.AllocationPageExt;
+import com.moral.api.pojo.ext.responsibility.ResponsibilityUnitExt;
 import com.moral.api.pojo.query.allocation.*;
 import com.moral.api.pojo.query.allocationextension.AllocationExtensionAddCond;
 import com.moral.api.pojo.query.app.AppAllocationFileCond;
@@ -231,15 +232,16 @@
         ArrayList<Map<String, Object>> escalationTypeList = new ArrayList<>();
         ArrayList<AllocationUnitViewDto> allocationUnitViewDtos = new ArrayList<>();
 
-        Object number1 = map.get("number");
+        String number1 = map.get("number").toString();
         String startTime=null;
         String endTime=null;
         if (!ObjectUtils.isEmpty(map.get("startTime")) || !ObjectUtils.isEmpty(map.get("endTime"))){
              startTime = map.get("startTime").toString();
-             endTime = map.get("endTime").toString();
+//             endTime = map.get("endTime").toString();
+             endTime = DateUtils.getDateOfDay(map.get("endTime").toString(), 1, DateUtils.yyyy_MM_dd_EN);
 
         }
-        if (!ObjectUtils.isEmpty(number1)){
+        if (!number1.equals("0")){
             String s = "-"+number1;
             //������������������
             endTime = DateUtils.getCurDateTime();
@@ -393,13 +395,13 @@
             endTime = map.get("endTime").toString();
 
         }
-        if (!ObjectUtils.isEmpty(number1)){
+        if (Integer.parseInt(number1.toString())>0){
             String s = "-"+number1;
             //������������������
             endTime = DateUtils.getCurDateTime();
             startTime = DateUtils.getDateStringOfMon(Integer.parseInt(s), DateUtils.yyyy_MM_dd_HH_mm_ss_EN);
-
         }
+
         wrapper.between("escalation_time",startTime,endTime);
         wrapper.eq("is_del",0);
         wrapper.eq("is_invalid",0);
@@ -407,6 +409,15 @@
         if (ObjectUtils.isEmpty(allocations)){
             return null;
         }
+        int totals=0;
+        int sum1=0;
+        int sum2=0;
+        int sum3=0;
+        int sum4=0;
+        int deductions=0;
+        int score=0;
+        int sum5=0;
+
         //������������������������
         Map<Integer, List<Allocation>> unitMap = allocations.stream().collect(Collectors.groupingBy(o -> o.getUnitId()));
         Set<Integer> unitList = unitMap.keySet();
@@ -422,6 +433,15 @@
             //������
             int deduction=0;
             int number=0;
+            Map<Integer, List<Allocation>> collect = allocations1.stream().collect(Collectors.groupingBy(o -> o.getState()));
+            //������
+            List<Allocation> allocations2 = collect.get(20);
+            //������
+            List<Allocation> allocations3 = collect.get(30);
+            //������
+            List<Allocation> allocations4 = collect.get(40);
+            //������
+            List<Allocation> allocations5 = collect.get(50);
             for (Allocation allocation : allocations1) {
                 String state = allocation.getState()+"";
                 if (state.equals("40")||state.equals("50")){
@@ -436,16 +456,44 @@
             int total = allocations1.size();
             String rate = (number * 100 /total)+"%";
 
+            int i1 = ObjectUtils.isEmpty(allocations2) ? 0 : allocations2.size();
+            int i2 = ObjectUtils.isEmpty(allocations3) ? 0 : allocations3.size();
+            int i3 = ObjectUtils.isEmpty(allocations4) ? 0 : allocations4.size();
+            int i4 = ObjectUtils.isEmpty(allocations5) ? 0 : allocations5.size();
             map1.put("������������",areaByCode.getAreaName());
             map1.put("���������",total);
-            map1.put("���������",number);
-            map1.put("������������",total-number);
+            map1.put("������",i1);
+            map1.put("������",i2);
+            map1.put("������",i3);
+            map1.put("������",i4);
+//            map1.put("���������",number);
+//            map1.put("������������",total-number);
             map1.put("���������",rate);
             map1.put("������",deduction);
             map1.put("������",marks);
             map1.put("���������",marks+deduction);
             rsMap.add(map1);
+            //������
+            totals = totals + total;
+            sum1 = sum1 + i1;
+            sum2 = sum2 + i2;
+            sum3 = sum3 + i3;
+            sum4 = sum4 + i4;
+            deductions = deductions + deduction;
+            score = score + marks;
+            sum5 = sum5 + marks+deduction;
         }
+        HashMap<String, Object> map1 = new HashMap<>();
+        map1.put("������������","������");
+        map1.put("���������",totals);
+        map1.put("������",sum1);
+        map1.put("������",sum2);
+        map1.put("������",sum3);
+        map1.put("������",sum4);
+        map1.put("������",deductions);
+        map1.put("������",score);
+        map1.put("���������",sum5);
+        rsMap.add(map1);
         return rsMap;
     }
 
@@ -966,16 +1014,19 @@
 
     @Override
     public Integer unitAreaCode() {
+        // 1 ��������� 0������ 2 ������������
         QxUser user = UserHelper.getCurrentUser();
         List<Integer> userList = responsibilityUnitMapper.selectCodeList(SysDictTypeEnum.SYS_JBD.getValue(),user.getUserId());
         if(CollectionUtils.isNotEmpty(userList)){
             return 1;
         }
         if(Objects.nonNull(user.getUnitId())&&user.getUnitId()!=0) {
-            String code = responsibilityUnitMapper.selectAreaCode(user.getUnitId());
-            if (code.length() > 6) {
+            List<ResponsibilityUnitExt> codeList = responsibilityUnitMapper.selectResponsibilityUnitList(user.getUnitId());
+            if ( codeList.get(0).getAreaCode().length() > 6) {
                 return 0;
-            } else {
+            } else if(codeList.get(0).getAreaCode().length() == 6 && codeList.get(0).getParentCode().equals("320900")) {
+                return 0;
+            }else {
                 return 2;
             }
         }

--
Gitblit v1.8.0