瀏覽代碼

诊断拆分兼容

chengyao 4 年之前
父節點
當前提交
0230a8d914
共有 1 個文件被更改,包括 24 次插入7 次删除
  1. 24 7
      src/main/java/com/diagbot/facade/ConsoleFacade.java

+ 24 - 7
src/main/java/com/diagbot/facade/ConsoleFacade.java

@@ -3070,11 +3070,16 @@ public class ConsoleFacade {
 
 
    static Boolean isContainDiagnose(ReBeHosMergeDTO record){
-        String lastDiagnoseName = record.getLastDiagnoseName().replace(",","、").replace(",","、");
-
-        String diagnose = record.getDiagnose().replace(",","、").replace(",","、");
-        Set lastDiagnoseNames = strTranListMethod(lastDiagnoseName);
-        Set diagnoses = strTranListMethod(diagnose);
+        String lastDiagnoseName = replace(record.getLastDiagnoseName());
+        String diagnose =replace(record.getDiagnose());
+        String lastDiagnose = replace(record.getLastDiagnose());
+        String diagnoseName =replace(record.getDiagnoseName());
+        record.setLastDiagnoseName(lastDiagnoseName);
+        record.setDiagnose(diagnose);
+        record.setLastDiagnose(lastDiagnose);
+        record.setDiagnoseName(diagnoseName);
+        Set lastDiagnoseNames = strTranListMethod(record.getLastDiagnoseName());
+        Set diagnoses = strTranListMethod(record.getDiagnose());
         long count = diagnoses.stream().filter(obj ->null != lastDiagnoseNames && null != obj && lastDiagnoseNames.contains(obj)).count();
         if(count<=0){
             return false;
@@ -3082,14 +3087,26 @@ public class ConsoleFacade {
         return true;
     };
 
+    static String replace(String str){
+        if(StringUtils.isEmpty(str)){
+            return null;
+        }
+        str = str.trim().replace(",", ";").replace(",", ";")
+                 .replace("、", ";").replace(";", ";")
+                 .replace("|", ";").replace(" ", ";");
+
+       return str;
+    }
     static Set strTranListMethod(String str){
         Set<String> names = new HashSet<>();
-        if(str.contains("、")){
-            for (String diagnoseName : str.split("、")) {
+        if(StringUtils.isNotEmpty(str)){
+        if(str.contains(";") && str.length()>1){
+            for (String diagnoseName : str.split(";")) {
                 names.add(diagnoseName);
             }
         }else{
             names.add(str);
+             }
         }
         return names;
     };