小组应用小组用户权限缓存应用权限调整

This commit is contained in:
anhc 2022-06-30 16:22:36 +08:00
parent c8478e1bcd
commit 18e4e2f5e9
3 changed files with 23 additions and 10 deletions

View File

@ -2,12 +2,15 @@ package com.actionsoft.apps.coe.pal.cooperation;
import com.actionsoft.apps.coe.pal.constant.CoEConstant;
import com.actionsoft.apps.coe.pal.cooperation.aslp.ListApps;
import com.actionsoft.apps.coe.pal.cooperation.cache.model.TeamInfo;
import com.actionsoft.apps.coe.pal.cooperation.cache.model.UserInfo;
import com.actionsoft.apps.coe.pal.cooperation.dao.CoeCooperationMemberDao;
import com.actionsoft.apps.coe.pal.cooperation.dao.CoeCooperationRoleDao;
import com.actionsoft.apps.coe.pal.cooperation.dao.CoeCooperationRolePermDao;
import com.actionsoft.apps.coe.pal.cooperation.dao.CoeCooperationTeamDao;
import com.actionsoft.apps.coe.pal.cooperation.extend.CooperationAppManager;
import com.actionsoft.apps.coe.pal.cooperation.extend.CooperationAppProfile;
import com.actionsoft.apps.coe.pal.cooperation.model.CoeCooperationMemberModel;
import com.actionsoft.apps.coe.pal.cooperation.model.CoeCooperationRoleModel;
import com.actionsoft.apps.coe.pal.cooperation.model.CoeCooperationRolePermModel;
@ -18,8 +21,11 @@ import com.actionsoft.apps.coe.pal.pal.repository.PALRepositoryQueryAPIManager;
import com.actionsoft.apps.coe.pal.pal.repository.cache.PALRepositoryCache;
import com.actionsoft.apps.coe.pal.pal.repository.model.PALRepositoryModel;
import com.actionsoft.apps.coe.pal.pal.repository.util.CoeProcessLevelUtil;
import com.actionsoft.bpms.commons.mvc.view.ResponseObject;
import com.actionsoft.bpms.util.UtilString;
import com.actionsoft.i18n.I18nRes;
import com.actionsoft.sdk.local.SDK;
import com.actionsoft.sdk.local.api.AppAPI;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import org.apache.commons.lang.StringUtils;
@ -163,8 +169,7 @@ public class CooperationQueryAPIManager {
//获取角色信息,设置全局权限
CoeCooperationRoleModel roleModel = new CoeCooperationRoleDao().queryById(memberModel.getRoleId());
List<String> appPermList = Arrays.stream(roleModel.getAppPerm().split(",")).collect(Collectors.toList());
userInfo.getAppPermission().addAll(appPermList);
userInfo.setAppPermission( roleModel.getAppPerm());
List<String> actionPermList = Arrays.stream(roleModel.getActionPerm().split(",")).collect(Collectors.toList());
userInfo.getOperatePermission().addAll(actionPermList);
//设置全部数据权限

View File

@ -4,16 +4,15 @@ import com.actionsoft.apps.coe.pal.cooperation.CooperationQueryAPIManager;
import com.actionsoft.apps.coe.pal.cooperation.cache.model.TeamInfo;
import com.actionsoft.apps.coe.pal.cooperation.cache.model.UserInfo;
import com.actionsoft.apps.coe.pal.cooperation.constant.Constant;
import com.actionsoft.apps.coe.pal.cooperation.extend.CooperationAppManager;
import com.actionsoft.apps.coe.pal.cooperation.extend.CooperationAppProfile;
import com.actionsoft.apps.resource.plugin.profile.CachePluginProfile;
import com.actionsoft.bpms.commons.cache.Cache;
import com.actionsoft.bpms.commons.cache.CacheManager;
import com.actionsoft.bpms.util.ConsolePrinter;
import com.actionsoft.sdk.local.SDK;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import java.util.*;
import java.util.stream.Collectors;
public class CooperationCache extends Cache<String, TeamInfo> {
@ -121,7 +120,16 @@ public class CooperationCache extends Cache<String, TeamInfo> {
if (null == userInfo){
return new HashSet<>();
}
return userInfo.getAppPermission();
String appPerm = userInfo.getAppPermission();
if ("all".equals(appPerm)){
Set<String> set = new HashSet<>();
List<CooperationAppProfile> appProfiles = CooperationAppManager.getList();
for (CooperationAppProfile profile : appProfiles) {
set.add(profile.getId());
}
return set;
}
return Arrays.stream(appPerm.split(",")).collect(Collectors.toSet());
}
/**

View File

@ -9,7 +9,7 @@ public class UserInfo implements Serializable {
private String userid;
private List<String> roleIds = new ArrayList<>();
private Set<String> operatePermission = new HashSet<>();
private Set<String> appPermission = new HashSet<>();
private String appPermission ;
private Map<String,Set<String>> dataPermission = new HashMap<>();
private boolean isAllDataPermission;
@ -40,11 +40,11 @@ public class UserInfo implements Serializable {
this.operatePermission = operatePermission;
}
public Set<String> getAppPermission() {
public String getAppPermission() {
return appPermission;
}
public void setAppPermission(Set<String> appPermission) {
public void setAppPermission(String appPermission) {
this.appPermission = appPermission;
}