Просмотр исходного кода

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

hujing 5 лет назад
Родитель
Сommit
9c2b35e5e9

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

@@ -34,6 +34,7 @@ public class GraphCalculate {
         }
     }
     private static Neo4jAPI neo4jAPI ;
+    private static Map<String,List<String>> mergeMap;
 
     /**
      * 返回诊断和治疗
@@ -84,7 +85,6 @@ public class GraphCalculate {
         //处理血肌酐
         List<PreResult> lisArr = searchData.getLis();
         String serumCreatinine = processSerumcreatinine(lisArr);
-
         //计算诊断
         Map<String, Object> condition =null;
         Map<String, Map<String, String>> excludelist = null;
@@ -158,6 +158,7 @@ public class GraphCalculate {
                     idns.addAll(idn);
                 }
             }
+            mergerIndex(newindSet1,mergeMap);
             if(newindSet1 != null && newindSet1.size()>0){
                 for (String ind:newindSet1
                      ) {
@@ -186,6 +187,38 @@ public class GraphCalculate {
         return responseData;
     }
 
+    /**
+     * 合并指标
+     * @param newindSet
+     * @return
+     */
+    private Set<String> mergerIndex(Set<String> newindSet,Map<String,List<String>> merge){
+        Map<String, List<String>> mergeInit = mergeInit(merge);
+        if(newindSet != null && newindSet.size()>0){
+            for (Map.Entry<String, List<String>> ds:mergeInit.entrySet()) {
+                String key = ds.getKey();
+                List<String> values = ds.getValue();
+                boolean b = newindSet.retainAll(values);
+                if(newindSet.contains(key) && b ){
+                    newindSet.remove(key);
+
+                }
+            }
+
+        }
+        return newindSet;
+    }
+    private Map<String,List<String>> mergeInit(Map<String,List<String>> merge){
+        if(merge == null){
+            merge = new HashMap<>();
+            List<String> otherIn = new ArrayList<>();
+            otherIn.add("2型糖尿病");
+            otherIn.add("1型糖尿病");
+            otherIn.add("成人迟发性自身免疫糖尿病");
+            merge.put("糖尿病",otherIn);
+        }
+        return merge;
+    }
     private Set<String> getQueNiDiagnose(Map<String, Object> condition) {
         Set<String> diseaseSet =new HashSet<>();
         if(condition != null){

+ 6 - 8
graph-web/src/main/java/org/diagbot/graphWeb/work/ScaleCalculate.java

@@ -215,18 +215,16 @@ public class ScaleCalculate {
                     }
                 }
                 double eGFR3 = 141 * Math.pow((scr / k), a) * Math.pow(0.993, age) * denger;
-                String unit = "ml/min•1.73m2";
+                String unit = "min•1.73㎡";
                 String text = null;
-                if(eGFR3 > 0 && eGFR3 < 15) {
-                    text = "肾功能衰竭";
-                } else if (eGFR3 >= 15 && eGFR3 <= 29) {
-                    text = "重度下降";
+                if (eGFR3 > 0 && eGFR3 <= 29) {
+                    text = "重度肾功能不全";
                 } else if (eGFR3 > 29 && eGFR3 < 60) {
-                    text = "中度下降";
+                    text = "中度肾功能不全";
                 } else if (eGFR3 >= 60 && eGFR3 <= 89) {
-                    text = "轻度下降";
+                    text = "轻度肾功能不全";
                 } else if (eGFR3 > 89) {
-                    text = "正常或肾损伤代偿期";
+                    text = "肾功能正常";
                 }
 
                 valueResult.put("name", "GFR值");

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

@@ -1661,9 +1661,15 @@ public class Neo4jAPI {
                 }
                 gongshiJson.put("result", resultList);
                 medicalIndicationDetail2.setContent(gongshiJson);
-                medicalIndicationDetailList.add(medicalIndicationDetail1);
-                medicalIndicationDetailList.add(medicalIndicationDetail2);
-                medicalIndicationDetailList.add(medicalIndicationDetail3);
+                if(medicalIndicationDetail1 != null){
+                    medicalIndicationDetailList.add(medicalIndicationDetail1);
+                }
+                if(medicalIndicationDetail2 !=null){
+                    medicalIndicationDetailList.add(medicalIndicationDetail2);
+                }
+                if(medicalIndicationDetail3 !=null){
+                    medicalIndicationDetailList.add(medicalIndicationDetail3);
+                }
                 medicalIndication.setDetails(medicalIndicationDetailList);
                 medicalIndicationList.add(medicalIndication);
             }