From 5c1d58556e9cd4c7603b5e16dc1640f61623af0b Mon Sep 17 00:00:00 2001
From: cjl <276999030@qq.com>
Date: Wed, 08 Nov 2023 11:47:41 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/cjl' into dev

---
 screen-api/src/main/java/com/moral/api/service/impl/AllocationServiceImpl.java |   40 +++++++++++++++++++++++++---------------
 1 files changed, 25 insertions(+), 15 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 ff45f61..8faee43 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
@@ -845,30 +845,40 @@
     }
 
     @Override
-    public boolean authority(String allocationNum,Integer userId) {
+    public Integer authority(String allocationNum,Integer userId) {
         //������������������
         QxUser user = UserHelper.getCurrentUser();
+        //���������������������
+        LambdaQueryWrapper<Allocation> wrapper = new LambdaQueryWrapper<>();
+        wrapper.eq(Allocation::getAllocationNum,allocationNum);
+        wrapper.eq(Allocation::getIsDel,0);
+        wrapper.eq(Allocation::getIsInvalid,0);
+        Allocation allocation = allocationMapper.selectOne(wrapper);
+
         List<Integer> userList = responsibilityUnitMapper.selectCodeList(SysDictTypeEnum.SYS_JBD.getValue(),user.getUserId());
         if(CollectionUtils.isNotEmpty(userList)){
-            return true;
+            //���������������������
+            return 1;
         }
         if(Objects.nonNull(user.getUnitId())&&user.getUnitId()!=0){
-            LambdaQueryWrapper<Allocation> wrapper = new LambdaQueryWrapper<>();
-            wrapper.eq(Allocation::getAllocationNum,allocationNum);
-            wrapper.eq(Allocation::getIsDel,0);
-            wrapper.eq(Allocation::getIsInvalid,0);
-            Allocation allocation = allocationMapper.selectOne(wrapper);
-            if (allocation.getUnitId().equals(user.getUnitId())){
-                return true;
-            }
             String code = responsibilityUnitMapper.selectAreaCode(user.getUnitId());
-            if (code.length() > 6) {
-                return false;
-            } else {
-                return true;
+            if (code.length() > 6 && allocation.getUnitId().equals(user.getUnitId())) {
+                if (allocation.getState().equals(AllocationApproveEnum.UNDER_RECTIFICATION.value)){
+                    return 1;
+                }else{
+                    return 2;
+                }
+
+            } else if (code.length() <= 6){
+                if (allocation.getState().equals(AllocationApproveEnum.IN_APPROVAL.value)){
+                    return 1;
+                }else{
+                    return 2;
+                }
             }
         }
-        return false;
+        //���������������������
+        return 3;
     }
 
     @Override

--
Gitblit v1.8.0