mirror of https://gitee.com/stylefeng/roses
【7.1.1】【menu】增加菜单叶子节点的标识
parent
6c49b15ac4
commit
0440fbe56b
|
@ -209,6 +209,13 @@ public class SysMenu extends BaseEntity implements AbstractTreeNode<SysMenu> {
|
|||
@ChineseDescription("父级菜单的名称")
|
||||
private String menuParentName;
|
||||
|
||||
/**
|
||||
* 是否是叶子节点菜单
|
||||
*/
|
||||
@TableField(exist = false)
|
||||
@ChineseDescription("是否是叶子节点菜单")
|
||||
private Boolean leafFlag;
|
||||
|
||||
@Override
|
||||
public String getNodeId() {
|
||||
return menuId.toString();
|
||||
|
|
|
@ -91,6 +91,25 @@ public class AntdMenusFactory {
|
|||
return antdMenuSelectTreeNode;
|
||||
}
|
||||
|
||||
/**
|
||||
* 填充叶子节点的标识
|
||||
*
|
||||
* @author fengshuonan
|
||||
* @date 2021/8/8 15:22
|
||||
*/
|
||||
public static void fillLeafFlag(List<SysMenu> sysMenuList) {
|
||||
for (SysMenu sysMenu : sysMenuList) {
|
||||
sysMenu.setLeafFlag(true);
|
||||
|
||||
// 判断这个节点下面有没有节点
|
||||
for (SysMenu tempMenu : sysMenuList) {
|
||||
if (tempMenu.getMenuPids().contains("[" + sysMenu.getMenuId() + "]")) {
|
||||
sysMenu.setLeafFlag(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 模型转化
|
||||
*
|
||||
|
|
|
@ -221,6 +221,9 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
|
|||
|
||||
List<SysMenu> sysMenuList = this.findList(sysMenuRequest);
|
||||
|
||||
// 遍历菜单,设置是否是叶子节点属性
|
||||
AntdMenusFactory.fillLeafFlag(sysMenuList);
|
||||
|
||||
// 将结果集处理成树
|
||||
return new DefaultTreeBuildFactory<SysMenu>().doTreeBuild(sysMenuList);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue