From 35bb808ab141e6a3092031ae7ee29028b833e521 Mon Sep 17 00:00:00 2001 From: lizijie <lzjiiie@163.com> Date: Fri, 09 Apr 2021 15:20:24 +0800 Subject: [PATCH] 修改菜单返回类型,父子关系 --- screen-manage/src/main/java/com/moral/api/service/impl/ManageMenuServiceImpl.java | 29 +++++++++++++++++++++++++++++ 1 files changed, 29 insertions(+), 0 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 75a4dfb..35b3607 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 @@ -115,6 +115,32 @@ } @Override + public List<ManageMenu> getAllMenus() { + List<ManageMenu> allMenus = manageMenuMapper.getAll(); + if(ObjectUtils.isEmpty(allMenus)) + return null; + Map<Integer, ManageMenu> menusMap = new HashMap<>(); + for (ManageMenu menu : allMenus) { + menu.setChildren(new ArrayList<>());//��������� + menusMap.put(menu.getId(), menu); + } + for (ManageMenu menu : allMenus) { + combinationParentChildrenMenus(menusMap, menu); + } + + //������������������������������������parentId������0������������������������ + allMenus.removeIf(new Predicate<ManageMenu>() { + @Override + public boolean test(ManageMenu manageMenu) { + if(manageMenu.getParentId().equals(0)) + return false; + return true; + } + }); + return allMenus; + } + + @Override public List<ManageMenu> getManageMenuByNameFuzzy(Map map) { Map limitMap = new HashMap(); limitMap.put("name", map.get("name")); @@ -127,6 +153,8 @@ @Override public List<ManageMenu> getParentChildrenMenusByRoles(List<ManageRole> roles) { List<ManageMenu> allMenus = manageMenuMapper.getAllMenusByRoles(roles); + if(ObjectUtils.isEmpty(allMenus)) + return null; Map<Integer, ManageMenu> menusMap = new HashMap<>(); for (ManageMenu menu : allMenus) { menu.setChildren(new ArrayList<>());//��������� @@ -135,6 +163,7 @@ for (ManageMenu menu : allMenus) { combinationParentChildrenMenus(menusMap, menu); } + //������������������������������������parentId������0������������������������ allMenus.removeIf(new Predicate<ManageMenu>() { @Override -- Gitblit v1.8.0