Java Code Examples for org.jeecg.modules.system.entity.SysPermission#getMenuType()

The following examples show how to use org.jeecg.modules.system.entity.SysPermission#getMenuType() . You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: SysPermissionTree.java    From jeecg-boot with Apache License 2.0 5 votes vote down vote up
public SysPermissionTree(SysPermission permission) {
	this.key = permission.getId();
	this.id = permission.getId();
	this.perms = permission.getPerms();
	this.permsType = permission.getPermsType();
	this.component = permission.getComponent();
	this.createBy = permission.getCreateBy();
	this.createTime = permission.getCreateTime();
	this.delFlag = permission.getDelFlag();
	this.description = permission.getDescription();
	this.icon = permission.getIcon();
	this.isLeaf = permission.isLeaf();
	this.menuType = permission.getMenuType();
	this.name = permission.getName();
	this.parentId = permission.getParentId();
	this.sortNo = permission.getSortNo();
	this.updateBy = permission.getUpdateBy();
	this.updateTime = permission.getUpdateTime();
	this.redirect = permission.getRedirect();
	this.url = permission.getUrl();
	this.hidden = permission.isHidden();
	this.route = permission.isRoute();
	this.keepAlive = permission.isKeepAlive();
	this.alwaysShow= permission.isAlwaysShow();
	/*update_begin author:wuxianquan date:20190908 for:赋值 */
	this.internalOrExternal = permission.isInternalOrExternal();
	/*update_end author:wuxianquan date:20190908 for:赋值 */
	this.title=permission.getName();
	if (!permission.isLeaf()) {
		this.children = new ArrayList<SysPermissionTree>();
	}
	this.status = permission.getStatus();
}
 
Example 2
Source File: SysPermissionTree.java    From jeecg-boot-with-activiti with MIT License 5 votes vote down vote up
public SysPermissionTree(SysPermission permission) {
	this.key = permission.getId();
	this.id = permission.getId();
	this.perms = permission.getPerms();
	this.permsType = permission.getPermsType();
	this.component = permission.getComponent();
	this.createBy = permission.getCreateBy();
	this.createTime = permission.getCreateTime();
	this.delFlag = permission.getDelFlag();
	this.description = permission.getDescription();
	this.icon = permission.getIcon();
	this.isLeaf = permission.isLeaf();
	this.menuType = permission.getMenuType();
	this.name = permission.getName();
	this.parentId = permission.getParentId();
	this.sortNo = permission.getSortNo();
	this.updateBy = permission.getUpdateBy();
	this.updateTime = permission.getUpdateTime();
	this.redirect = permission.getRedirect();
	this.url = permission.getUrl();
	this.hidden = permission.isHidden();
	this.route = permission.isRoute();
	this.keepAlive = permission.isKeepAlive();
	this.alwaysShow= permission.isAlwaysShow();
	/*update_begin author:wuxianquan date:20190908 for:赋值 */
	this.internalOrExternal = permission.isInternalOrExternal();
	/*update_end author:wuxianquan date:20190908 for:赋值 */
	this.title=permission.getName();
	if (!permission.isLeaf()) {
		this.children = new ArrayList<SysPermissionTree>();
	}
	this.status = permission.getStatus();
}
 
Example 3
Source File: SysPermissionTree.java    From teaching with Apache License 2.0 5 votes vote down vote up
public SysPermissionTree(SysPermission permission) {
	this.key = permission.getId();
	this.id = permission.getId();
	this.perms = permission.getPerms();
	this.permsType = permission.getPermsType();
	this.component = permission.getComponent();
	this.createBy = permission.getCreateBy();
	this.createTime = permission.getCreateTime();
	this.delFlag = permission.getDelFlag();
	this.description = permission.getDescription();
	this.icon = permission.getIcon();
	this.isLeaf = permission.isLeaf();
	this.menuType = permission.getMenuType();
	this.name = permission.getName();
	this.parentId = permission.getParentId();
	this.sortNo = permission.getSortNo();
	this.updateBy = permission.getUpdateBy();
	this.updateTime = permission.getUpdateTime();
	this.redirect = permission.getRedirect();
	this.url = permission.getUrl();
	this.hidden = permission.isHidden();
	this.route = permission.isRoute();
	this.keepAlive = permission.isKeepAlive();
	this.alwaysShow= permission.isAlwaysShow();
	/*update_begin author:wuxianquan date:20190908 for:赋值 */
	this.internalOrExternal = permission.isInternalOrExternal();
	/*update_end author:wuxianquan date:20190908 for:赋值 */
	this.title=permission.getName();
	if (!permission.isLeaf()) {
		this.children = new ArrayList<SysPermissionTree>();
	}
	this.status = permission.getStatus();
}
 
