From 86fb152b505a7ef6a99f20f87a71b3e773ba3b98 Mon Sep 17 00:00:00 2001
From: lizijie <lzjiiie@163.com>
Date: Fri, 16 Apr 2021 11:12:52 +0800
Subject: [PATCH] 通过父菜单查询子菜单

---
 screen-manage/src/main/java/com/moral/api/service/impl/ManageMenuServiceImpl.java |   67 +++++++++++++++++++++++++++++++--
 1 files changed, 62 insertions(+), 5 deletions(-)

diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/ManageMenuServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/ManageMenuServiceImpl.java
index 577e189..e64de85 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/ManageMenuServiceImpl.java
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/ManageMenuServiceImpl.java
@@ -61,7 +61,7 @@
             resultMap.put("code", ResponseCodeEnum.MENU_IS_EXPIRE.getCode());
             resultMap.put("msg", ResponseCodeEnum.MENU_IS_EXPIRE.getMsg());
         } else {
-            //manageMenuMapper.insertOne(manageMenu);
+            manageMenuMapper.insertOne(manageMenu);
             //������������������
             HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
             String content = "������������:"+manageMenu.getName()+";";
@@ -161,8 +161,13 @@
             if (manageMenu.getParentId().equals(0)){
                 manegeMenuMap.put("parent_name","");
             }else {
-                String parent_name = manageMenuMapper.getManageMenuById(manageMenu.getParentId()).getName();
-                manegeMenuMap.put("parent_name",parent_name);
+                ManageMenu parentMenu = manageMenuMapper.getManageMenuById(manageMenu.getParentId());
+                if (ObjectUtils.isEmpty(parentMenu)){
+                    manegeMenuMap.put("parent_name","");
+                }else {
+                    String parent_name = parentMenu.getName();
+                    manegeMenuMap.put("parent_name",parent_name);
+                }
             }
             String createTime = SDF.format(manageMenu.getCreateTime());
             String updateTime = SDF.format(manageMenu.getUpdateTime());
@@ -210,13 +215,65 @@
     }
 
     @Override
-    public List<ManageMenu> getManageMenuByNameFuzzy(Map map) {
+    public List<Map<String,Object>> getManageMenuByNameFuzzy(Map map) {
         Map limitMap = new HashMap();
         limitMap.put("name", map.get("name"));
         limitMap.put("start", (Integer.parseInt(map.get("current").toString()) - 1) * Integer.parseInt(map.get("size").toString()));
         limitMap.put("number", Integer.parseInt(map.get("size").toString()));
         List<ManageMenu> manageMenus = manageMenuMapper.getManageRoleByNameFuzzy(limitMap);
-        return manageMenus;
+        SimpleDateFormat SDF = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        List<Map<String,Object>> resultList = new ArrayList<>();
+        for (ManageMenu manageMenu:manageMenus) {
+            Map manegeMenuMap = JSON.parseObject(JSON.toJSONString(manageMenu));
+            if (manageMenu.getParentId().equals(0)){
+                manegeMenuMap.put("parent_name","");
+            }else {
+                ManageMenu parentMenu = manageMenuMapper.getManageMenuById(manageMenu.getParentId());
+                if (ObjectUtils.isEmpty(parentMenu)){
+                    manegeMenuMap.put("parent_name","");
+                }else {
+                    String parent_name = parentMenu.getName();
+                    manegeMenuMap.put("parent_name",parent_name);
+                }
+            }
+            String createTime = SDF.format(manageMenu.getCreateTime());
+            String updateTime = SDF.format(manageMenu.getUpdateTime());
+            manegeMenuMap.put("createTime",createTime);
+            manegeMenuMap.put("updateTime",updateTime);
+            resultList.add(manegeMenuMap);
+        }
+        return resultList;
+    }
+
+    @Override
+    public List<Map<String, Object>> getManageMenuByParentId(Map map) {
+        Map limitMap = new HashMap();
+        limitMap.put("parent_id", map.get("parent_id"));
+        limitMap.put("start", (Integer.parseInt(map.get("current").toString()) - 1) * Integer.parseInt(map.get("size").toString()));
+        limitMap.put("number", Integer.parseInt(map.get("size").toString()));
+        List<ManageMenu> manageMenus = manageMenuMapper.getManageMenuByCondition(limitMap);
+        SimpleDateFormat SDF = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        List<Map<String,Object>> resultList = new ArrayList<>();
+        for (ManageMenu manageMenu:manageMenus) {
+            Map manegeMenuMap = JSON.parseObject(JSON.toJSONString(manageMenu));
+            if (manageMenu.getParentId().equals(0)){
+                manegeMenuMap.put("parent_name","");
+            }else {
+                ManageMenu parentMenu = manageMenuMapper.getManageMenuById(manageMenu.getParentId());
+                if (ObjectUtils.isEmpty(parentMenu)){
+                    manegeMenuMap.put("parent_name","");
+                }else {
+                    String parent_name = parentMenu.getName();
+                    manegeMenuMap.put("parent_name",parent_name);
+                }
+            }
+            String createTime = SDF.format(manageMenu.getCreateTime());
+            String updateTime = SDF.format(manageMenu.getUpdateTime());
+            manegeMenuMap.put("createTime",createTime);
+            manegeMenuMap.put("updateTime",updateTime);
+            resultList.add(manegeMenuMap);
+        }
+        return resultList;
     }
 
     @Override

--
Gitblit v1.8.0