Merge remote-tracking branch 'origin/feature/REQ-2227' into feature/REQ-2227

This commit is contained in:
zhansihu 2024-04-17 13:54:00 +08:00
commit 00cd4331bc

View File

@ -157,8 +157,6 @@ public class RoleServiceImpl extends ServiceImpl<SaasRoleMapper, SaasRole>
@Value("${groupLeader.code:projectTeamGPLeader}")
private String groupLeaderCode;
private static final Set<String> COMMON_ROLE_TYPES = Sets.newHashSet(RoleTypeEnum.COMMON.getValue(), RoleTypeEnum.AUTO_OWN.getValue());
@Override
public List<SaasRoleVO> queryByIdentityIdType(Long identityId, Integer identityType, Long workspaceId, Long ouId, Boolean includePermissionGroup) {
// 查询人关联的角色id
@ -360,7 +358,7 @@ public class RoleServiceImpl extends ServiceImpl<SaasRoleMapper, SaasRole>
|| CollectionUtils.isNotEmpty(saveOrUpdateRole.getPermissionIds())) {
List<Long> pids = Optional.ofNullable(saveOrUpdateRole.getSelectedPPIds())
.orElse(Lists.newArrayList(saveOrUpdateRole.getPermissionIds()));
.orElseGet(() -> Lists.newArrayList(saveOrUpdateRole.getPermissionIds()));
// 保存权限集和权限点映射关系
List<SaasPgroupPermissionRelation> pgpRelations = pids.stream().map(ppId -> {
@ -476,16 +474,22 @@ public class RoleServiceImpl extends ServiceImpl<SaasRoleMapper, SaasRole>
}
/**
* roleType = 自定义commonworkspaceType = saveOrUpdateRole.workspaceType
* 其他就从角色组取没有就saveOrUpdateRole.workspaceType
*
* @param saveOrUpdateRole
* @return
*/
private Integer resolveWorkspaceType(SaveOrUpdateRoleVO saveOrUpdateRole) {
if (COMMON_ROLE_TYPES.contains(saveOrUpdateRole.getRoleType()) || CollectionUtils.isEmpty(saveOrUpdateRole.getGroupTree())) {
return saveOrUpdateRole.getWorkspaceType();
if (CollectionUtils.isNotEmpty(saveOrUpdateRole.getGroupTree())) {
String workspaceTypeCode = saveOrUpdateRole.getGroupTree().get(0).getWorkspaceTypeCode();
if (StringUtils.isBlank(workspaceTypeCode)) {
throw new ServiceException("角色分组workspaceType不能为空");
}
return Integer.parseInt(workspaceTypeCode);
}
return Integer.parseInt(saveOrUpdateRole.getGroupTree().get(0).getWorkspaceTypeCode());
if (saveOrUpdateRole.getWorkspaceType() == null) {
throw new ServiceException("角色workspaceType不能为空");
}
return saveOrUpdateRole.getWorkspaceType();
}
private SaasRole validAndBuildRole(SaveOrUpdateRoleVO saveOrUpdateRole, Date now) {