kongwz %!s(int64=5) %!d(string=hai) anos
pai
achega
6e5cb24cbc

+ 10 - 5
common-push/src/main/java/org/diagbot/common/push/filter/ClassifyDiag.java

@@ -60,12 +60,17 @@ public class ClassifyDiag {
         List<String> excludeDiag = graphResponseData.getExcludeDiag();
         //将需要排除的诊断从列表中删除
         List<FeatureRate> updateFeatures = new ArrayList<>();
-        for(int j = 0;j<graphFeatures.size();j++){
-            if(excludeDiag.indexOf(graphFeatures.get(j).getFeatureName()) == -1){
-                updateFeatures.add(graphFeatures.get(j));
+        if(excludeDiag != null){
+            for(int j = 0;j<graphFeatures.size();j++){
+                if(excludeDiag.indexOf(graphFeatures.get(j).getFeatureName()) == -1){
+                    updateFeatures.add(graphFeatures.get(j));
+                }
             }
+            return updateFeatures;
+        }else {
+            return graphFeatures;
         }
-        return updateFeatures;
+
     }
 
     /**
@@ -125,7 +130,7 @@ public class ClassifyDiag {
                     }else {
                         FeatureRate featureRate = new FeatureRate();
                         featureRate.setFeatureName(queDis);
-                        featureRate.setDesc("{\\\"确诊\\\":\\\"\\\"}");
+                        featureRate.setDesc("{\"确诊\":\"\"}");
                         featureRate.setExtraProperty(diagDepartCache.get(queDis));
                         featureRate.setSource("neo4j");
                         finalDiagList.add(featureRate);

+ 8 - 10
push-web/src/main/java/org/diagbot/push/controller/AlgorithmController.java

@@ -144,16 +144,7 @@ public class AlgorithmController extends BaseController {
             }
             List<FeatureRate> graphFeatureRates = graphResponseData.getDis();
             graphFeatureRates.addAll(disFeatureRates);
-            //把所有的诊断拿出来经过过滤层过滤
-            ClassifyDiag classifyDiag = new ClassifyDiag();
-            List<FeatureRate> upfes = classifyDiag.filterDiag(graphResponseData, graphFeatureRates);
-            List<FeatureRate> classify = classifyDiag.diagClassify(upfes);
-            List<FeatureRate> featureRates = classifyDiag.sortDiag(classify);
-//            List<FeatureRate> classifyFeature = classifyDiag.diagClassify(upfes);
-//            FilterSortDiag filterSortDiag = new FilterSortDiag();
-//            List<FeatureRate> filterDiagList = filterSortDiag.filterDiag(graphResponseData, graphFeatureRates);
-//            List<FeatureRate> filterSortDiagList = filterSortDiag.sortDiag(filterDiagList);
-            bigDataResponseData.setDis(featureRates);
+            bigDataResponseData.setDis(graphFeatureRates);
         }
         //推送出的诊断信息作为参数传入知识图谱
         List<FeatureRate> pushDiags = new ArrayList<>();
@@ -186,6 +177,13 @@ public class AlgorithmController extends BaseController {
         if(featureList.contains(Constants.feature_type_vital)){
             bigDataResponseData.setVitals(vitals);
         }
+
+        //把所有的诊断拿出来经过过滤层过滤
+        ClassifyDiag classifyDiag = new ClassifyDiag();
+        List<FeatureRate> upfes = classifyDiag.filterDiag(graphResponseData, pushDiags);
+        List<FeatureRate> classify = classifyDiag.diagClassify(upfes);
+        List<FeatureRate> featureRates = classifyDiag.sortDiag(classify);
+        bigDataResponseData.setDis(featureRates);
         response.setData(bigDataResponseData);
         return response;
     }