Example 4
Source File: SysPermissionTree.java    From jeecg-cloud with Apache License 2.0 5 votes vote down vote up
public SysPermissionTree(SysPermission permission) {
	this.key = permission.getId();
	this.id = permission.getId();
	this.perms = permission.getPerms();
	this.permsType = permission.getPermsType();
	this.component = permission.getComponent();
	this.createBy = permission.getCreateBy();
	this.createTime = permission.getCreateTime();
	this.delFlag = permission.getDelFlag();
	this.description = permission.getDescription();
	this.icon = permission.getIcon();
	this.isLeaf = permission.isLeaf();
	this.menuType = permission.getMenuType();
	this.name = permission.getName();
	this.parentId = permission.getParentId();
	this.sortNo = permission.getSortNo();
	this.updateBy = permission.getUpdateBy();
	this.updateTime = permission.getUpdateTime();
	this.redirect = permission.getRedirect();
	this.url = permission.getUrl();
	this.hidden = permission.isHidden();
	this.route = permission.isRoute();
	this.keepAlive = permission.isKeepAlive();
	this.alwaysShow= permission.isAlwaysShow();
	/*update_begin author:wuxianquan date:20190908 for:赋值 */
	this.internalOrExternal = permission.isInternalOrExternal();
	/*update_end author:wuxianquan date:20190908 for:赋值 */
	this.title=permission.getName();
	if (!permission.isLeaf()) {
		this.children = new ArrayList<SysPermissionTree>();
	}
	this.status = permission.getStatus();
}
 
Example 5
Source File: NgAlainServiceImpl.java    From teaching with Apache License 2.0 4 votes vote down vote up
private JSONObject getPermissionJsonObject(SysPermission permission) {
    JSONObject json = new JSONObject();
    //类型(0:一级菜单 1:子菜单  2:按钮)
    if(permission.getMenuType()==2) {
        json.put("action", permission.getPerms());
        json.put("describe", permission.getName());
    }else if(permission.getMenuType()==0||permission.getMenuType()==1) {
        json.put("id", permission.getId());
        if(permission.getUrl()!=null&&(permission.getUrl().startsWith("http://")||permission.getUrl().startsWith("https://"))) {
            String url= new String(Base64.getUrlEncoder().encode(permission.getUrl().getBytes()));
            json.put("path", "/sys/link/" +url.replaceAll("=",""));
        }else {
            json.put("path", permission.getUrl());
        }

        //重要规则:路由name (通过URL生成路由name,路由name供前端开发,页面跳转使用)
        json.put("name", urlToRouteName(permission.getUrl()));

        //是否隐藏路由,默认都是显示的
        if(permission.isHidden()) {
            json.put("hidden",true);
        }
        //聚合路由
        if(permission.isAlwaysShow()) {
            json.put("alwaysShow",true);
        }
        json.put("component", permission.getComponent());
        JSONObject meta = new JSONObject();
        meta.put("title", permission.getName());
        if(oConvertUtils.isEmpty(permission.getParentId())) {
            //一级菜单跳转地址
            json.put("redirect",permission.getRedirect());
            meta.put("icon", oConvertUtils.getString(permission.getIcon(), ""));
        }else {
            meta.put("icon", oConvertUtils.getString(permission.getIcon(), ""));
        }
        if(permission.getUrl()!=null&&(permission.getUrl().startsWith("http://")||permission.getUrl().startsWith("https://"))) {
            meta.put("url", permission.getUrl());
        }
        json.put("meta", meta);
    }

    return json;
}
 
Example 6
Source File: PermissionDataUtil.java    From jeecg-boot with Apache License 2.0 4 votes vote down vote up
/**
 * 智能处理错误数据,简化用户失误操作
 * 
 * @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;
}
 
Example 7
Source File: SysPermissionController.java    From jeecg-boot with Apache License 2.0 4 votes vote down vote up
/**
  *  获取菜单JSON数组
 * @param jsonArray
 * @param metaList
 * @param parentJson
 */
