Browse Source

新增外包审核员订单合同查看权限

anderx 3 years ago
parent
commit
563910fa59
1 changed files with 16 additions and 10 deletions
  1. 16 10
      src/main/java/com/goafanti/ambSystem/service/Impl/AmbServiceImpl.java

+ 16 - 10
src/main/java/com/goafanti/ambSystem/service/Impl/AmbServiceImpl.java

@@ -35,7 +35,7 @@ public class AmbServiceImpl extends BaseMybatisDao<AmbSystemMapper> implements A
         in.setCreateBy(TokenManager.getAdminId());
         in.setCreateTime(new Date());
         ambSystemMapper.insertSelective(in);
-        pushAdminAmbRole(in);
+        pushAdminAmbRole(in,null);
         return  1;
     }
 
@@ -62,7 +62,7 @@ public class AmbServiceImpl extends BaseMybatisDao<AmbSystemMapper> implements A
         in.setUpdateBy(TokenManager.getAdminId());
         in.setUpdateTime(new Date());
         ambSystemMapper.updateByPrimaryKeySelective(in);
-        if (!in.getLeader().equals(use.getLeader()))pushAdminAmbRole(in);
+        if (!in.getLeader().equals(use.getLeader()))pushAdminAmbRole(in,use);
         return 1;
     }
 
@@ -70,27 +70,33 @@ public class AmbServiceImpl extends BaseMybatisDao<AmbSystemMapper> implements A
      * 设置巴主巴角色
      * @param in
      */
-    private void pushAdminAmbRole(InputAmb in) {
+    private void pushAdminAmbRole(InputAmb in,AmbSystem use) {
         //如果是修改,处理原负责人
         if (in.getId()!=null){
-            AmbSystem use = ambSystemMapper.selectByPrimaryKey(in.getId());
+
             if (in.getLeader()!=null){
-                updateAmbRole(use.getLeader());
+                updateAmbRole(use.getLeader(),0);
             }
         }
-        updateAmbRole(in.getLeader());
-
+        updateAmbRole(in.getLeader(),1);
     }
 
-    private void updateAmbRole(String  leader) {
+    /**
+     *
+     * @param leader
+     * @param type 0去掉巴主  1成为巴主
+     */
+    private void updateAmbRole(String  leader,Integer type) {
         StringBuffer str=new StringBuffer();
         Admin admin =new Admin();
         List<AmbSystem> list=selectByLeader(leader);
         for (AmbSystem ambSystem : list) {
             str.append(ambSystem.getLvl()).append(",");
         }
-        if (admin.getAmbRole().contains("7")){
-            str.append("7").append(",");
+        if (type==1){
+            if (admin.getAmbRole()==null||admin.getAmbRole().contains("7")){
+                str.append("7").append(",");
+            }
         }
         if (StringUtils.isNotBlank(str)){
             Admin a =new Admin();