package org.jeecg.modules.system.util; import java.util.List; import org.jeecg.common.util.oConvertUtils; import org.jeecg.modules.system.entity.SysPermission; /** * @Author: scott * @Date: 2019-04-03 */ public class PermissionDataUtil { /** * 智能处理错误数据,简化用户失误操作 * * @param permission */ public static SysPermission intelligentProcessData(SysPermission permission) { if (permission == null) { return null; } // 组件 if (oConvertUtils.isNotEmpty(permission.getComponent())) { String component = permission.getComponent(); if (component.startsWith("/")) { component = component.substring(1); } if (component.startsWith("views/")) { component = component.replaceFirst("views/", ""); } if (component.startsWith("src/views/")) { component = component.replaceFirst("src/views/", ""); } if (component.endsWith(".vue")) { component = component.replace(".vue", ""); } permission.setComponent(component); } // 请求URL if (oConvertUtils.isNotEmpty(permission.getUrl())) { String url = permission.getUrl(); if (url.endsWith(".vue")) { url = url.replace(".vue", ""); } if (!url.startsWith("http") && !url.startsWith("/")&&!url.trim().startsWith("{{")) { url = "/" + url; } permission.setUrl(url); } // 一级菜单默认组件 if (0 == permission.getMenuType() && oConvertUtils.isEmpty(permission.getComponent())) { // 一级菜单默认组件 permission.setComponent("layouts/RouteView"); } return permission; } /** * 如果没有index页面 需要new 一个放到list中 * @param metaList */ public static void addIndexPage(List metaList) { boolean hasIndexMenu = false; for (SysPermission sysPermission : metaList) { if("首页".equals(sysPermission.getName())) { hasIndexMenu = true; break; } } if(!hasIndexMenu) { metaList.add(0,new SysPermission(true)); } } /** * 判断是否授权首页 * @param metaList * @return */ public static boolean hasIndexPage(List metaList){ boolean hasIndexMenu = false; for (SysPermission sysPermission : metaList) { if("首页".equals(sysPermission.getName())) { hasIndexMenu = true; break; } } return hasIndexMenu; } }