From b78564935a4e1005403e82a0e8649c562ab70ba7 Mon Sep 17 00:00:00 2001
From: Junjie <540245094@qq.com>
Date: 星期五, 06 十二月 2024 15:34:42 +0800
Subject: [PATCH] #

---
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/system/controller/HostController.java |  149 +++++++++++++++++++++++++++++++++----------------
 1 files changed, 99 insertions(+), 50 deletions(-)

diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/system/controller/HostController.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/system/controller/HostController.java
index 865fde5..2223a0c 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/system/controller/HostController.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/system/controller/HostController.java
@@ -5,6 +5,7 @@
 import com.zy.asrs.framework.common.Cools;
 import com.zy.asrs.framework.common.R;
 import com.zy.asrs.framework.exception.CoolException;
+import com.zy.asrs.wms.common.annotation.CacheData;
 import com.zy.asrs.wms.common.annotation.OperationLog;
 import com.zy.asrs.wms.common.domain.BaseParam;
 import com.zy.asrs.wms.common.domain.KeyValVo;
@@ -39,6 +40,7 @@
 
     @PreAuthorize("hasAuthority('system:host:list')")
     @PostMapping("/host/page")
+    @CacheData(tableName = {"sys_host"})
     public R page(@RequestBody Map<String, Object> map) {
         BaseParam baseParam = buildParam(map, BaseParam.class);
         PageParam<Host, BaseParam> pageParam = new PageParam<>(baseParam, Host.class);
@@ -47,12 +49,14 @@
 
     @PreAuthorize("hasAuthority('system:host:list')")
     @PostMapping("/host/list")
+    @CacheData(tableName = {"sys_host"})
     public R list(@RequestBody Map<String, Object> map) {
         return R.ok().add(hostService.list());
     }
 
     @PreAuthorize("hasAuthority('system:host:list')")
     @GetMapping("/host/{id}")
+    @CacheData(tableName = {"sys_host"})
     public R get(@PathVariable("id") Long id) {
         return R.ok().add(hostService.getById(id));
     }
@@ -68,59 +72,112 @@
             return R.error("娣诲姞澶辫触");
         }
 
