【7.1.1】【menu】增加菜单叶子节点的标识

pull/22/head
fengshuonan 2021-08-08 21:30:17 +08:00
parent 6c49b15ac4
commit 0440fbe56b
3 changed files with 29 additions and 0 deletions

View File

@ -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();

View File

@ -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);
}
}
}
}
/**
*
*

View File

@ -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);
}