Browse Source

归一bug:归一后图谱和大数据推得诊断有重复,大数据去重

kongwz 5 năm trước cách đây
mục cha
commit
7335e5f92f

+ 11 - 1
common-push/src/main/java/org/diagbot/common/push/filter/ClassifyDiag.java

@@ -116,11 +116,12 @@ public class ClassifyDiag {
          * 这里处理一下可能诊断剔除的功能
          * 如果图谱推出的诊断和可能诊断有层级关系,就把对应的可能诊断剔除
          */
+        Set<String> queSet =null;
         List<String> newBIgDiagList = this.removeKeng(queDiagList, bigDiagList);
         System.out.println("图谱归一前数据 :"+queDiagList);
         if(queDiagList != null && queDiagList.size()>0){
             //图谱归一 ,图谱sign =0,大数据sign = 1
-            Set<String> queSet = this.diagProcess(queDiagList,0);
+            queSet = this.diagProcess(queDiagList,0);
             System.out.println("图谱归一后的数据    :"+queSet);
             if(queSet != null && queSet.size()>0){
                 for (String queDis:queSet) {
@@ -144,6 +145,15 @@ public class ClassifyDiag {
         if(newBIgDiagList!= null && newBIgDiagList.size()>0){
             //大数据的可能诊断归一和排序
             List<FeatureRate> featureRates = this.sortFeatureList(newBIgDiagList, updateFeatures);
+            //把可能诊断中和图谱相同的诊断去除
+            if(featureRates != null && featureRates.size()>0 && queSet !=null){
+                for (FeatureRate f:featureRates) {
+                    if(queSet.contains(f.getFeatureName())){
+                        featureRates.remove(f);
+                        continue;
+                    }
+                }
+            }
             finalDiagList.addAll(featureRates);
         }