From 29d48e1104b3f3917a4005dfaf1e7302e2f791ff Mon Sep 17 00:00:00 2001 From: sxu <602087911@qq.com> Date: Tue, 8 Jul 2025 15:59:17 +0800 Subject: [PATCH] =?UTF-8?q?bug6718-=E5=AF=BC=E5=85=A5=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E8=A1=A8=E6=A0=BC=E5=AD=98=E5=9C=A8=E7=9B=B8=E5=90=8C=E7=9A=84?= =?UTF-8?q?=E6=89=8B=E6=9C=BA=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/service/impl/SysUserServiceImpl.java | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java index 4cbd7a4..621ad34 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/service/impl/SysUserServiceImpl.java @@ -38,10 +38,7 @@ import org.springframework.util.CollectionUtils; import javax.annotation.Resource; import javax.validation.Validator; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Objects; +import java.util.*; import java.util.stream.Collectors; /** @@ -609,6 +606,9 @@ public class SysUserServiceImpl implements ISysUserService { if (StringUtils.isNull(userList) || userList.size() == 0) { throw new ServiceException("导入用户数据不能为空!"); } + if (hasDuplicatePhonenumbers(userList)) { + throw new ServiceException("导入用户数据存在相同的手机号!"); + } int successNum = 0; int failureNum = 0; StringBuilder successMsg = new StringBuilder(); @@ -663,6 +663,12 @@ public class SysUserServiceImpl implements ISysUserService { return successMsg.toString(); } + public boolean hasDuplicatePhonenumbers(List userList) { + Map phoneCountMap = userList.stream() + .collect(Collectors.groupingBy(SysUser::getPhonenumber, Collectors.counting())); + return phoneCountMap.values().stream().anyMatch(count -> count > 1); + } + /** * @param userId * @return