|
|
@ -299,4 +299,49 @@ public class SysFunctionService extends MybatisBaseService<SysFunctionMapper, Sy |
|
|
|
}); |
|
|
|
return list; |
|
|
|
} |
|
|
|
|
|
|
|
public List<Map<String, Object>> getFunctionAuthorizationApp(String roleSid) { |
|
|
|
List<Map<String, Object>> list = new ArrayList<>(); |
|
|
|
List<Map<String, Object>> lsources = baseMapper.getSourceAuthorizationApp(roleSid); |
|
|
|
lsources.forEach(f -> { |
|
|
|
Map<String, Object> map = new HashMap<>(); |
|
|
|
map.put("name", f.get("sourceName").toString()); |
|
|
|
map.put("sid", f.get("sid").toString()); |
|
|
|
map.put("checked", "1"); |
|
|
|
list.add(map); |
|
|
|
}); |
|
|
|
|
|
|
|
list.forEach(f -> { |
|
|
|
List<Map<String, Object>> list2 = new ArrayList<>(); |
|
|
|
String sid = f.get("sid").toString(); |
|
|
|
List<Map<String, Object>> lmenus = baseMapper.getMenuAuthorization(sid); |
|
|
|
lmenus.forEach(ff -> { |
|
|
|
Map<String, Object> map = new HashMap<>(); |
|
|
|
if (ff.get("pageUrl") != null && com.yxt.common.base.utils.StringUtils.isNotBlank(ff.get("pageUrl").toString())) { |
|
|
|
String pageUrl = ff.get("pageUrl").toString(); |
|
|
|
List<Map<String, Object>> lfuncs = baseMapper.getFunctionAuthorization(pageUrl); |
|
|
|
List<Map<String, Object>> functionByRoleSid = baseMapper.getFunctionByRoleSid(pageUrl, roleSid); |
|
|
|
if (lfuncs.size() > 0){ |
|
|
|
map.put("name", ff.get("name")); |
|
|
|
String sids = ff.get("sid").toString(); |
|
|
|
map.put("sid", sids); |
|
|
|
map.put("checked", "1"); |
|
|
|
map.put("children", new ArrayList<>()); |
|
|
|
for (Map<String, Object> lfunc : lfuncs) { |
|
|
|
for (Map<String, Object> funByRole : functionByRoleSid) { |
|
|
|
if (lfunc.get("sid").equals(funByRole.get("sid"))) { |
|
|
|
lfunc.put("checked", "0"); |
|
|
|
} |
|
|
|
} |
|
|
|
lfunc.put("children", new ArrayList<>()); |
|
|
|
} |
|
|
|
map.put("children", lfuncs); |
|
|
|
list2.add(map); |
|
|
|
} |
|
|
|
} |
|
|
|
}); |
|
|
|
f.put("children", list2); |
|
|
|
}); |
|
|
|
return list; |
|
|
|
} |
|
|
|
} |