提交 08d79cf5 作者: 陈柏江

路由信息返回格式修改(新)

上级 1a560350
...@@ -143,7 +143,7 @@ public class SysLoginController { ...@@ -143,7 +143,7 @@ public class SysLoginController {
Long userId = SecurityUtils.getUserId(); Long userId = SecurityUtils.getUserId();
List<SysMenu> menus = menuService.selectMenuTreeByUserId(userId); List<SysMenu> menus = menuService.selectMenuTreeByUserId(userId);
Map<String, Object> map = new HashMap<>(); Map<String, Object> map = new HashMap<>();
map.put("list", menuService.buildMenus(menus)); map.put("list", menuService.buildMenusNew(menus));
return AjaxResult.success(map); return AjaxResult.success(map);
} }
} }
package com.ruoyi.system.domain.vo;
/**
* 路由显示信息
*
* @author ruoyi
*/
public class MetaNewVo {
/**
* 是否显示在菜单中显示隐藏路由(默认值:false)
*/
private boolean hidden;
/**
* 是否显示在菜单中显示隐藏一级路由(默认值:false)
*/
private boolean levelHidden;
/**
* 菜单、面包屑、多标签页显示的名称
*/
private String title;
/**
* 新版图标
*/
private String icon;
/**
* 是否是自定义svg图标(默认值:false,如果设置true,那么需要把你的svg拷贝到icon下,然后icon字段配置上你的图标名)
*/
private boolean isCustomSvg;
/**
* 当前路由是否不缓存(默认值:false)
*/
private boolean noKeepAlive;
/**
* 当前路由是否可关闭多标签页,同上(2021年10月后新版支持)
*/
private boolean noClosable;
/**
* 是否隐藏分栏,仅在分栏布局中二级路由生效(默认值:false,不推荐使用)
*/
private boolean noColumn;
/**
* badge小标签(只支持子级,String类型,支持自定义)
*/
private String badge;
/**
* 当前路由是否不显示多标签页(默认值:false,不推荐使用)
*/
private boolean tabHidden;
/**
* 是否浏览新标签页打开(不适用于分栏布局左侧tab部分,不推荐使用)
*/
private String target;
/**
* 高亮指定菜单,要从跟路由的path开始拼接(用于隐藏页高亮)
*/
private String activeMenu;
/**
* 小圆点(默认值:false)
*/
private boolean dot;
/**
* 动态传参路由是否新开标签页(默认值:false)
*/
private boolean dynamicNewTab;
/**
* 面包屑是否显示(默认值:false)
*/
private boolean breadcrumbHidden;
public boolean isHidden() {
return hidden;
}
public void setHidden(boolean hidden) {
this.hidden = hidden;
}
public boolean isLevelHidden() {
return levelHidden;
}
public void setLevelHidden(boolean levelHidden) {
this.levelHidden = levelHidden;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getIcon() {
return icon;
}
public void setIcon(String icon) {
this.icon = icon;
}
public boolean isCustomSvg() {
return isCustomSvg;
}
public void setCustomSvg(boolean customSvg) {
isCustomSvg = customSvg;
}
public boolean isNoKeepAlive() {
return noKeepAlive;
}
public void setNoKeepAlive(boolean noKeepAlive) {
this.noKeepAlive = noKeepAlive;
}
public boolean isNoClosable() {
return noClosable;
}
public void setNoClosable(boolean noClosable) {
this.noClosable = noClosable;
}
public boolean isNoColumn() {
return noColumn;
}
public void setNoColumn(boolean noColumn) {
this.noColumn = noColumn;
}
public String getBadge() {
return badge;
}
public void setBadge(String badge) {
this.badge = badge;
}
public boolean isTabHidden() {
return tabHidden;
}
public void setTabHidden(boolean tabHidden) {
this.tabHidden = tabHidden;
}
public String getTarget() {
return target;
}
public void setTarget(String target) {
this.target = target;
}
public String getActiveMenu() {
return activeMenu;
}
public void setActiveMenu(String activeMenu) {
this.activeMenu = activeMenu;
}
public boolean isDot() {
return dot;
}
public void setDot(boolean dot) {
this.dot = dot;
}
public boolean isDynamicNewTab() {
return dynamicNewTab;
}
public void setDynamicNewTab(boolean dynamicNewTab) {
this.dynamicNewTab = dynamicNewTab;
}
public boolean isBreadcrumbHidden() {
return breadcrumbHidden;
}
public void setBreadcrumbHidden(boolean breadcrumbHidden) {
this.breadcrumbHidden = breadcrumbHidden;
}
}
package com.ruoyi.system.domain.vo;
import com.fasterxml.jackson.annotation.JsonInclude;
import java.util.List;
/**
* 路由配置信息
*
* @author ruoyi
*/
@JsonInclude(JsonInclude.Include.NON_EMPTY)
public class RouterNewVo {
/**
* 路由名字
*/
private String name;
/**
* 路由地址
*/
private String path;
/**
* 重定向地址,当设置 noRedirect 的时候该路由在面包屑导航中不可被点击
*/
private String redirect;
/**
* 组件地址
*/
private String component;
/**
* 其他元素
*/
private MetaNewVo meta;
/**
* 子路由
*/
private List<RouterNewVo> children;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPath() {
return path;
}
public void setPath(String path) {
this.path = path;
}
public String getRedirect() {
return redirect;
}
public void setRedirect(String redirect) {
this.redirect = redirect;
}
public String getComponent() {
return component;
}
public void setComponent(String component) {
this.component = component;
}
public MetaNewVo getMeta() {
return meta;
}
public void setMeta(MetaNewVo meta) {
this.meta = meta;
}
public List<RouterNewVo> getChildren() {
return children;
}
public void setChildren(List<RouterNewVo> children) {
this.children = children;
}
}
package com.ruoyi.system.mapper; package com.ruoyi.system.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import com.ruoyi.common.core.domain.entity.SysMenu; import com.ruoyi.common.core.domain.entity.SysMenu;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/** /**
* 菜单表 数据层 * 菜单表 数据层
* *
* @author ruoyi * @author ruoyi
*/ */
public interface SysMenuMapper @Mapper
{ public interface SysMenuMapper {
/** /**
* 查询系统菜单列表 * 查询系统菜单列表
* *
......
package com.ruoyi.system.mapper; package com.ruoyi.system.mapper;
import java.util.List;
import com.ruoyi.common.core.domain.entity.SysRole; import com.ruoyi.common.core.domain.entity.SysRole;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/** /**
* 角色表 数据层 * 角色表 数据层
* *
* @author ruoyi * @author ruoyi
*/ */
public interface SysRoleMapper @Mapper
{ public interface SysRoleMapper {
/** /**
* 根据条件分页查询角色数据 * 根据条件分页查询角色数据
* *
......
package com.ruoyi.system.mapper; package com.ruoyi.system.mapper;
import java.util.List;
import com.ruoyi.system.domain.SysRoleMenu; import com.ruoyi.system.domain.SysRoleMenu;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/** /**
* 角色与菜单关联表 数据层 * 角色与菜单关联表 数据层
* *
* @author ruoyi * @author ruoyi
*/ */
public interface SysRoleMenuMapper @Mapper
{ public interface SysRoleMenuMapper {
/** /**
* 查询菜单使用数量 * 查询菜单使用数量
* *
......
...@@ -4,6 +4,7 @@ import java.util.List; ...@@ -4,6 +4,7 @@ import java.util.List;
import java.util.Set; import java.util.Set;
import com.ruoyi.common.core.domain.TreeSelect; import com.ruoyi.common.core.domain.TreeSelect;
import com.ruoyi.common.core.domain.entity.SysMenu; import com.ruoyi.common.core.domain.entity.SysMenu;
import com.ruoyi.system.domain.vo.RouterNewVo;
import com.ruoyi.system.domain.vo.RouterVo; import com.ruoyi.system.domain.vo.RouterVo;
/** /**
...@@ -71,6 +72,14 @@ public interface ISysMenuService ...@@ -71,6 +72,14 @@ public interface ISysMenuService
public List<RouterVo> buildMenus(List<SysMenu> menus); public List<RouterVo> buildMenus(List<SysMenu> menus);
/** /**
* 构建前端路由所需要的菜单
*
* @param menus 菜单列表
* @return 路由列表
*/
public List<RouterNewVo> buildMenusNew(List<SysMenu> menus);
/**
* 构建前端所需要树结构 * 构建前端所需要树结构
* *
* @param menus 菜单列表 * @param menus 菜单列表
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论