From 6091a9cac0ef3236bd05137a5fae9a9cf1913ed4 Mon Sep 17 00:00:00 2001 From: wuyouming666 <2265557248@qq.com> Date: 星期一, 29 四月 2024 16:03:21 +0800 Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/HangZhouMes --- hangzhoumesParent/common/springsecurity/src/main/java/com/mes/menu/service/impl/SysMenuServiceImpl.java | 91 +++------------------------------------------ 1 files changed, 6 insertions(+), 85 deletions(-) diff --git a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/menu/service/impl/SysMenuServiceImpl.java b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/menu/service/impl/SysMenuServiceImpl.java index b4d0fc6..8527a36 100644 --- a/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/menu/service/impl/SysMenuServiceImpl.java +++ b/hangzhoumesParent/common/springsecurity/src/main/java/com/mes/menu/service/impl/SysMenuServiceImpl.java @@ -1,28 +1,14 @@ package com.mes.menu.service.impl; -import cn.hutool.core.map.MapUtil; import cn.hutool.json.JSONUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.github.yulichang.wrapper.MPJLambdaWrapper; -import com.mes.common.utils.UserInfoUtils; -import com.mes.entity.request.GeneralRequest; import com.mes.menu.entity.SysMenu; import com.mes.menu.mapper.SysMenuMapper; import com.mes.menu.service.SysMenuService; -import com.mes.role.entity.SysRoleMenu; -import com.mes.role.service.SysRoleMenuService; -import com.mes.userinfo.entity.SysUser; -import com.mes.userinfo.entity.SysUserRole; -import com.mes.userinfo.mapper.SysUserRoleMapper; -import com.mes.userinfo.service.SysUserService; import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; -import java.util.Map; import java.util.stream.Collectors; /** @@ -37,78 +23,10 @@ @Slf4j public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> implements SysMenuService { - @Autowired - SysUserService sysUserService; - - @Autowired - SysUserRoleMapper sysUserRoleMapper; - - @Autowired - SysRoleMenuService sysRoleMenuService; - @Override - public SysMenu updateMenu(SysMenu menu) { - baseMapper.updateById(menu); - // 娓呴櫎鎵�鏈変笌璇ヨ彍鍗曠浉鍏崇殑鏉冮檺缂撳瓨 - sysUserService.clearUserAuthorityInfoByMenuId(menu.getId()); - return menu; - } - - @Override - public List<SysMenu> getMenuTree(GeneralRequest request) { - //todo:闇�瑕佸厛鑾峰彇鐢ㄦ埛鐨勮鑹诧紝瑙掕壊涓嬬殑鑿滃崟鏉冮檺锛屾嬁鍒拌彍鍗昳d鑾峰彇鎵�鏈夎彍鍗� - SysUser user = UserInfoUtils.get(); - MPJLambdaWrapper<SysUserRole> wrapper = new MPJLambdaWrapper<>(); - - wrapper.selectAll(SysMenu.class).distinct() - .leftJoin(SysUser.class, SysUser::getId, SysUserRole::getUserId) - .leftJoin(SysRoleMenu.class, SysRoleMenu::getRoleId, SysUserRole::getRoleId) - .leftJoin(SysMenu.class, SysMenu::getId, SysRoleMenu::getMenuId) - .eq(SysUser::getId, user.getId()) - .like(StringUtils.isNotBlank(request.getKey()), SysMenu::getMenuName, request.getKey()); - - List<SysMenu> menuList = sysUserRoleMapper.selectJoinList(SysMenu.class, wrapper); + public List<SysMenu> getMenuTree() { + List<SysMenu> menuList = this.baseMapper.selectList(null); return create(menuList); - } - - @Override - public List<String> getAuthorityInfo() { - SysUser user = UserInfoUtils.get(); - log.info("鑾峰彇鐢ㄦ埛淇℃伅锛岀敤鎴峰悕涓簕}", user); - // 鑾峰彇鏉冮檺淇℃伅 - // ROLE_admin,ROLE_normal,sys:user:list,.... - return sysUserService.getUserAuthorityInfo(user.getId()); - } - - @Override - public Map<Object, Object> nav() { - List<SysMenu> menuTree = getMenuTree(new GeneralRequest()); - List<String> authorityInfo = getAuthorityInfo(); - return MapUtil.builder().put("authoritys", authorityInfo) - .put("tree", menuTree).map(); - } - - @Override - public String deleteMenu(Long menuId) { - int count = this.count(new LambdaQueryWrapper<SysMenu>().eq(SysMenu::getParentId, menuId)); - if (count > 0) { - return "鏃犳硶鍒犻櫎,璇峰厛鍒犻櫎瀛愯彍鍗�"; - } - - // 娓呴櫎鎵�鏈変笌璇ヨ彍鍗曠浉鍏崇殑鏉冮檺缂撳瓨 - sysUserService.clearUserAuthorityInfoByMenuId(menuId); - - this.removeById(menuId); - - // 鍚屾鍒犻櫎涓棿鍏宠仈琛� - sysRoleMenuService.remove(new LambdaQueryWrapper<SysRoleMenu>().eq(SysRoleMenu::getMenuId, menuId)); - return "鍒犻櫎鎴愬姛"; - } - - @Override - public String batchDeleteMenu(List<Long> menuIds) { - menuIds.stream().forEach(e -> deleteMenu(e)); - return "鎵归噺鍒犻櫎鎴愬姛"; } @@ -138,7 +56,10 @@ private List<SysMenu> getChildren(SysMenu menu, List<SysMenu> menus) { List<SysMenu> res = menus.stream() .filter(item -> item.getParentId().equals(menu.getId())) - .collect(Collectors.toList()); + .map(item -> { + item.setChildren(getChildren(item, menus)); + return item; + }).collect(Collectors.toList()); log.info("鑿滃崟鏍�:{}", JSONUtil.toJsonStr(res)); return res; } -- Gitblit v1.8.0