小组管理 角色管理 修改角色权限界面加载慢的问题

This commit is contained in:
qinoy 2023-05-05 15:55:17 +08:00
parent 81ad660ce8
commit 66178adde6
3 changed files with 8 additions and 5 deletions

View File

@ -133,9 +133,11 @@ public class CooperationQueryAPIManager {
} else {
List<PALRepositoryModel> result = new ArrayList<>();
// 获取权限versionIds
Set<String> permVerIds = CooperationUtil.getPermRepositoryVersionIds(wsId, teamId, null, null);
if (permVerIds.size() > 0) {
getPermRepositoryByPid(wsId, pid, permVerIds, true, false, new HashSet<>(), result);
// Set<String> permVerIds = CooperationUtil.getPermRepositoryVersionIds(wsId, teamId, null, null);
// 获取已设置的权限versionId
List<String> versionIds = CoeCooperationAPIManager.getInstance().queryCooperationTeamPermVerIds(teamId);
if (versionIds.size() > 0) {
getPermRepositoryByPid(wsId, pid, versionIds, true, false, new HashSet<>(), result);
}
return result;
}
@ -151,7 +153,7 @@ public class CooperationQueryAPIManager {
* @param verIds 给一个空的Set,防止数据造成的死循环
* @param result 结果集
*/
private void getPermRepositoryByPid(String wsId, String pid, Set<String> permVersionIds, boolean isUse, boolean isPublish, Set<String> verIds, List<PALRepositoryModel> result) {
private void getPermRepositoryByPid(String wsId, String pid, List<String> permVersionIds, boolean isUse, boolean isPublish, Set<String> verIds, List<PALRepositoryModel> result) {
List<PALRepositoryModel> childList = PALRepositoryCache.getAllSubModelsByPid(wsId, pid);
if (childList != null && childList.size() > 0) {
for (PALRepositoryModel model : childList) {

View File

@ -991,7 +991,8 @@ public class CooperationWeb extends ActionWeb {
isAllDataPerm = CoeCooperationConst.PERM_ALL.equalsIgnoreCase(role.getDataPerm());
if (!isAllDataPerm) {
// 获取小组的数据权限
Set<String> teamPermVerIds = CooperationUtil.getPermRepositoryVersionIds(wsId, teamId, null, null);
// Set<String> teamPermVerIds = CooperationUtil.getPermRepositoryVersionIds(wsId, teamId, null, null);
List<String> teamPermVerIds = CoeCooperationAPIManager.getInstance().queryCooperationTeamPermVerIds(teamId);
dataPerm = api.queryCooperationRoleDataPerms(teamId, roleId);
for (String palVersionId : dataPerm) {
if (teamPermVerIds.contains(palVersionId)) {