private void getPermissionJsonArray(JSONArray jsonArray, List<SysPermission> metaList, JSONObject parentJson) {
	for (SysPermission permission : metaList) {
		if (permission.getMenuType() == null) {
			continue;
		}
		String tempPid = permission.getParentId();
		JSONObject json = getPermissionJsonObject(permission);
		if(json==null) {
			continue;
		}
		if (parentJson == null && oConvertUtils.isEmpty(tempPid)) {
			jsonArray.add(json);
			if (!permission.isLeaf()) {
				getPermissionJsonArray(jsonArray, metaList, json);
			}
		} else if (parentJson != null && oConvertUtils.isNotEmpty(tempPid) && tempPid.equals(parentJson.getString("id"))) {
			// 类型( 0:一级菜单 1:子菜单 2:按钮 )
			if (permission.getMenuType().equals(CommonConstant.MENU_TYPE_2)) {
				JSONObject metaJson = parentJson.getJSONObject("meta");
				if (metaJson.containsKey("permissionList")) {
					metaJson.getJSONArray("permissionList").add(json);
				} else {
					JSONArray permissionList = new JSONArray();
					permissionList.add(json);
					metaJson.put("permissionList", permissionList);
				}
				// 类型( 0:一级菜单 1:子菜单 2:按钮 )
			} else if (permission.getMenuType().equals(CommonConstant.MENU_TYPE_1) || permission.getMenuType().equals(CommonConstant.MENU_TYPE_0)) {
				if (parentJson.containsKey("children")) {
					parentJson.getJSONArray("children").add(json);
				} else {
					JSONArray children = new JSONArray();
					children.add(json);
					parentJson.put("children", children);
				}

				if (!permission.isLeaf()) {
					getPermissionJsonArray(jsonArray, metaList, json);
				}
			}
		}

	}
}
 
Example 8
Source File: NgAlainServiceImpl.java    From jeecg-boot with Apache License 2.0 4 votes vote down vote up
private JSONObject getPermissionJsonObject(SysPermission permission) {
    JSONObject json = new JSONObject();
    //类型(0:一级菜单 1:子菜单  2:按钮)
    if(permission.getMenuType()==2) {
        json.put("action", permission.getPerms());
        json.put("describe", permission.getName());
    }else if(permission.getMenuType()==0||permission.getMenuType()==1) {
        json.put("id", permission.getId());
        if(permission.getUrl()!=null&&(permission.getUrl().startsWith("http://")||permission.getUrl().startsWith("https://"))) {
            String url= new String(Base64.getUrlEncoder().encode(permission.getUrl().getBytes()));
            json.put("path", "/sys/link/" +url.replaceAll("=",""));
        }else {
            json.put("path", permission.getUrl());
        }

        //重要规则:路由name (通过URL生成路由name,路由name供前端开发,页面跳转使用)
        json.put("name", urlToRouteName(permission.getUrl()));

        //是否隐藏路由,默认都是显示的
        if(permission.isHidden()) {
            json.put("hidden",true);
        }
        //聚合路由
        if(permission.isAlwaysShow()) {
            json.put("alwaysShow",true);
        }
        json.put("component", permission.getComponent());
        JSONObject meta = new JSONObject();
        meta.put("title", permission.getName());
        if(oConvertUtils.isEmpty(permission.getParentId())) {
            //一级菜单跳转地址
            json.put("redirect",permission.getRedirect());
            meta.put("icon", oConvertUtils.getString(permission.getIcon(), ""));
        }else {
            meta.put("icon", oConvertUtils.getString(permission.getIcon(), ""));
        }
        if(permission.getUrl()!=null&&(permission.getUrl().startsWith("http://")||permission.getUrl().startsWith("https://"))) {
            meta.put("url", permission.getUrl());
        }
        json.put("meta", meta);
    }

    return json;
}
 
Example 9
Source File: NgAlainServiceImpl.java    From jeecg-boot with Apache License 2.0 4 votes vote down vote up
/**
 *  获取菜单JSON数组
 * @param jsonArray
 * @param metaList
 * @param parentJson
 */
