ソースを参照

判断有无重复序号

kongwz 4 年 前
コミット
4f796a0812
1 ファイル変更10 行追加3 行削除
  1. 10 3
      src/main/java/com/diagbot/facade/KlDiagnoseImportFacade.java

+ 10 - 3
src/main/java/com/diagbot/facade/KlDiagnoseImportFacade.java

@@ -32,6 +32,8 @@ import java.util.HashMap;
 import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.function.Function;
+import java.util.stream.Collectors;
 
 /**
  * @Description:
@@ -207,11 +209,16 @@ public class KlDiagnoseImportFacade {
                     sb.append(String.format("%s的最小符号%s不正确;  ", rule, minSymbol));
                 }
             }
-            //判断有无重复order
-            if(orderNums.size() != orderNums.stream().distinct().count()){
-                sb.append("有重复的序号存在;  ");
+
+            //list元素计数
+            Map<String, Long> orderNumMap = orderNums.stream().collect(Collectors.groupingBy(Function.identity(), Collectors.counting()));
+            for (Map.Entry<String,Long> on:orderNumMap.entrySet()) {
+                if(on.getValue() > 1){
+                    sb.append(on.getKey().toString()+"序号重复存在;   ");
+                }
             }
 
+
             //格式校验
             if (ListUtil.isNotEmpty(verifies)) {
                 for (String vef : verifies) {