From 2cf1565485060fd56e1f1f1cffbba7a4d70d42a6 Mon Sep 17 00:00:00 2001
From: lyh <925863403@qq.com>
Date: 星期五, 11 四月 2025 11:06:22 +0800
Subject: [PATCH] 优化dnc,设备结构树查询,优化原有代码

---
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java |   32 ++++++++++++++++++++++++++++++++
 1 files changed, 32 insertions(+), 0 deletions(-)

diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java
index d2d6455..2518957 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java
@@ -3,6 +3,7 @@
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
@@ -762,4 +763,35 @@
 		List<UserSelector> collect = sysUsers.stream().map(user -> new UserSelector(user.getId(), user.getUsername(), user.getRealname())).collect(Collectors.toList());
 		return collect;
 	}
+
+	/**
+	 * 鏍规嵁鐢ㄦ埛鍚嶆壒閲忚幏鍙栫湡瀹炲鍚嶆槧灏�
+	 * @param userNames 鐢ㄦ埛鍚嶅垪琛�
+	 * @return 鐢ㄦ埛鍚�->鐪熷疄濮撳悕鐨勬槧灏勶紙涓嶅瓨鍦ㄦ椂鍊间负null锛�
+	 */
+	@Override
+	public Map<String, String> getUserRealNamesByUserNames(List<String> userNames) {
+		if (CollectionUtils.isEmpty(userNames)) {
+			return Collections.emptyMap();
+		}
+
+		// 鍘婚噸骞惰繃婊ょ┖鍊�
+		Set<String> uniqueNames = userNames.stream()
+				.filter(StringUtils::isNotBlank)
+				.collect(Collectors.toSet());
+		if (uniqueNames.isEmpty()) {
+			return Collections.emptyMap();
+		}
+
+		// 鎵归噺鏌ヨ锛堣嚜鍔ㄥ鐞咺N璇彞鍒嗙墖锛�
+		List<SysUser> users = userMapper.selectUsersByNames(new ArrayList<>(uniqueNames));
+
+		// 鏋勫缓鏄犲皠鍏崇郴
+		return users.stream()
+				.collect(Collectors.toMap(
+						SysUser::getUsername,
+						SysUser::getRealname,
+						(existing, replacement) -> existing // 閲嶅閿鐞�
+				));
+	}
 }

--
Gitblit v1.9.3