diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java index fce63b11e..062b1b59e 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java @@ -36,6 +36,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.*; +import java.util.stream.Collectors; /** * 用户 业务层处理 @@ -598,13 +599,15 @@ public class SysUserServiceImpl implements ISysUserService, UserService { */ @Override public String selectNicknameByIds(String userIds) { - List list = new ArrayList<>(); - for (Long id : StringUtils.splitTo(userIds, Convert::toLong)) { - String nickname = SpringUtils.getAopProxy(this).selectNicknameById(id); - if (StringUtils.isNotBlank(nickname)) { - list.add(nickname); - } + List ids = StringUtils.splitTo(userIds, Convert::toLong); + if (CollUtil.isEmpty(ids)) { + return StringUtils.EMPTY; } + Map nickMap = selectUserNicksByIds(ids); + List list = ids.stream() + .map(nickMap::get) + .filter(StringUtils::isNotBlank) + .collect(Collectors.toList()); return StringUtils.joinComma(list); }