update 优化 菜单勾选栏改为左菜单右按钮结构 增加禁用与隐藏图标

This commit is contained in:
疯狂的狮子Li
2026-04-17 12:08:50 +08:00
parent 2aefff69c8
commit 5025afb032

View File

@@ -22,8 +22,6 @@ import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.List; import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/** /**
* 菜单信息 * 菜单信息
@@ -103,12 +101,8 @@ public class SysMenuController extends BaseController {
@GetMapping(value = "/roleMenuTreeselect/{roleId}") @GetMapping(value = "/roleMenuTreeselect/{roleId}")
public R<MenuTreeSelectVo> roleMenuTreeselect(@PathVariable("roleId") Long roleId) { public R<MenuTreeSelectVo> roleMenuTreeselect(@PathVariable("roleId") Long roleId) {
List<SysMenuVo> menus = menuService.selectMenuList(LoginHelper.getUserId()); List<SysMenuVo> menus = menuService.selectMenuList(LoginHelper.getUserId());
// 按钮权限单独分组返回,前端用于在对应菜单节点侧展示按钮行。
Map<Long, List<SysMenuVo>> buttonMenus = menus.stream().filter(m -> SystemConstants.TYPE_BUTTON.equals(m.getMenuType())).collect(Collectors.groupingBy(SysMenuVo::getParentId));
// 菜单树返回完整节点(包含按钮),前端可隐藏按钮节点并复用树组件级联勾选能力。
MenuTreeSelectVo selectVo = new MenuTreeSelectVo( MenuTreeSelectVo selectVo = new MenuTreeSelectVo(
menuService.selectMenuListByRoleId(roleId), menuService.selectMenuListByRoleId(roleId),
buttonMenus,
menuService.buildMenuTreeSelect(menus)); menuService.buildMenuTreeSelect(menus));
return R.ok(selectVo); return R.ok(selectVo);
} }
@@ -185,7 +179,7 @@ public class SysMenuController extends BaseController {
* @param checkedKeys 选中菜单列表 * @param checkedKeys 选中菜单列表
* @param menus 菜单下拉树结构列表 * @param menus 菜单下拉树结构列表
*/ */
public record MenuTreeSelectVo(List<Long> checkedKeys, Map<Long, List<SysMenuVo>> buttonsMap, List<Tree<Long>> menus) { public record MenuTreeSelectVo(List<Long> checkedKeys, List<Tree<Long>> menus) {
} }
/** /**