Pārlūkot izejas kodu

Merge remote-tracking branch 'origin/master'

kongwz 6 gadi atpakaļ
vecāks
revīzija
1df979b2e8

+ 2 - 2
graph-web/src/main/java/org/diagbot/graphWeb/work/GraphCalculate.java

@@ -77,12 +77,12 @@ public class GraphCalculate {
         }
         logger.info("页面导入的所有化验项为 :" +lisSet);
         //鉴别诊断
-        if(webDiag != null && webDiag.trim() != ""){
+        /*if(webDiag != null && webDiag.trim() != ""){
             String[] webDiagSplits = webDiag.split(",");
             String mainDiag = webDiagSplits[0];
             List<String> differentialDiagnose = neo4jAPI.getDifferentialDiagnose(mainDiag);
             responseData.setDiffDiag(differentialDiagnose);
-        }
+        }*/
         //走治疗
         if (webDiag.trim() != null && webDiag.trim() != "" && featureTypeList.contains("8")) {
             // 查找页面诊断里是否有不良反应

+ 18 - 2
graph/src/main/java/org/diagbot/graph/jdbc/Neo4jAPI.java

@@ -724,10 +724,26 @@ public class Neo4jAPI {
             }
             for (String qu : quezhen) {
                 Map<String, String> dis_res = new HashMap<>();
-                dis_res.put("确诊", "");
-                diseaseCondition.put(qu, JSON.toJSONString(dis_res));
+//                dis_res.put("确诊", "");
+//                diseaseCondition.put(qu, JSON.toJSONString(dis_res));
+                diseaseCondition.put(qu,"确诊");
                 logger.info("图谱推出的诊断为: " + qu);
             }
+            if(webDiag != null && webDiag.trim() != ""){
+                String[] webDiagSplits = webDiag.split(",");
+                String mainDiag = webDiagSplits[0];
+                query = propertiesUtil.getProperty("searchDifferentialDiagnose").replace("mainDis", mainDiag);
+                result = session.run(query);
+                while (result.hasNext()) {
+                    Record record = result.next();
+                    List<Object> coll = record.get("coll").asList();
+                    if(coll != null && coll.size()>0){
+                        for (Object o:coll) {
+                            diseaseCondition.put(o.toString().replace("\"",""),"鉴别诊断");
+                        }
+                    }
+                }
+            }
             //查找指标推送
             Set<String> indSet = new HashSet<>();
             query = propertiesUtil.getProperty("searchIndication").replace("fildList", fildList.toString());

+ 4 - 4
nlp-web/src/main/java/org/diagbot/nlp/controller/RelationExtractionController.java

@@ -31,10 +31,10 @@ public class RelationExtractionController {
     public Response extraction(String content) throws Exception {
         Response response = new Response();
         response.start();
-        RelationAnalyze relationAnalyze = new RelationAnalyze();
-        List<OutputInfo> outputInfos = relationAnalyze.analyze(content, FeatureType.parse("1"));
-//        StructureAnalyze structureAnalyze = new StructureAnalyze();
-//        List<OutputInfo> outputInfos = structureAnalyze.extract(content);
+//        RelationAnalyze relationAnalyze = new RelationAnalyze();
+//        List<OutputInfo> outputInfos = relationAnalyze.analyze(content, FeatureType.parse("1"));
+        StructureAnalyze structureAnalyze = new StructureAnalyze();
+        List<OutputInfo> outputInfos = structureAnalyze.extract(content);
         response.setData(outputInfos);
         return response;
     }

+ 4 - 2
push-web/src/main/java/org/diagbot/push/controller/AlgorithmController.java

@@ -90,11 +90,13 @@ public class AlgorithmController extends BaseController {
         //推送出的诊断信息作为参数传入知识图谱
         List<FeatureRate> pushDiags = new ArrayList<>();
         for (FeatureRate fr : bigDataResponseData.getDis()) {
-            pushDiags.add(fr);
+            if(!"鉴别诊断".equals(fr.getDesc())){
+                pushDiags.add(fr);
+            }
             logger.info("合并知识图谱、大数据后推送的诊断信息....: " + fr.getFeatureName());
         }
         searchData.setPushDiags(pushDiags);
-        bigDataResponseData.setDiffDiag(graphResponseData.getDiffDiag());
+//        bigDataResponseData.setDiffDiag(graphResponseData.getDiffDiag());
 
         bigDataResponseData.setTreat(graphResponseData.getTreat());
         //量表和指标推送