private void getPermissionJsonArray(JSONArray jsonArray,List<SysPermission> metaList,JSONObject parentJson) {
    for (SysPermission permission : metaList) {
        if(permission.getMenuType()==null) {
            continue;
        }
        String tempPid = permission.getParentId();
        JSONObject json = getPermissionJsonObject(permission);
        if(parentJson==null && oConvertUtils.isEmpty(tempPid)) {
            jsonArray.add(json);
            if(!permission.isLeaf()) {
                getPermissionJsonArray(jsonArray, metaList, json);
            }
        }else if(parentJson!=null && oConvertUtils.isNotEmpty(tempPid) && tempPid.equals(parentJson.getString("id"))){
            if(permission.getMenuType()==0) {
                JSONObject metaJson = parentJson.getJSONObject("meta");
                if(metaJson.containsKey("permissionList")) {
                    metaJson.getJSONArray("permissionList").add(json);
                }else {
                    JSONArray permissionList = new JSONArray();
                    permissionList.add(json);
                    metaJson.put("permissionList", permissionList);
                }

            }else if(permission.getMenuType()==1) {
                if(parentJson.containsKey("children")) {
                    parentJson.getJSONArray("children").add(json);
                }else {
                    JSONArray children = new JSONArray();
                    children.add(json);
                    parentJson.put("children", children);
                }

                if(!permission.isLeaf()) {
                    getPermissionJsonArray(jsonArray, metaList, json);
                }
            }
        }


    }
}
 
Example 10
Source File: PermissionDataUtil.java    From teaching with Apache License 2.0 4 votes vote down vote up
/**
 * 智能处理错误数据,简化用户失误操作
 * 
 * @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;
}
 
Example 11
Source File: SysPermissionController.java    From teaching with Apache License 2.0 4 votes vote down vote up
/**
  *  获取菜单JSON数组
 * @param jsonArray
 * @param metaList
 * @param parentJson
 */
private void getPermissionJsonArray(JSONArray jsonArray, List<SysPermission> metaList, JSONObject parentJson) {
	for (SysPermission permission : metaList) {
		if (permission.getMenuType() == null) {
			continue;
		}
		String tempPid = permission.getParentId();
		JSONObject json = getPermissionJsonObject(permission);
		if(json==null) {
			continue;
		}
		if (parentJson == null && oConvertUtils.isEmpty(tempPid)) {
			jsonArray.add(json);
			if (!permission.isLeaf()) {
				getPermissionJsonArray(jsonArray, metaList, json);
			}
		} else if (parentJson != null && oConvertUtils.isNotEmpty(tempPid) && tempPid.equals(parentJson.getString("id"))) {
			// 类型( 0:一级菜单 1:子菜单 2:按钮 )
			if (permission.getMenuType().equals(CommonConstant.MENU_TYPE_2)) {
				JSONObject metaJson = parentJson.getJSONObject("meta");
				if (metaJson.containsKey("permissionList")) {
					metaJson.getJSONArray("permissionList").add(json);
				} else {
					JSONArray permissionList = new JSONArray();
					permissionList.add(json);
					metaJson.put("permissionList", permissionList);
				}
				// 类型( 0:一级菜单 1:子菜单 2:按钮 )
			} else if (permission.getMenuType().equals(CommonConstant.MENU_TYPE_1) || permission.getMenuType().equals(CommonConstant.MENU_TYPE_0)) {
				if (parentJson.containsKey("children")) {
					parentJson.getJSONArray("children").add(json);
				} else {
					JSONArray children = new JSONArray();
					children.add(json);
					parentJson.put("children", children);
				}

				if (!permission.isLeaf()) {
					getPermissionJsonArray(jsonArray, metaList, json);
				}
			}
		}

	}
}
 
Example 12
Source File: NgAlainServiceImpl.java    From teaching with Apache License 2.0 4 votes vote down vote up
/**
 *  获取菜单JSON数组
 * @param jsonArray
 * @param metaList
 * @param parentJson
 */
private void getPermissionJsonArray(JSONArray jsonArray,List<SysPermission> metaList,JSONObject parentJson) {
    for (SysPermission permission : metaList) {
        if(permission.getMenuType()==null) {
            continue;
        }
        String tempPid = permission.getParentId();
        JSONObject json = getPermissionJsonObject(permission);
        if(parentJson==null && oConvertUtils.isEmpty(tempPid)) {
            jsonArray.add(json);
            if(!permission.isLeaf()) {
                getPermissionJsonArray(jsonArray, metaList, json);
            }
        }else if(parentJson!=null && oConvertUtils.isNotEmpty(tempPid) && tempPid.equals(parentJson.getString("id"))){
            if(permission.getMenuType()==0) {
                JSONObject metaJson = parentJson.getJSONObject("meta");
                if(metaJson.containsKey("permissionList")) {
                    metaJson.getJSONArray("permissionList").add(json);
                }else {
                    JSONArray permissionList = new JSONArray();
                    permissionList.add(json);
                    metaJson.put("permissionList", permissionList);
                }

            }else if(permission.getMenuType()==1) {
                if(parentJson.containsKey("children")) {
                    parentJson.getJSONArray("children").add(json);
                }else {
                    JSONArray children = new JSONArray();
                    children.add(json);
                    parentJson.put("children", children);
                }

                if(!permission.isLeaf()) {
                    getPermissionJsonArray(jsonArray, metaList, json);
                }
            }
        }


    }
}
 
