소스 검색

北仑出院其他诊断不完全(出院小结的出院诊断切词)

fangqw 4 년 전
부모
커밋
4d233dabc1
1개의 변경된 파일21개의 추가작업 그리고 2개의 파일을 삭제
  1. 21 2
      kernel/src/main/java/com/lantone/qc/kernel/catalogue/beilun/firstpagerecord/FIRP0178.java

+ 21 - 2
kernel/src/main/java/com/lantone/qc/kernel/catalogue/beilun/firstpagerecord/FIRP0178.java

@@ -16,7 +16,9 @@ import com.lantone.qc.pub.util.StringUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
+import java.lang.reflect.Array;
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.List;
 import java.util.Map;
 
@@ -51,12 +53,17 @@ public class FIRP0178 extends QCCatalogue {
                 return;
             }
 
-            DiagLabel leaveDiagLabel = inputInfo.getLeaveHospitalDoc().getLeaveDiagLabel();
+            /*DiagLabel leaveDiagLabel = inputInfo.getLeaveHospitalDoc().getLeaveDiagLabel();
             if (leaveDiagLabel == null) {
                 return;
             }
             List<Diag> leaveDiags = leaveDiagLabel.getDiags();
-            List<String> leaveDiagsStr = putDiagToList(leaveDiags);
+            List<String> leaveDiagsStr = putDiagToList(leaveDiags);*/
+            //出院小结得出院诊断,模型提取出现问题,需要手动以1.2.3.为界限切开
+            Map<String, String> leavehospitalStructureMap = inputInfo.getLeaveHospitalDoc().getStructureMap();
+            List<String> leaveDiagsStr = new ArrayList<>();
+            String leavediag = leavehospitalStructureMap.get("出院诊断");
+            leaveDiagsStr = cut(leaveDiagsStr, leavediag);
 
             /* 修改为疾病相似度模型 */
             ModelAI modelAI = new ModelAI();
@@ -110,4 +117,16 @@ public class FIRP0178 extends QCCatalogue {
         }
         return diags;
     }
+
+    private List<String> cut(List<String> leaveDiagsStr, String leavediag) {
+        if (leavediag != null) {
+            String[] leavediags = leavediag.split(",?[0-9].");
+            for (String string : leavediags) {
+                if (!string.isEmpty()) {
+                    leaveDiagsStr.add(string);
+                }
+            }
+        }
+        return leaveDiagsStr;
+    }
 }