Pārlūkot izejas kodu

1、用户校验空问题
2、邀请码跨租户查询数据绑定

liyanbo 1 mēnesi atpakaļ
vecāks
revīzija
d19fab5d37

+ 10 - 3
byzs-module-system/src/main/java/cn/iocoder/byzs/module/system/service/invitecode/InviteCodeServiceImpl.java

@@ -5,6 +5,7 @@ import cn.iocoder.byzs.framework.common.pojo.PageParam;
 import cn.iocoder.byzs.framework.common.pojo.PageResult;
 import cn.iocoder.byzs.framework.common.util.object.BeanUtils;
 import cn.iocoder.byzs.framework.common.util.string.StrUtils;
+import cn.iocoder.byzs.framework.tenant.core.util.TenantUtils;
 import cn.iocoder.byzs.module.system.controller.admin.invitecode.vo.InviteCodePageReqVO;
 import cn.iocoder.byzs.module.system.controller.admin.invitecode.vo.InviteCodeRespVO;
 import cn.iocoder.byzs.module.system.controller.admin.invitecode.vo.InviteCodeSaveReqVO;
@@ -180,17 +181,23 @@ public class InviteCodeServiceImpl implements InviteCodeService {
         // 2. 转换为RespVO并填充关联数据
         // 取所有角色ID
         Set<Long> roleIdSet = list.stream().map(InviteCodeDO::getRoleIds).filter(Objects::nonNull).flatMap(roleIds -> StrUtils.splitToLongSet(roleIds).stream()).collect(Collectors.toSet());
-        List<RoleDO> roleList = roleIdSet.isEmpty() ? Collections.emptyList() : roleMapper.selectBatchIds(roleIdSet);
+        List<RoleDO> roleList = roleIdSet.isEmpty() ? Collections.emptyList() : TenantUtils.executeIgnore(() ->
+                roleMapper.selectBatchIds(roleIdSet)
+        );
         Map<Long, String> roleMap = roleList.stream().collect(Collectors.toMap(RoleDO::getId, RoleDO::getName));
 
         // 取所有用户ID
         Set<Long> userIdSet = list.stream().map(InviteCodeDO::getUseUserId).filter(Objects::nonNull).collect(Collectors.toSet());
-        List<AdminUserDO> userList = userIdSet.isEmpty() ? Collections.emptyList() : userMapper.selectBatchIds(userIdSet);
+        List<AdminUserDO> userList = userIdSet.isEmpty() ? Collections.emptyList() : TenantUtils.executeIgnore(() ->
+                userMapper.selectBatchIds(userIdSet)
+        );
         Map<Long, String> userMap = userList.stream().collect(Collectors.toMap(AdminUserDO::getId, AdminUserDO::getNickname));
 
         // 取所有租户ID
         Set<Long> userTenantIdSet = list.stream().map(InviteCodeDO::getUseUserTenantId).filter(Objects::nonNull).collect(Collectors.toSet());
-        List<TenantDO> tenantList = userTenantIdSet.isEmpty() ? Collections.emptyList() : tenantMapper.selectBatchIds(userTenantIdSet);
+        List<TenantDO> tenantList = userTenantIdSet.isEmpty() ? Collections.emptyList() : TenantUtils.executeIgnore(() ->
+                tenantMapper.selectBatchIds(userTenantIdSet)
+        );
         Map<Long, String> tenantMap = tenantList.stream().collect(Collectors.toMap(TenantDO::getId, TenantDO::getName));
 
         // 转换为RespVO

+ 3 - 0
byzs-module-system/src/main/java/cn/iocoder/byzs/module/system/service/user/AdminUserServiceImpl.java

@@ -391,6 +391,9 @@ public class AdminUserServiceImpl implements AdminUserService {
         List<AdminUserDO> userList = TenantUtils.executeIgnore(() ->
                 userMapper.selectListByUsername(username)
         );
+        if (CollUtil.isEmpty(userList)) {
+            return;
+        }
         user = userList.get(0);
         if (user == null) {
             return;

+ 7 - 2
byzs-module-system/src/main/java/cn/iocoder/byzs/module/system/service/userwebexpiretime/UserWebExpireTimeServiceImpl.java

@@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollUtil;
 import cn.iocoder.byzs.framework.common.pojo.PageParam;
 import cn.iocoder.byzs.framework.common.pojo.PageResult;
 import cn.iocoder.byzs.framework.common.util.object.BeanUtils;
+import cn.iocoder.byzs.framework.tenant.core.util.TenantUtils;
 import cn.iocoder.byzs.module.system.controller.admin.userwebexpiretime.vo.UserWebExpireTimePageReqVO;
 import cn.iocoder.byzs.module.system.controller.admin.userwebexpiretime.vo.UserWebExpireTimeRespVO;
 import cn.iocoder.byzs.module.system.controller.admin.userwebexpiretime.vo.UserWebExpireTimeSaveReqVO;
@@ -112,12 +113,16 @@ public class UserWebExpireTimeServiceImpl implements UserWebExpireTimeService {
         // 2. 转换为RespVO并填充关联数据
         // 取所有用户ID
         Set<Long> userIdSet = list.stream().map(UserWebExpireTimeDO::getUserId).filter(Objects::nonNull).collect(Collectors.toSet());
-        List<AdminUserDO> userList = userIdSet.isEmpty() ? Collections.emptyList() : userMapper.selectBatchIds(userIdSet);
+        List<AdminUserDO> userList = userIdSet.isEmpty() ? Collections.emptyList() : TenantUtils.executeIgnore(() ->
+                userMapper.selectBatchIds(userIdSet)
+        );
         Map<Long, String> userMap = userList.stream().collect(Collectors.toMap(AdminUserDO::getId, AdminUserDO::getNickname));
 
         // 取所有租户ID
         Set<Long> tenantIdSet = userList.stream().map(AdminUserDO::getTenantId).filter(Objects::nonNull).collect(Collectors.toSet());
-        List<TenantDO> tenantList = tenantIdSet.isEmpty() ? Collections.emptyList() : tenantMapper.selectBatchIds(tenantIdSet);
+        List<TenantDO> tenantList = tenantIdSet.isEmpty() ? Collections.emptyList() : TenantUtils.executeIgnore(() ->
+                tenantMapper.selectBatchIds(tenantIdSet)
+        );
         Map<Long, String> tenantMap = tenantList.stream().collect(Collectors.toMap(TenantDO::getId, TenantDO::getName));
 
         // 转换为RespVO