|
@@ -429,6 +429,29 @@ public class VppTeamServiceImpl implements VppTeamService {
|
|
|
VppRTeamMemberRoleExample vppRTeamMemberRoleExample = new VppRTeamMemberRoleExample();
|
|
|
vppRTeamMemberRoleExample.createCriteria().andMemberIdEqualTo(vppRTeamMemberRole.getMemberId()).andTeamIdEqualTo(dto.getTeamId());
|
|
|
vppRTeamMemberRoleService.deleteByExample(vppRTeamMemberRoleExample);
|
|
|
+ // 获取管理源所有关联
|
|
|
+ List<VppRTeamMemberRole> memberRoles = vppRTeamMemberRoleService.listByMemberId(vppRTeamMemberRole.getMemberId());
|
|
|
+ // 1.判断管理员是否在其他团队有关联关系,如果没有则回到默认团队作为普通成员
|
|
|
+ if (CollectionUtils.isEmpty(memberRoles)) {
|
|
|
+ VppRTeamMemberRole vppRTeamMemberRole1 = new VppRTeamMemberRole().withId(CommonUtils.generateId())
|
|
|
+ .withMemberId(vppRTeamMemberRole.getMemberId()).withTeamId(defaultVppTeam.getId()).withRoleId("3");
|
|
|
+ vppRTeamMemberRoleService.create(vppRTeamMemberRole1);
|
|
|
+ // 修改用户权限为普通成员
|
|
|
+ VppMember vppMember = new VppMember();
|
|
|
+ vppMember.setId(vppRTeamMemberRole.getMemberId());
|
|
|
+ vppMember.setRole("3");
|
|
|
+ vppMemberService.update(vppMember);
|
|
|
+ } else {
|
|
|
+ // 2.如果有关联关系。判断管理员是否还有其他管理的团队
|
|
|
+ List<VppRTeamMemberRole> collect = memberRoles.stream().filter(c -> c.getRoleId().equals("2")).collect(Collectors.toList());
|
|
|
+ // 如果没有管理的团队了,修改用户权限为普通成员
|
|
|
+ if (CollectionUtils.isEmpty(collect)) {
|
|
|
+ VppMember vppMember = new VppMember();
|
|
|
+ vppMember.setId(vppRTeamMemberRole.getMemberId());
|
|
|
+ vppMember.setRole("3");
|
|
|
+ vppMemberService.update(vppMember);
|
|
|
+ }
|
|
|
+ }
|
|
|
// 删除管理员去除序列码关联
|
|
|
vppLicenseCodeService.unBindByMemberId(vppRTeamMemberRole.getMemberId(), null);
|
|
|
}
|
|
@@ -575,7 +598,7 @@ public class VppTeamServiceImpl implements VppTeamService {
|
|
|
}
|
|
|
// 团队成员移到默认团队
|
|
|
vppRTeamMemberRoleService.changeTeamMember(vppTeam.getId(), defaultVppTeam.getId());
|
|
|
- // 获取团队管理员
|
|
|
+ // 获取团队所有关联数据
|
|
|
List<VppRTeamMemberRole> allByTeamId = vppRTeamMemberRoleService.getAllByTeamId(teamId);
|
|
|
if (CollectionUtils.isEmpty(allByTeamId)) {
|
|
|
return;
|
|
@@ -588,8 +611,9 @@ public class VppTeamServiceImpl implements VppTeamService {
|
|
|
vppRTeamMemberRoleService.cleanTeamMember(teamId);
|
|
|
// 判断团队管理员逻辑
|
|
|
for (VppRTeamMemberRole vppRTeamMemberRole : vppRTeamMemberRoles) {
|
|
|
- // 1.过滤每个管理员是否在其他团队有关联关系,如果没有则回到默认团队作为普通成员
|
|
|
+ // 获取团队管理员
|
|
|
List<VppRTeamMemberRole> memberRoles = vppRTeamMemberRoleService.listByMemberId(vppRTeamMemberRole.getMemberId());
|
|
|
+ // 1.过滤每个管理员是否在其他团队有关联关系,如果没有则回到默认团队作为普通成员
|
|
|
if (CollectionUtils.isEmpty(memberRoles)) {
|
|
|
VppRTeamMemberRole vppRTeamMemberRole1 = new VppRTeamMemberRole().withId(CommonUtils.generateId())
|
|
|
.withMemberId(vppRTeamMemberRole.getMemberId()).withTeamId(defaultVppTeam.getId()).withRoleId("3");
|