From ffe9d36074938e837f46afcd30b99788a7fbb4a0 Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Fri, 04 Mar 2022 16:02:40 +0800
Subject: [PATCH] 烟气流速,流量校准

---
 screen-manage/src/main/java/com/moral/api/service/impl/ManageRoleMenuServiceImpl.java |   42 ++++++++++++++++++++++++++++++++++--------
 1 files changed, 34 insertions(+), 8 deletions(-)

diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/ManageRoleMenuServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/ManageRoleMenuServiceImpl.java
index b09e4b8..ffc3208 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/ManageRoleMenuServiceImpl.java
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/ManageRoleMenuServiceImpl.java
@@ -13,17 +13,17 @@
 import com.moral.api.util.LogUtils;
 import com.moral.constant.Constants;
 import com.moral.constant.ResponseCodeEnum;
+import com.moral.util.TokenUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.ObjectUtils;
 import org.springframework.web.context.request.RequestContextHolder;
 import org.springframework.web.context.request.ServletRequestAttributes;
 
 import javax.servlet.http.HttpServletRequest;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -45,12 +45,19 @@
     @Autowired(required = false)
     private ManageRoleMapper manageRoleMapper;
 
-    @Autowired
-    LogUtils logUtils;
 
     @Override
     @Transactional
-    public Map<String, Object> updateRoleMenu(List list, int id) {
+    public Map<String, Object> updateRoleMenu(List menuList, int id) {
+        //���������������
+        List supplementList = new ArrayList();
+        supplementList.addAll(menuList);
+        for (int i=0;i<supplementList.size();i++) {
+            supplementList.addAll(supplementParentMenus(Integer.parseInt(supplementList.get(i).toString())));
+        }
+        LinkedHashSet<Object> hashSet = new LinkedHashSet<>(supplementList);
+        ArrayList<Object> list = new ArrayList<>(hashSet);
+        //return null;
         Map<String,Object> resultMap = new HashMap<>();
         List<ManageMenu> manageMenusOld = manageMenuMapper.getManageMenuByRoleId(id);
         QueryWrapper<ManageRoleMenu> wrapper = new QueryWrapper();
@@ -117,6 +124,8 @@
                 manageRoleMenuMapper.insertBatch(mapList);
             }
         }
+        //������token
+        TokenUtils.destoryToken(id);
         List<ManageMenu> manageMenusNew = manageMenuMapper.getManageMenuByRoleId(id);
         List manageMenuOldList = new ArrayList();
         List manageMenuNewList = new ArrayList();
@@ -138,9 +147,26 @@
             manageMenuNewList.add("���");
         }
         content = content+"������:"+manageMenuOldList+"->"+manageMenuNewList+";";
-        logUtils.saveOperationForManage(request,content,Constants.UPDATE_OPERATE_TYPE);
+        LogUtils.saveOperationForManage(request,content,Constants.UPDATE_OPERATE_TYPE);
         resultMap.put("code",ResponseCodeEnum.SUCCESS.getCode());
         resultMap.put("msg",ResponseCodeEnum.SUCCESS.getMsg());
         return resultMap;
     }
+
+    /**
+     * @Description: ���������������
+     * @Param: [list, menuId]list���menuId������
+     * @return: void
+     * @Author: ���������
+     * @Date: 2021/4/7
+     */
+    private List supplementParentMenus(int menuId) {
+        List list = new ArrayList();
+        ManageMenu manageMenu = manageMenuMapper.getManageMenuById(menuId);
+        if (manageMenu.getParentId()!=0){
+            list.add(manageMenu.getParentId());
+            list.addAll(supplementParentMenus(manageMenu.getParentId()));
+        }
+        return list;
+    }
 }

--
Gitblit v1.8.0