Example 13
Source File: PermissionDataUtil.java    From jeecg-boot-with-activiti with MIT License 4 votes vote down vote up
/**
 * 智能处理错误数据,简化用户失误操作
 * 
 * @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;
}
 
Example 14
Source File: SysPermissionController.java    From jeecg-boot-with-activiti with MIT License 4 votes vote down vote up
/**
  *  获取菜单JSON数组
 * @param jsonArray
 * @param metaList
 * @param parentJson
 */
private void getPermissionJsonArray(JSONArray jsonArray, List<SysPermission> metaList, JSONObject parentJson) {
	for (SysPermission permission : metaList) {
		if (permission.getMenuType() == null) {
			continue;
		}
		String tempPid = permission.getParentId();
		JSONObject json = getPermissionJsonObject(permission);
		if(json==null) {
			continue;
		}
		if (parentJson == null && oConvertUtils.isEmpty(tempPid)) {
			jsonArray.add(json);
			if (!permission.isLeaf()) {
				getPermissionJsonArray(jsonArray, metaList, json);
			}
		} else if (parentJson != null && oConvertUtils.isNotEmpty(tempPid) && tempPid.equals(parentJson.getString("id"))) {
			// 类型( 0:一级菜单 1:子菜单 2:按钮 )
			if (permission.getMenuType().equals(CommonConstant.MENU_TYPE_2)) {
				JSONObject metaJson = parentJson.getJSONObject("meta");
				if (metaJson.containsKey("permissionList")) {
					metaJson.getJSONArray("permissionList").add(json);
				} else {
					JSONArray permissionList = new JSONArray();
					permissionList.add(json);
					metaJson.put("permissionList", permissionList);
				}
				// 类型( 0:一级菜单 1:子菜单 2:按钮 )
			} else if (permission.getMenuType().equals(CommonConstant.MENU_TYPE_1) || permission.getMenuType().equals(CommonConstant.MENU_TYPE_0)) {
				if (parentJson.containsKey("children")) {
					parentJson.getJSONArray("children").add(json);
				} else {
					JSONArray children = new JSONArray();
					children.add(json);
					parentJson.put("children", children);
				}

				if (!permission.isLeaf()) {
					getPermissionJsonArray(jsonArray, metaList, json);
				}
			}
		}

	}
}
 
Example 15
Source File: NgAlainServiceImpl.java    From jeecg-boot-with-activiti with MIT License 4 votes vote down vote up
private JSONObject getPermissionJsonObject(SysPermission permission) {
    JSONObject json = new JSONObject();
    //类型(0:一级菜单 1:子菜单  2:按钮)
    if(permission.getMenuType()==2) {
        json.put("action", permission.getPerms());
        json.put("describe", permission.getName());
    }else if(permission.getMenuType()==0||permission.getMenuType()==1) {
        json.put("id", permission.getId());
        if(permission.getUrl()!=null&&(permission.getUrl().startsWith("http://")||permission.getUrl().startsWith("https://"))) {
            String url= new String(Base64.getUrlEncoder().encode(permission.getUrl().getBytes()));
            json.put("path", "/sys/link/" +url.replaceAll("=",""));
        }else {
            json.put("path", permission.getUrl());
        }

        //重要规则:路由name (通过URL生成路由name,路由name供前端开发,页面跳转使用)
        json.put("name", urlToRouteName(permission.getUrl()));

        //是否隐藏路由,默认都是显示的
        if(permission.isHidden()) {
            json.put("hidden",true);
        }
        //聚合路由
        if(permission.isAlwaysShow()) {
            json.put("alwaysShow",true);
        }
        json.put("component", permission.getComponent());
        JSONObject meta = new JSONObject();
        meta.put("title", permission.getName());
        if(oConvertUtils.isEmpty(permission.getParentId())) {
            //一级菜单跳转地址
            json.put("redirect",permission.getRedirect());
            meta.put("icon", oConvertUtils.getString(permission.getIcon(), ""));
        }else {
            meta.put("icon", oConvertUtils.getString(permission.getIcon(), ""));
        }
        if(permission.getUrl()!=null&&(permission.getUrl().startsWith("http://")||permission.getUrl().startsWith("https://"))) {
            meta.put("url", permission.getUrl());
        }
        json.put("meta", meta);
    }

    return json;
}
 
