diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/repository/dao/SaasRoleUserRelationDao.java b/tyr-server/src/main/java/cn/axzo/tyr/server/repository/dao/SaasRoleUserRelationDao.java index ac349a8d..1493e1ed 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/repository/dao/SaasRoleUserRelationDao.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/repository/dao/SaasRoleUserRelationDao.java @@ -21,13 +21,6 @@ import java.util.stream.Collectors; @Repository public class SaasRoleUserRelationDao extends ServiceImpl { - public void deleteByRoleId(List roleId) { - lambdaUpdate() - .in(SaasRoleUserRelation::getRoleId,roleId) - .set(BaseEntity::getIsDelete,TableIsDeleteEnum.DELETE.value) - .update(); - } - public void deleteById(List ids) { if (CollUtil.isEmpty(ids)) { return; diff --git a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/RoleServiceImpl.java b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/RoleServiceImpl.java index 427f85e9..e9e52151 100644 --- a/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/RoleServiceImpl.java +++ b/tyr-server/src/main/java/cn/axzo/tyr/server/service/impl/RoleServiceImpl.java @@ -988,11 +988,13 @@ public class RoleServiceImpl extends ServiceImpl saasRoleDao.delete(deleteRoleParam.getRoleIds()); // 收口remove接口,通过id更新不会出现死锁,并补发mq // 因为角色用户数据量巨大,应该是角色删除后发送mq,异步解耦去删除相关数据,但是得等角色的写接口收口后才能做 - saasRoleUserRelationService.listV2(ListRoleUserRelationParam.builder() + List saasRoleUsers = saasRoleUserRelationService.listV2(ListRoleUserRelationParam.builder() .roleIds(deleteRoleParam.getRoleIds()) .build()); - roleUserRelationDao.deleteByRoleId(deleteRoleParam.getRoleIds()); + saasRoleUserRelationService.batchRemove(SaasRoleUserRelationService.BatchRemoveParam.builder() + .ids(saasRoleUsers.stream().map(SaasRoleUserV2DTO::getId).collect(Collectors.toSet())) + .build()); roleGroupRelationDao.deleteGroupRelation(deleteRoleParam.getRoleIds()); saasPgroupRoleRelationDao.deleteByRoleId(deleteRoleParam.getRoleIds()); }