From 77d6bc824c42283614aad59288095247c0d6797c Mon Sep 17 00:00:00 2001 From: zhy <17877871893@163.com> Date: Sun, 7 Sep 2025 17:27:28 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BD=93=E6=B5=8B=E5=AF=BC=E5=85=A5=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/srs/common/utils/listFunc.java | 59 ++++++++++--------- .../service/impl/SrsSportTestServiceImpl.java | 13 ++-- 2 files changed, 38 insertions(+), 34 deletions(-) diff --git a/srs-common/src/main/java/com/srs/common/utils/listFunc.java b/srs-common/src/main/java/com/srs/common/utils/listFunc.java index a3153d7..41d39c5 100644 --- a/srs-common/src/main/java/com/srs/common/utils/listFunc.java +++ b/srs-common/src/main/java/com/srs/common/utils/listFunc.java @@ -1,9 +1,6 @@ package com.srs.common.utils; -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.function.Function; import java.util.stream.Collectors; @@ -29,37 +26,41 @@ public class listFunc { }).collect(Collectors.toList()); } - public static List subList(List actualList, List expectList){ - List list1 = actualList.stream().map(String::new).collect(Collectors.toList()); - List list2 = expectList.stream().map(String::new).collect(Collectors.toList()); + /** + * 获取需要添加的元素(在list1中存在但在list2中不存在的元素) + * @param list1 待导入的列表 + * @param list2 已存在的列表 + * @return 需要添加的元素列表 + */ + public static List subList(List list1, List list2) { + List result = new ArrayList<>(); + Set set2 = new HashSet<>(list2); // 使用HashSet提高查找效率 - if(list2.size() == 0){ - return list1; - } - if(list1.containsAll(list2) && list2.containsAll(list1)){ - return new ArrayList<>(); - } else { - List temp = list1.stream() - .filter(x->list2.contains(x)).collect(Collectors.toList()); - list1.removeAll(temp); - return list1; + for (String item : list1) { + if (!set2.contains(item)) { + result.add(item); + } } + return result; } /** - * 两个列表的交集 - * @author zhy - * @date 2023-08-18 09:59:34 - * @param list1 - * @param list2 - * @return - **/ - public static List intersectList(List list1, List list2){ - Map tempMap = list2.parallelStream().collect(Collectors.toMap(Function.identity(), Function.identity(), (oldData, newData) -> newData)); - return list1.parallelStream().filter(str->{ - return tempMap.containsKey(str); - }).collect(Collectors.toList()); + * 获取需要修改的元素(两个列表中都存在的元素) + * @param list1 待导入的列表 + * @param list2 已存在的列表 + * @return 需要修改的元素列表 + */ + public static List intersectList(List list1, List list2) { + List result = new ArrayList<>(); + Set set2 = new HashSet<>(list2); // 使用HashSet提高查找效率 + + for (String item : list1) { + if (set2.contains(item)) { + result.add(item); + } + } + return result; } diff --git a/srs-comprehensive/src/main/java/com/srs/comprehensive/service/impl/SrsSportTestServiceImpl.java b/srs-comprehensive/src/main/java/com/srs/comprehensive/service/impl/SrsSportTestServiceImpl.java index cfc4f51..684814a 100644 --- a/srs-comprehensive/src/main/java/com/srs/comprehensive/service/impl/SrsSportTestServiceImpl.java +++ b/srs-comprehensive/src/main/java/com/srs/comprehensive/service/impl/SrsSportTestServiceImpl.java @@ -7,6 +7,7 @@ import java.util.stream.Collectors; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.srs.common.annotation.Excel; import com.srs.common.core.domain.AjaxResult; import com.srs.common.core.domain.BaseEntity; @@ -38,7 +39,7 @@ import static org.apache.commons.lang3.SystemUtils.getUserName; * @date 2023-06-28 */ @Service -public class SrsSportTestServiceImpl implements ISrsSportTestService +public class SrsSportTestServiceImpl extends ServiceImpl implements ISrsSportTestService { @Autowired private SrsSportTestMapper srsSportTestMapper; @@ -274,10 +275,12 @@ public class SrsSportTestServiceImpl implements ISrsSportTestService } //修改体能测试 if (needUpdateQuery.size() != 0) { - //单条 - for (SrsSportTest srsSportTest:needUpdateQuery){ - srsSportTestMapper.updateSrsSportTest(srsSportTest); - } + this.updateBatchById(needUpdateQuery); +// //单条 +// for (SrsSportTest srsSportTest:needUpdateQuery){ +// +// srsSportTestMapper.updateSrsSportTest(srsSportTest); +// } //切片批量 // int userListSize=needUpdateQuery.size(); // int sum=userListSize/1000;