|
@@ -36,7 +36,9 @@ public class HandleData {
|
|
|
List<Map<String, Object>> reagentMainList = new ArrayList<>();
|
|
List<Map<String, Object>> reagentMainList = new ArrayList<>();
|
|
|
List<Map<String, Object>> reagentSubList = new ArrayList<>();
|
|
List<Map<String, Object>> reagentSubList = new ArrayList<>();
|
|
|
long sequenceCounter = 0;
|
|
long sequenceCounter = 0;
|
|
|
- for (Map<String, Object> lisReagent : lisReagentList) {
|
|
|
|
|
|
|
+ // 按 reagentCode + newBatchNumber 去重,保留第一条
|
|
|
|
|
+ List<Map<String, Object>> deduplicatedList = deduplicateReagentList(lisReagentList);
|
|
|
|
|
+ for (Map<String, Object> lisReagent : deduplicatedList) {
|
|
|
List<String> pushUserList = new ArrayList<>();
|
|
List<String> pushUserList = new ArrayList<>();
|
|
|
String GroupCode = String.valueOf(lisReagent.get("GroupCode"));
|
|
String GroupCode = String.valueOf(lisReagent.get("GroupCode"));
|
|
|
pushUserList = ibpsRepository.getPushList(GroupCode);
|
|
pushUserList = ibpsRepository.getPushList(GroupCode);
|
|
@@ -119,6 +121,18 @@ public class HandleData {
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ private List<Map<String, Object>> deduplicateReagentList(List<Map<String, Object>> lisReagentList) {
|
|
|
|
|
+ return new ArrayList<>(lisReagentList.stream().collect(Collectors.toMap(
|
|
|
|
|
+ item -> {
|
|
|
|
|
+ String reagentCode = String.valueOf(item.get("ReagentNumber"));
|
|
|
|
|
+ String newBatchNumber = String.valueOf(item.get("NewBatchNumber"));
|
|
|
|
|
+ return reagentCode + "_" + newBatchNumber;
|
|
|
|
|
+ },
|
|
|
|
|
+ item -> item,
|
|
|
|
|
+ (existing, replacement) -> existing,
|
|
|
|
|
+ LinkedHashMap::new
|
|
|
|
|
+ )).values());
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
public void updateReagentCode() {
|
|
public void updateReagentCode() {
|
|
|
// 1. 获取数据
|
|
// 1. 获取数据
|