mirror of https://gitee.com/stylefeng/roses
【menu】增加获取父级菜单的下拉选择框,增加ztree的节点封装,用ztree不要用lombok
parent
09b397cc4b
commit
f5eb9dfb18
|
@ -0,0 +1,104 @@
|
||||||
|
package cn.stylefeng.roses.kernel.system.pojo.ztree;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* jquery ztree 插件的节点封装
|
||||||
|
*
|
||||||
|
* @author fengshuonan
|
||||||
|
* @date 2021/1/6 21:47
|
||||||
|
*/
|
||||||
|
public class ZTreeNode {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 节点id
|
||||||
|
*/
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 父节点id
|
||||||
|
*/
|
||||||
|
private Long pId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 节点名称
|
||||||
|
*/
|
||||||
|
private String name;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 是否打开节点
|
||||||
|
*/
|
||||||
|
private Boolean open;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 是否被选中
|
||||||
|
*/
|
||||||
|
private Boolean checked;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 节点图标 single or group
|
||||||
|
*/
|
||||||
|
private String iconSkin;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建ztree的父级节点
|
||||||
|
*
|
||||||
|
* @author fengshuonan
|
||||||
|
* @date 2021/1/6 21:47
|
||||||
|
*/
|
||||||
|
public static ZTreeNode createParent() {
|
||||||
|
ZTreeNode zTreeNode = new ZTreeNode();
|
||||||
|
zTreeNode.setChecked(true);
|
||||||
|
zTreeNode.setId(0L);
|
||||||
|
zTreeNode.setName("顶级");
|
||||||
|
zTreeNode.setOpen(true);
|
||||||
|
zTreeNode.setpId(0L);
|
||||||
|
return zTreeNode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setId(Long id) {
|
||||||
|
this.id = id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getpId() {
|
||||||
|
return pId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setpId(Long pId) {
|
||||||
|
this.pId = pId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setName(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Boolean getOpen() {
|
||||||
|
return open;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setOpen(Boolean open) {
|
||||||
|
this.open = open;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Boolean getChecked() {
|
||||||
|
return checked;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setChecked(Boolean checked) {
|
||||||
|
this.checked = checked;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getIconSkin() {
|
||||||
|
return iconSkin;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setIconSkin(String iconSkin) {
|
||||||
|
this.iconSkin = iconSkin;
|
||||||
|
}
|
||||||
|
}
|
|
@ -7,11 +7,13 @@ import cn.stylefeng.roses.kernel.resource.api.annotation.PostResource;
|
||||||
import cn.stylefeng.roses.kernel.rule.pojo.response.ResponseData;
|
import cn.stylefeng.roses.kernel.rule.pojo.response.ResponseData;
|
||||||
import cn.stylefeng.roses.kernel.rule.pojo.response.SuccessResponseData;
|
import cn.stylefeng.roses.kernel.rule.pojo.response.SuccessResponseData;
|
||||||
import cn.stylefeng.roses.kernel.system.pojo.menu.SysMenuRequest;
|
import cn.stylefeng.roses.kernel.system.pojo.menu.SysMenuRequest;
|
||||||
|
import cn.stylefeng.roses.kernel.system.pojo.ztree.ZTreeNode;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 系统菜单控制器
|
* 系统菜单控制器
|
||||||
|
@ -84,6 +86,17 @@ public class SysMenuController {
|
||||||
return new SuccessResponseData(sysMenuService.layuiList(sysMenuRequest));
|
return new SuccessResponseData(sysMenuService.layuiList(sysMenuRequest));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取菜单的树形列表(用于选择上级菜单)(layui版本)
|
||||||
|
*
|
||||||
|
* @author fengshuonan
|
||||||
|
* @date 2021/1/6 17:09
|
||||||
|
*/
|
||||||
|
@GetResource(name = "获取菜单的树形列表(用于选择上级菜单)(layui版本)", path = "/sysMenu/layuiSelectParentMenuTreeList")
|
||||||
|
public List<ZTreeNode> layuiSelectParentMenuTreeList() {
|
||||||
|
return sysMenuService.layuiSelectParentMenuTreeList();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 系统菜单列表,树形结构,用于菜单管理界面的列表展示
|
* 系统菜单列表,树形结构,用于菜单管理界面的列表展示
|
||||||
*
|
*
|
||||||
|
|
|
@ -29,6 +29,7 @@ import cn.stylefeng.roses.kernel.system.pojo.menu.SysMenuRequest;
|
||||||
import cn.stylefeng.roses.kernel.system.pojo.menu.antd.AntdIndexMenuTreeNode;
|
import cn.stylefeng.roses.kernel.system.pojo.menu.antd.AntdIndexMenuTreeNode;
|
||||||
import cn.stylefeng.roses.kernel.system.pojo.menu.layui.LayuiAppIndexMenus;
|
import cn.stylefeng.roses.kernel.system.pojo.menu.layui.LayuiAppIndexMenus;
|
||||||
import cn.stylefeng.roses.kernel.system.pojo.menu.other.MenuSelectTreeNode;
|
import cn.stylefeng.roses.kernel.system.pojo.menu.other.MenuSelectTreeNode;
|
||||||
|
import cn.stylefeng.roses.kernel.system.pojo.ztree.ZTreeNode;
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
@ -86,6 +87,15 @@ public interface SysMenuService extends IService<SysMenu> {
|
||||||
*/
|
*/
|
||||||
List<SysMenu> layuiList(SysMenuRequest sysMenuRequest);
|
List<SysMenu> layuiList(SysMenuRequest sysMenuRequest);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取菜单的树形列表(用于选择上级菜单)(layui版本)
|
||||||
|
*
|
||||||
|
* @return 菜单树
|
||||||
|
* @author fengshuonan
|
||||||
|
* @date 2021/1/6 21:47
|
||||||
|
*/
|
||||||
|
List<ZTreeNode> layuiSelectParentMenuTreeList();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 系统菜单列表,树形结构,用于菜单管理界面的列表展示
|
* 系统菜单列表,树形结构,用于菜单管理界面的列表展示
|
||||||
*
|
*
|
||||||
|
|
|
@ -54,6 +54,7 @@ import cn.stylefeng.roses.kernel.system.pojo.menu.SysMenuRequest;
|
||||||
import cn.stylefeng.roses.kernel.system.pojo.menu.antd.AntdIndexMenuTreeNode;
|
import cn.stylefeng.roses.kernel.system.pojo.menu.antd.AntdIndexMenuTreeNode;
|
||||||
import cn.stylefeng.roses.kernel.system.pojo.menu.layui.LayuiAppIndexMenus;
|
import cn.stylefeng.roses.kernel.system.pojo.menu.layui.LayuiAppIndexMenus;
|
||||||
import cn.stylefeng.roses.kernel.system.pojo.menu.other.MenuSelectTreeNode;
|
import cn.stylefeng.roses.kernel.system.pojo.menu.other.MenuSelectTreeNode;
|
||||||
|
import cn.stylefeng.roses.kernel.system.pojo.ztree.ZTreeNode;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
@ -61,6 +62,7 @@ import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
@ -168,6 +170,24 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<ZTreeNode> layuiSelectParentMenuTreeList() {
|
||||||
|
|
||||||
|
ArrayList<ZTreeNode> zTreeNodes = new ArrayList<>();
|
||||||
|
|
||||||
|
List<SysMenu> allMenus = this.list();
|
||||||
|
for (SysMenu sysMenu : allMenus) {
|
||||||
|
ZTreeNode zTreeNode = new ZTreeNode();
|
||||||
|
zTreeNode.setId(sysMenu.getMenuId());
|
||||||
|
zTreeNode.setpId(sysMenu.getMenuParentId());
|
||||||
|
zTreeNode.setName(sysMenu.getMenuName());
|
||||||
|
zTreeNode.setOpen(false);
|
||||||
|
zTreeNodes.add(zTreeNode);
|
||||||
|
}
|
||||||
|
|
||||||
|
return zTreeNodes;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<SysMenu> list(SysMenuRequest sysMenuRequest) {
|
public List<SysMenu> list(SysMenuRequest sysMenuRequest) {
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue