【fix sonar】NgAlainServiceImpl文件

This commit is contained in:
梁琦涛
2023-03-10 15:03:55 +08:00
parent 97eab577f8
commit ae0cf36b43
@@ -88,35 +88,38 @@ public class NgAlainServiceImpl implements NgAlainService {
getPermissionJsonArray(jsonArray, metaList, json); getPermissionJsonArray(jsonArray, metaList, json);
} }
}else if(parentJson!=null && oConvertUtils.isNotEmpty(tempPid) && tempPid.equals(parentJson.getString("id"))){ }else if(parentJson!=null && oConvertUtils.isNotEmpty(tempPid) && tempPid.equals(parentJson.getString("id"))){
final String PERMISSIONLIST = "permissionList"; putParentJson(jsonArray, metaList, parentJson, permission, json);
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);
}
}
} }
} }
} }
private void putParentJson(JSONArray jsonArray, List<SysPermission> metaList, JSONObject parentJson, SysPermission permission, JSONObject json) {
final String PERMISSIONLIST = "permissionList";
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);
}
}
}
private JSONObject getPermissionJsonObject(SysPermission permission) { private JSONObject getPermissionJsonObject(SysPermission permission) {
JSONObject json = new JSONObject(); JSONObject json = new JSONObject();
//类型(0:一级菜单 1:子菜单 2:按钮) //类型(0:一级菜单 1:子菜单 2:按钮)
@@ -125,12 +128,7 @@ public class NgAlainServiceImpl implements NgAlainService {
json.put("describe", permission.getName()); json.put("describe", permission.getName());
}else if(permission.getMenuType()==0||permission.getMenuType()==1) { }else if(permission.getMenuType()==0||permission.getMenuType()==1) {
json.put("id", permission.getId()); json.put("id", permission.getId());
if(permission.getUrl()!=null&&(permission.getUrl().startsWith("http://")||permission.getUrl().startsWith("https://"))) { putJson(permission, json);
String url= new String(Base64.getUrlEncoder().encode(permission.getUrl().getBytes()));
json.put("path", "/sys/link/" +url.replace("=",""));
}else {
json.put("path", permission.getUrl());
}
//重要规则:路由name (通过URL生成路由name,路由name供前端开发,页面跳转使用) //重要规则:路由name (通过URL生成路由name,路由name供前端开发,页面跳转使用)
json.put("name", urlToRouteName(permission.getUrl())); json.put("name", urlToRouteName(permission.getUrl()));
@@ -161,6 +159,16 @@ public class NgAlainServiceImpl implements NgAlainService {
return json; return json;
} }
private void putJson(SysPermission permission, JSONObject json) {
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.replace("=",""));
}else {
json.put("path", permission.getUrl());
}
}
/** /**
* 通过URL生成路由name(去掉URL前缀斜杠,替换内容中的斜杠‘/’为-) * 通过URL生成路由name(去掉URL前缀斜杠,替换内容中的斜杠‘/’为-)
* 举例: URL = /isystem/role * 举例: URL = /isystem/role