From 6ab4ee6a918ae43bcae0ddec71afe3a472c54b85 Mon Sep 17 00:00:00 2001 From: zhangdaiscott Date: Sun, 5 Nov 2023 11:36:53 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=B4=E6=8A=A4=E7=94=A8=E6=88=B7=E7=A7=9F?= =?UTF-8?q?=E6=88=B7=E5=85=B3=E7=B3=BB=E6=9C=89=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/service/impl/SysUserServiceImpl.java | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java index 54d883b9..6f01f685 100644 --- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java +++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java @@ -929,7 +929,17 @@ public class SysUserServiceImpl extends ServiceImpl impl relation.setUserId(userId); relation.setTenantId(Integer.valueOf(tenantId)); relation.setStatus(CommonConstant.STATUS_1); - relationMapper.insert(relation); + + LambdaQueryWrapper sysUserTenantQueryWrapper = new LambdaQueryWrapper() + .eq(SysUserTenant::getUserId, userId) + .eq(SysUserTenant::getTenantId,Integer.valueOf(tenantId)); + SysUserTenant tenantPresent = relationMapper.selectOne(sysUserTenantQueryWrapper); + if (tenantPresent != null) { + tenantPresent.setStatus(CommonConstant.STATUS_1); + relationMapper.updateById(tenantPresent); + }else{ + relationMapper.insert(relation); + } } }else{ //是否开启系统管理模块的多租户数据隔离【SAAS多租户模式】 @@ -960,7 +970,7 @@ public class SysUserServiceImpl extends ServiceImpl impl LambdaQueryWrapper query = new LambdaQueryWrapper<>(); query.eq(SysUserTenant::getUserId, userId); //数据库的租户id - List oldTenantIds = relationMapper.getTenantIdsNoStatus(userId); + List oldTenantIds = relationMapper.getTenantIdsByUserId(userId); //如果传过来的租户id为空,那么就删除租户 if (oConvertUtils.isEmpty(relTenantIds) && CollectionUtils.isNotEmpty(oldTenantIds)) { this.deleteTenantByUserId(userId, null);