feat:(REQ-2227) 修改角色创建时workspaceType的解析逻辑

This commit is contained in:
lilong 2024-04-17 11:35:24 +08:00
parent 693b97b733
commit 0a5c2653e9

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
@ -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) {