bug6718-导入用户表格存在相同的手机号

This commit is contained in:
sxu 2025-07-08 15:59:17 +08:00
parent bda5bfac98
commit 29d48e1104
1 changed files with 10 additions and 4 deletions

View File

@ -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<SysUser> userList) {
Map<String, Long> phoneCountMap = userList.stream()
.collect(Collectors.groupingBy(SysUser::getPhonenumber, Collectors.counting()));
return phoneCountMap.values().stream().anyMatch(count -> count > 1);
}
/**
* @param userId
* @return