Переглянути джерело

Merge remote-tracking branch 'origin/push-dev' into push-debug

# Conflicts:
#	common-push/src/main/java/org/diagbot/common/push/cache/CacheFileManager.java
#	graph/src/main/resources/bolt.properties
#	graphdb/src/main/resources/application.yml
kongwz 5 роки тому
батько
коміт
ec353f9630

+ 14 - 2
common-push/src/main/java/org/diagbot/common/push/filter/ClassifyDiag.java

@@ -91,7 +91,7 @@ public class ClassifyDiag {
                 String desc = featureRate.getDesc();
                 Map<String,Object> d = new HashMap<>();
                 if(desc != null){
-                    JSONObject jsonObject = JSONObject.parseObject(desc);
+                   /* JSONObject jsonObject = JSONObject.parseObject(desc);
                     d = jsonObject;
                     if(d.keySet().size() == 1 && "警惕".equals(d.keySet().toArray()[0])){
                         highDiagList.add(featureName);
@@ -100,7 +100,12 @@ public class ClassifyDiag {
                         diffDiagList.add(featureName);
                     }else {
                         queDiagList.add(featureName);
-                    }
+                    }*/
+                   if(desc.contains("确诊") || desc.contains("拟诊")){
+                       queDiagList.add(featureName);
+                   }else {
+                       highDiagList.add(featureName);
+                   }
                 }else {
                     bigDiagList.add(featureName);
                 }
@@ -573,6 +578,13 @@ public class ClassifyDiag {
                     if(key != null && key.size()>0){
                         for (Object o:key) {
                             classifySet.add(o.toString());
+                            List<Object> key1 = this.getKey(diagClassifyCache, o.toString());
+                            if(key1 != null && key1.size()>0){
+                                for (Object f:key1
+                                     ) {
+                                    classifySet.add(f.toString());
+                                }
+                            }
                         }
                     }
                 }

+ 5 - 3
graph/src/main/java/org/diagbot/graph/jdbc/Neo4jAPI.java

@@ -957,9 +957,10 @@ public class Neo4jAPI {
                 }
                 //查找是否有页面急诊
                 List<String> webDiagList = new ArrayList<>();
-                for (String wd:webDiagSplits) {
+               /* for (String wd:webDiagSplits) {
                     webDiagList.add("\'"+wd+"\'");
-                }
+                }*/
+                webDiagList.add("\'"+webDiagSplits[0]+"\'");
                 query =propertiesUtil.getProperty("searchEmergency").replace("disList",webDiagList.toString());
                 result = session.run(query);
                 while (result.hasNext()) {
@@ -972,8 +973,9 @@ public class Neo4jAPI {
                     }
                     if(em == 1){
                         stringStringMap.put("页面急诊", "");
+                        diseaseCondition.put(emDis.replace("\"", ""), stringStringMap);
                     }
-                    diseaseCondition.put(emDis.replace("\"", ""), stringStringMap);
+
                 }
             }
             List<String> newDis = new ArrayList<>();

+ 3 - 2
nlp/src/main/java/org/diagbot/nlp/feature/FeatureType.java

@@ -15,7 +15,8 @@ public enum FeatureType {
     TREAT(Constants.feature_type_treat),
     HISTORY(Constants.feature_type_history),
     VITAL_INDEX(Constants.feature_type_vital_index),
-    TIME(Constants.feature_type_time);
+    TIME(Constants.feature_type_time),
+    NONE(Constants.feature_type_default);
 
     FeatureType(String value) {
         this.value = value;
@@ -54,6 +55,6 @@ public enum FeatureType {
             case Constants.feature_type_time:
                 return FeatureType.TIME;
         }
-        return FeatureType.SYMPTOM;
+        return FeatureType.NONE;
     }
 }

+ 1 - 0
nlp/src/main/java/org/diagbot/nlp/util/Constants.java

@@ -18,6 +18,7 @@ public class Constants {
     public final static String feature_type_feature = "9"; //症状描述中的特征信息 如部位、性质等
     public final static String feature_type_time = "10";    //提取时间
     public final static String feature_type_vital_index = "42"; //体征指标
+    public final static String feature_type_default = "-1"; //默认返回类型
 
     public static NegativeEnum[] symptom_type = new NegativeEnum[]{NegativeEnum.SYMPTOM, NegativeEnum.SYMPTOM_INDEX, NegativeEnum.SYMPTOM_PERFORMANCE};
     public static NegativeEnum[] unit_time_type = new NegativeEnum[]{NegativeEnum.EVENT_TIME, NegativeEnum.UNIT};