Example 16
Source File: NgAlainServiceImpl.java    From jeecg-boot-with-activiti with MIT License 4 votes vote down vote up
/**
 *  获取菜单JSON数组
 * @param jsonArray
 * @param metaList
 * @param parentJson
 */
private void getPermissionJsonArray(JSONArray jsonArray,List<SysPermission> metaList,JSONObject parentJson) {
    for (SysPermission permission : metaList) {
        if(permission.getMenuType()==null) {
            continue;
        }
        String tempPid = permission.getParentId();
        JSONObject json = getPermissionJsonObject(permission);
        if(parentJson==null && oConvertUtils.isEmpty(tempPid)) {
            jsonArray.add(json);
            if(!permission.isLeaf()) {
                getPermissionJsonArray(jsonArray, metaList, json);
            }
        }else if(parentJson!=null && oConvertUtils.isNotEmpty(tempPid) && tempPid.equals(parentJson.getString("id"))){
            if(permission.getMenuType()==0) {
                JSONObject metaJson = parentJson.getJSONObject("meta");
                if(metaJson.containsKey("permissionList")) {
                    metaJson.getJSONArray("permissionList").add(json);
                }else {
                    JSONArray permissionList = new JSONArray();
                    permissionList.add(json);
                    metaJson.put("permissionList", permissionList);
                }

            }else if(permission.getMenuType()==1) {
                if(parentJson.containsKey("children")) {
                    parentJson.getJSONArray("children").add(json);
                }else {
                    JSONArray children = new JSONArray();
                    children.add(json);
                    parentJson.put("children", children);
                }

                if(!permission.isLeaf()) {
                    getPermissionJsonArray(jsonArray, metaList, json);
                }
            }
        }


    }
}
 
Example 17
Source File: PermissionDataUtil.java    From jeecg-cloud with Apache License 2.0 4 votes vote down vote up
/**
 * 智能处理错误数据,简化用户失误操作
 * 
 * @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;
}
 
Example 18
Source File: SysPermissionController.java    From jeecg-cloud with Apache License 2.0 4 votes vote down vote up
/**
  *  获取菜单JSON数组
 * @param jsonArray
 * @param metaList
 * @param parentJson
 */
private void getPermissionJsonArray(JSONArray jsonArray, List<SysPermission> metaList, JSONObject parentJson) {
	for (SysPermission permission : metaList) {
		if (permission.getMenuType() == null) {
			continue;
		}
		String tempPid = permission.getParentId();
		JSONObject json = getPermissionJsonObject(permission);
		if(json==null) {
			continue;
		}
		if (parentJson == null && oConvertUtils.isEmpty(tempPid)) {
			jsonArray.add(json);
			if (!permission.isLeaf()) {
				getPermissionJsonArray(jsonArray, metaList, json);
			}
		} else if (parentJson != null && oConvertUtils.isNotEmpty(tempPid) && tempPid.equals(parentJson.getString("id"))) {
			// 类型( 0:一级菜单 1:子菜单 2:按钮 )
			if (permission.getMenuType().equals(CommonConstant.MENU_TYPE_2)) {
				JSONObject metaJson = parentJson.getJSONObject("meta");
				if (metaJson.containsKey("permissionList")) {
					metaJson.getJSONArray("permissionList").add(json);
				} else {
					JSONArray permissionList = new JSONArray();
					permissionList.add(json);
					metaJson.put("permissionList", permissionList);
				}
				// 类型( 0:一级菜单 1:子菜单 2:按钮 )
			} else if (permission.getMenuType().equals(CommonConstant.MENU_TYPE_1) || permission.getMenuType().equals(CommonConstant.MENU_TYPE_0)) {
				if (parentJson.containsKey("children")) {
					parentJson.getJSONArray("children").add(json);
				} else {
					JSONArray children = new JSONArray();
					children.add(json);
					parentJson.put("children", children);
				}

				if (!permission.isLeaf()) {
					getPermissionJsonArray(jsonArray, metaList, json);
				}
			}
		}

	}
}