【7.0.3】antd菜单增加根节点

pull/11/MERGE
fengshuonan 2021-04-16 17:32:53 +08:00
parent 5354ecf64d
commit 655ced58e7
2 changed files with 23 additions and 1 deletions

View File

@ -32,6 +32,7 @@ import cn.stylefeng.roses.kernel.system.api.pojo.menu.antd.AntdMenuSelectTreeNod
import cn.stylefeng.roses.kernel.system.api.pojo.menu.antd.AntdSysMenuDTO; import cn.stylefeng.roses.kernel.system.api.pojo.menu.antd.AntdSysMenuDTO;
import cn.stylefeng.roses.kernel.system.modular.menu.entity.SysMenu; import cn.stylefeng.roses.kernel.system.modular.menu.entity.SysMenu;
import java.math.BigDecimal;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@ -74,6 +75,22 @@ public class AntdMenusFactory {
return menuTreeNode; return menuTreeNode;
} }
/**
*
*
* @author fengshuonan
* @date 2021/4/16 15:52
*/
public static AntdMenuSelectTreeNode createRootNode() {
AntdMenuSelectTreeNode antdMenuSelectTreeNode = new AntdMenuSelectTreeNode();
antdMenuSelectTreeNode.setId(-1L);
antdMenuSelectTreeNode.setParentId(-2L);
antdMenuSelectTreeNode.setTitle("根节点");
antdMenuSelectTreeNode.setValue(String.valueOf(antdMenuSelectTreeNode.getId()));
antdMenuSelectTreeNode.setWeight(new BigDecimal(-1));
return antdMenuSelectTreeNode;
}
/** /**
* *
* *

View File

@ -243,13 +243,18 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
public List<AntdMenuSelectTreeNode> tree(SysMenuRequest sysMenuRequest) { public List<AntdMenuSelectTreeNode> tree(SysMenuRequest sysMenuRequest) {
List<AntdMenuSelectTreeNode> menuTreeNodeList = CollectionUtil.newArrayList(); List<AntdMenuSelectTreeNode> menuTreeNodeList = CollectionUtil.newArrayList();
// 添加根节点
AntdMenuSelectTreeNode rootNode = AntdMenusFactory.createRootNode();
menuTreeNodeList.add(rootNode);
LambdaQueryWrapper<SysMenu> wrapper = createWrapper(sysMenuRequest); LambdaQueryWrapper<SysMenu> wrapper = createWrapper(sysMenuRequest);
this.list(wrapper).forEach(sysMenu -> { this.list(wrapper).forEach(sysMenu -> {
AntdMenuSelectTreeNode menuTreeNode = AntdMenusFactory.parseMenuBaseTreeNode(sysMenu); AntdMenuSelectTreeNode menuTreeNode = AntdMenusFactory.parseMenuBaseTreeNode(sysMenu);
menuTreeNodeList.add(menuTreeNode); menuTreeNodeList.add(menuTreeNode);
}); });
return new DefaultTreeBuildFactory<AntdMenuSelectTreeNode>().doTreeBuild(menuTreeNodeList); // -2是根节点的上级
return new DefaultTreeBuildFactory<AntdMenuSelectTreeNode>("-2").doTreeBuild(menuTreeNodeList);
} }
@Override @Override