【fix sonar】NgAlainServiceImpl.java.java文件
This commit is contained in:
+62
-50
@@ -21,6 +21,8 @@ public class NgAlainServiceImpl implements NgAlainService {
|
|||||||
private ISysPermissionService sysPermissionService;
|
private ISysPermissionService sysPermissionService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private SysDictMapper mapper;
|
private SysDictMapper mapper;
|
||||||
|
|
||||||
|
private static String CHILDREN = "children";
|
||||||
@Override
|
@Override
|
||||||
public JSONArray getMenu(String id) throws Exception {
|
public JSONArray getMenu(String id) throws Exception {
|
||||||
return getJeroMenu(id);
|
return getJeroMenu(id);
|
||||||
@@ -34,7 +36,7 @@ public class NgAlainServiceImpl implements NgAlainService {
|
|||||||
JSONObject menu = new JSONObject();
|
JSONObject menu = new JSONObject();
|
||||||
menu.put("text", "jero菜单");
|
menu.put("text", "jero菜单");
|
||||||
menu.put("group",true);
|
menu.put("group",true);
|
||||||
menu.put("children", menulist);
|
menu.put(CHILDREN, menulist);
|
||||||
JSONArray jeroMenuList=new JSONArray();
|
JSONArray jeroMenuList=new JSONArray();
|
||||||
jeroMenuList.add(menu);
|
jeroMenuList.add(menu);
|
||||||
return jeroMenuList;
|
return jeroMenuList;
|
||||||
@@ -54,9 +56,9 @@ public class NgAlainServiceImpl implements NgAlainService {
|
|||||||
JSONObject menu=new JSONObject();
|
JSONObject menu=new JSONObject();
|
||||||
menu.put("text",meta.get("title"));
|
menu.put("text",meta.get("title"));
|
||||||
menu.put("reuse",true);
|
menu.put("reuse",true);
|
||||||
if (jsonObject.get("children")!=null){
|
if (jsonObject.get(CHILDREN)!=null){
|
||||||
JSONArray child= parseNgAlain((JSONArray) jsonObject.get("children"));
|
JSONArray child= parseNgAlain((JSONArray) jsonObject.get(CHILDREN));
|
||||||
menu.put("children",child);
|
menu.put(CHILDREN,child);
|
||||||
JSONObject icon=new JSONObject();
|
JSONObject icon=new JSONObject();
|
||||||
icon.put("type", "icon");
|
icon.put("type", "icon");
|
||||||
icon.put("value", meta.get("icon"));
|
icon.put("value", meta.get("icon"));
|
||||||
@@ -76,6 +78,7 @@ public class NgAlainServiceImpl implements NgAlainService {
|
|||||||
* @param parentJson
|
* @param parentJson
|
||||||
*/
|
*/
|
||||||
private void getPermissionJsonArray(JSONArray jsonArray,List<SysPermission> metaList,JSONObject parentJson) {
|
private void getPermissionJsonArray(JSONArray jsonArray,List<SysPermission> metaList,JSONObject parentJson) {
|
||||||
|
String PERMISSIONLIST = "permissionList";
|
||||||
for (SysPermission permission : metaList) {
|
for (SysPermission permission : metaList) {
|
||||||
if(permission.getMenuType()==null) {
|
if(permission.getMenuType()==null) {
|
||||||
continue;
|
continue;
|
||||||
@@ -88,34 +91,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"))){
|
||||||
if(permission.getMenuType()==0) {
|
permissionType(jsonArray, metaList, parentJson, PERMISSIONLIST, permission, json);
|
||||||
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 permissionType(JSONArray jsonArray, List<SysPermission> metaList, JSONObject parentJson, String PERMISSIONLIST, SysPermission permission, JSONObject 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 JSONObject getPermissionJsonObject(SysPermission permission) {
|
private JSONObject getPermissionJsonObject(SysPermission permission) {
|
||||||
JSONObject json = new JSONObject();
|
JSONObject json = new JSONObject();
|
||||||
//类型(0:一级菜单 1:子菜单 2:按钮)
|
//类型(0:一级菜单 1:子菜单 2:按钮)
|
||||||
@@ -126,7 +133,7 @@ public class NgAlainServiceImpl implements NgAlainService {
|
|||||||
json.put("id", permission.getId());
|
json.put("id", permission.getId());
|
||||||
if(permission.getUrl()!=null&&(permission.getUrl().startsWith("http://")||permission.getUrl().startsWith("https://"))) {
|
if(permission.getUrl()!=null&&(permission.getUrl().startsWith("http://")||permission.getUrl().startsWith("https://"))) {
|
||||||
String url= new String(Base64.getUrlEncoder().encode(permission.getUrl().getBytes()));
|
String url= new String(Base64.getUrlEncoder().encode(permission.getUrl().getBytes()));
|
||||||
json.put("path", "/sys/link/" +url.replaceAll("=",""));
|
json.put("path", "/sys/link/" +url.replace("=",""));
|
||||||
}else {
|
}else {
|
||||||
json.put("path", permission.getUrl());
|
json.put("path", permission.getUrl());
|
||||||
}
|
}
|
||||||
@@ -135,31 +142,36 @@ public class NgAlainServiceImpl implements NgAlainService {
|
|||||||
json.put("name", urlToRouteName(permission.getUrl()));
|
json.put("name", urlToRouteName(permission.getUrl()));
|
||||||
|
|
||||||
//是否隐藏路由,默认都是显示的
|
//是否隐藏路由,默认都是显示的
|
||||||
if(permission.isHidden()) {
|
setRouter(permission, json);
|
||||||
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;
|
return json;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void setRouter(SysPermission permission, JSONObject json) {
|
||||||
|
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);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 通过URL生成路由name(去掉URL前缀斜杠,替换内容中的斜杠‘/’为-)
|
* 通过URL生成路由name(去掉URL前缀斜杠,替换内容中的斜杠‘/’为-)
|
||||||
* 举例: URL = /isystem/role
|
* 举例: URL = /isystem/role
|
||||||
|
|||||||
Reference in New Issue
Block a user