|
|
@ -1135,4 +1135,45 @@ public class ProRoleService implements IProRoleService { |
|
|
|
} |
|
|
|
return memberId; |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 修改对谁不可见 |
|
|
|
* @param param 参数 |
|
|
|
* @param userId 当前用户id |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
public void upRoleWhoNoLook(RoleDto.RoleOfNoLook param, Long userId) { |
|
|
|
ProRole proRole = proRoleDao.selectByPrimaryKey(param.getRoleId()); |
|
|
|
if (ObjectUtil.isNotNull(proRole)){ |
|
|
|
//用户在项目中的最高权限
|
|
|
|
int power = selectPowerByRoleName(userId, proRole.getProjectId()); |
|
|
|
if (2 < power){ |
|
|
|
//删除之前的记录
|
|
|
|
ProRoleExcludeExample excludeExample = new ProRoleExcludeExample(); |
|
|
|
excludeExample.createCriteria().andRoleIdEqualTo(param.getRoleId()).andRecStatusEqualTo((byte)0); |
|
|
|
List<ProRoleExclude> proRoleExcludes = proRoleExcludeMapper.selectByExample(excludeExample); |
|
|
|
if (CollectionUtil.isNotEmpty(proRoleExcludes)){ |
|
|
|
for (ProRoleExclude proRoleExclude : proRoleExcludes) { |
|
|
|
ProRoleExclude oldExclude = new ProRoleExclude(); |
|
|
|
oldExclude.setId(proRoleExclude.getId()); |
|
|
|
oldExclude.setRecStatus((byte)2); |
|
|
|
proRoleExcludeMapper.updateByExampleSelective(oldExclude,excludeExample); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
//添加新数据
|
|
|
|
for (Long noRoleId : param.getNoRoleId()) { |
|
|
|
ProRoleExclude roleExclude = new ProRoleExclude(); |
|
|
|
roleExclude.setId(snowflake.nextId()); |
|
|
|
roleExclude.setRoleId(param.getRoleId()); |
|
|
|
roleExclude.setOtherRoleId(noRoleId); |
|
|
|
proRoleExcludeMapper.insertSelective(roleExclude); |
|
|
|
} |
|
|
|
}else{ |
|
|
|
throw new BaseException(CodeEnum.NOT_POWER); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|