From 165f11c315a0283c6cf32572dddee5c81351cad8 Mon Sep 17 00:00:00 2001
From: cjl <276999030@qq.com>
Date: Fri, 27 Oct 2023 13:01:27 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/cjl' into dev

---
 screen-api/src/main/java/com/moral/api/service/impl/AllocationServiceImpl.java |   70 +++++++++++++++++++++++++++++++++++
 1 files changed, 70 insertions(+), 0 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 1dbffad..4d0afd5 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
@@ -20,7 +20,10 @@
 import com.moral.api.pojo.ext.allocation.AllocationPageExt;
 import com.moral.api.pojo.query.allocation.*;
 import com.moral.api.pojo.query.allocationextension.AllocationExtensionAddCond;
+import com.moral.api.pojo.query.app.AppAllocationFileCond;
+import com.moral.api.pojo.query.app.AppAllocationPageCond;
 import com.moral.api.pojo.vo.allocation.AllocationFindVo;
+import com.moral.api.pojo.vo.app.AppAllocationFindVo;
 import com.moral.api.pojo.vo.user.QxUser;
 import com.moral.api.service.*;
 import com.moral.constant.Constants;
@@ -687,6 +690,73 @@
         return allocationFindVos;
     }
 
+    @Override
+    public Page<AllocationPageExt> pageApp(AppAllocationPageCond allocationPageCond) {
+        List<Integer> listUnit = unitResult();
+        Integer integer = unitAreaCode();
+        allocationPageCond.setUnitList(listUnit);
+        allocationPageCond.setStateList(stateAllocationList(allocationPageCond.getState(),integer));
+        Page<AllocationPageExt> extAppPage = this.baseMapper.extAppPage(allocationPageCond.getPage().convertPage(),allocationPageCond);
+        extAppPage.getRecords().forEach(it->{
+            Integer state = it.getState();
+            if (state.equals(AllocationApproveEnum.DRAFT.value)||state.equals(AllocationApproveEnum.UNDER_RECTIFICATION.value)){
+                if(integer==0||integer==1){
+                    it.setStateName(AppAllocationStateEnum.TO_BE_PROCESSED.name);
+                }else if(integer==2){
+                    it.setStateName(AppAllocationStateEnum.TO_BE_COMPLETED.name);
+                }
+            }else if(state.equals(AllocationApproveEnum.IN_APPROVAL.value)){
+                if(integer==2||integer==1){
+                    it.setStateName(AppAllocationStateEnum.TO_BE_PROCESSED.name);
+                }else if(integer==0){
+                    it.setStateName(AppAllocationStateEnum.TO_BE_COMPLETED.name);
+                }
+            }else{
+                it.setStateName(AppAllocationStateEnum.COMPLETED.name);
+            }
+        });
+
+        return extAppPage;
+    }
+
+    @Override
+    @Transactional
+    public boolean saveFile(AppAllocationFileCond appAllocationFileCond) {
+        fileTableService.upDateResult(Arrays.asList(appAllocationFileCond.getFile()),appAllocationFileCond.getUserId(), FileTableEnum.APP_ALLOCATION.value);
+        return true;
+    }
+
+    private List<Integer> stateAllocationList(Integer type, Integer integer){
+        List<Integer> integerList = new ArrayList<>();
+        // type 0 ������ 1������ 2��������� 3 ���������
+        if(integer.equals(0)){
+            if(type.equals(1)){
+                integerList.add(AllocationApproveEnum.UNDER_RECTIFICATION.value);
+                integerList.add(AllocationApproveEnum.DRAFT.value);
+            }else if(type.equals(2)){
+                integerList.add(AllocationApproveEnum.IN_APPROVAL.value);
+            }
+        }else if(integer.equals(2)){
+            if(type.equals(1)){
+                integerList.add(AllocationApproveEnum.IN_APPROVAL.value);
+            }else if(type.equals(2)){
+                integerList.add(AllocationApproveEnum.UNDER_RECTIFICATION.value);
+                integerList.add(AllocationApproveEnum.DRAFT.value);
+            }
+        }else if(integer.equals(1)){
+            if(type.equals(1)){
+                integerList.add(AllocationApproveEnum.IN_APPROVAL.value);
+                integerList.add(AllocationApproveEnum.UNDER_RECTIFICATION.value);
+                integerList.add(AllocationApproveEnum.DRAFT.value);
+            }
+        }
+        if(type.equals(3)){
+            integerList.add(AllocationApproveEnum.PASS.value);
+            integerList.add(AllocationApproveEnum.REFUSE.value);
+        }
+        return integerList;
+    }
+
     /**
      * ���������������
      *

--
Gitblit v1.8.0