-        //鍒涘缓绯荤粺榛樿鑿滃崟
-        Menu menu = new Menu();
-        menu.setName("绯荤粺绠$悊");
-        menu.setParentId(0L);
-        menu.setRoute("/system");
-        menu.setType(0);
-        menu.setIcon("UserOutlined");
-        menu.setSort(1);
-        menu.setLanguageId("system.system");
-        menu.setHostId(host.getId());
-        boolean save = menuService.save(menu);
-        if (!save) {
-            throw new CoolException("娣诲姞澶辫触");
-        }
-        List<Menu> menuList = menuService.selectByPathName("绯荤粺绠$悊", 0);
-        for (Menu menu1 : menuList) {
-            menu1.setId(null);
-            menu1.setHostId(host.getId());
-            menu1.setParentId(menu.getId());
-            boolean save1 = menuService.save(menu1);
+        List<Menu> parentMenus = menuService.selectByParentId(0L, 0, 1L);
+        for (Menu parentMenu : parentMenus) {
+            List<Menu> menuList = menuService.selectByParentId(parentMenu.getId(), 0, parentMenu.getHostId());
+
+            parentMenu.setId(null);
+            parentMenu.setHostId(host.getId());
+            boolean save1 = menuService.save(parentMenu);
             if (!save1) {
                 throw new CoolException("娣诲姞澶辫触");
             }
 
-            List<Menu> menuList2 = menuService.selectByPathName(menu1.getName(), 1);
-            for (Menu menu2 : menuList2) {
-                menu2.setId(null);
-                menu2.setHostId(host.getId());
-                menu2.setParentId(menu1.getId());
-                boolean save2 = menuService.save(menu2);
+            for (Menu menu1 : menuList) {
+                List<Menu> menuList2 = menuService.selectByParentId(menu1.getId(), 1, menu1.getHostId());
+
+                menu1.setId(null);
+                menu1.setHostId(host.getId());
+                menu1.setParentId(parentMenu.getId());
+                boolean save2 = menuService.save(menu1);
                 if (!save2) {
                     throw new CoolException("娣诲姞澶辫触");
                 }
-            }
-        }
 
-        //鍒涘缓榛樿鏉冮檺
-        for (Menu menu1 : menuList) {
+                for (Menu menu2 : menuList2) {
+                    menu2.setId(null);
+                    menu2.setHostId(host.getId());
+                    menu2.setParentId(menu1.getId());
+                    boolean save3 = menuService.save(menu2);
+                    if (!save3) {
+                        throw new CoolException("娣诲姞澶辫触");
+                    }
+                }
+            }
+
+            //鍒涘缓榛樿鏉冮檺
+            for (Menu menu1 : menuList) {
+                RoleMenu roleMenu = new RoleMenu();
+                roleMenu.setRoleId(1L);
+                roleMenu.setMenuId(menu1.getId());
+                boolean save4 = roleMenuService.save(roleMenu);
+                if (!save4) {
+                    throw new CoolException("娣诲姞澶辫触");
+                }
+            }
             RoleMenu roleMenu = new RoleMenu();
             roleMenu.setRoleId(1L);
-            roleMenu.setMenuId(menu1.getId());
-            boolean save1 = roleMenuService.save(roleMenu);
-            if (!save1) {
+            roleMenu.setMenuId(parentMenu.getId());
+            boolean save5 = roleMenuService.save(roleMenu);
+            if (!save5) {
                 throw new CoolException("娣诲姞澶辫触");
             }
+
         }
-        RoleMenu roleMenu = new RoleMenu();
-        roleMenu.setRoleId(1L);
-        roleMenu.setMenuId(menu.getId());
-        boolean save1 = roleMenuService.save(roleMenu);
-        if (!save1) {
-            throw new CoolException("娣诲姞澶辫触");
-        }
+
+//        //鍒涘缓绯荤粺榛樿鑿滃崟
+//        Menu menu = new Menu();
+//        menu.setName("绯荤粺绠$悊");
+//        menu.setParentId(0L);
+//        menu.setRoute("/system");
+//        menu.setType(0);
+//        menu.setIcon("UserOutlined");
+//        menu.setSort(1);
+//        menu.setLanguageId("system.system");
+//        menu.setHostId(host.getId());
+//        boolean save = menuService.save(menu);
+//        if (!save) {
+//            throw new CoolException("娣诲姞澶辫触");
+//        }
+//        List<Menu> menuList = menuService.selectByPathName("绯荤粺绠$悊", 0);
+//        for (Menu menu1 : menuList) {
+//            menu1.setId(null);
+//            menu1.setHostId(host.getId());
+//            menu1.setParentId(menu.getId());
+//            boolean save1 = menuService.save(menu1);
+//            if (!save1) {
+//                throw new CoolException("娣诲姞澶辫触");
+//            }
+//
+//            List<Menu> menuList2 = menuService.selectByPathName(menu1.getName(), 1);
+//            for (Menu menu2 : menuList2) {
+//                menu2.setId(null);
+//                menu2.setHostId(host.getId());
+//                menu2.setParentId(menu1.getId());
+//                boolean save2 = menuService.save(menu2);
+//                if (!save2) {
+//                    throw new CoolException("娣诲姞澶辫触");
+//                }
+//            }
+//        }
+//
+//        //鍒涘缓榛樿鏉冮檺
+//        for (Menu menu1 : menuList) {
+//            RoleMenu roleMenu = new RoleMenu();
+//            roleMenu.setRoleId(1L);
+//            roleMenu.setMenuId(menu1.getId());
+//            boolean save1 = roleMenuService.save(roleMenu);
+//            if (!save1) {
+//                throw new CoolException("娣诲姞澶辫触");
+//            }
+//        }
+//        RoleMenu roleMenu = new RoleMenu();
+//        roleMenu.setRoleId(1L);
+//        roleMenu.setMenuId(menu.getId());
+//        boolean save1 = roleMenuService.save(roleMenu);
+//        if (!save1) {
+//            throw new CoolException("娣诲姞澶辫触");
+//        }
 
         return R.ok("娣诲姞鎴愬姛");
     }
@@ -153,16 +210,8 @@
             }
 
             if (!menuIds.isEmpty()) {
-                boolean result = roleMenuService.remove(new LambdaQueryWrapper<RoleMenu>().in(RoleMenu::getMenuId, menuIds));
-                if (!result) {
-                    throw new CoolException("鍒犻櫎澶辫触");
-                }
-
-                boolean result1 = menuService.removeByHostId(host.getId());
-                if (!result1) {
-                    throw new CoolException("鍒犻櫎澶辫触");
-                }
-
+                roleMenuService.remove(new LambdaQueryWrapper<RoleMenu>().in(RoleMenu::getMenuId, menuIds));
+                menuService.removeByHostId(host.getId());
                 roleService.removeByHostId(host.getId());
                 userService.removeByHostId(host.getId());
             }

--
Gitblit v1.9.1