From 32cc13189371ee1e367897a64fbc22f90b53add8 Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Wed, 19 Jun 2024 16:24:26 +0800
Subject: [PATCH] fix:尘负荷排序接口提交

---
 screen-api/src/main/java/com/moral/api/service/impl/AllocationServiceImpl.java |   60 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 55 insertions(+), 5 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 980ad02..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;
@@ -408,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();
@@ -423,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")){
@@ -437,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;
     }
 
@@ -967,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