Преглед изворни кода

长兴出院小结对接修改

rengb пре 5 година
родитељ
комит
0af5d2312b

+ 1 - 0
trans/src/main/java/com/lantone/qc/trans/changx/ChangxBeHospitalizedDocTrans.java

@@ -40,6 +40,7 @@ public class ChangxBeHospitalizedDocTrans extends ModelDocTrans {
         sourceMap.put("体格检查(二)", tgjc);
         Map<String, String> structureMap = OrdinaryAssistant.mapKeyContrast(sourceMap, keyContrasts);
         BeHospitalizedDoc beHospitalizedDoc = ModelDocGenerate.beHospitalizedDocGen(structureMap);
+        beHospitalizedDoc.setText(content);
         beHospitalizedDoc.setPageData((Map) sourceMap);
         return beHospitalizedDoc;
     }

+ 27 - 22
trans/src/main/java/com/lantone/qc/trans/changx/ChangxLeaveHospitalDocTrans.java

@@ -2,12 +2,11 @@ package com.lantone.qc.trans.changx;
 
 import com.google.common.collect.Lists;
 import com.lantone.qc.pub.model.doc.LeaveHospitalDoc;
-import com.lantone.qc.pub.model.keys.TextTypeStandardKeys;
 import com.lantone.qc.pub.model.vo.MedrecVo;
-import com.lantone.qc.pub.util.ListUtil;
 import com.lantone.qc.trans.ModelDocTrans;
+import com.lantone.qc.trans.changx.util.CxXmlUtil;
 import com.lantone.qc.trans.comsis.ModelDocGenerate;
-import com.lantone.qc.trans.comsis.Preproc;
+import com.lantone.qc.trans.comsis.OrdinaryAssistant;
 
 import java.util.List;
 import java.util.Map;
@@ -22,28 +21,34 @@ public class ChangxLeaveHospitalDocTrans extends ModelDocTrans {
     @Override
     public LeaveHospitalDoc extract(MedrecVo medrecVo) {
         String content = ((List<String>) medrecVo.getContent().get("content")).get(0);
-
-        List<String> targetTitles = Lists.newArrayList();
-        List<String> sourceTitles = ListUtil.isEmpty(medrecVo.getLabel()) ? TextTypeStandardKeys.leaveHospital : medrecVo.getLabel();
-        sourceTitles.forEach(sourceTitle -> {
-            String targetTitle = "";
-            for (int index = 0; index < sourceTitle.length(); index++) {
-                if (index == sourceTitle.length() - 1) {
-                    targetTitle += sourceTitle.substring(index, index + 1);
-                } else {
-                    targetTitle += sourceTitle.substring(index, index + 1) + "[\\s\\p{Zs}]*";
-                }
-            }
-            targetTitles.add(targetTitle);
-        });
-
-        Map<String, String> sourceMap = Preproc.extract_doc_pub(false, targetTitles, content);
-
-        LeaveHospitalDoc leaveHospitalDoc = ModelDocGenerate.leaveHospitalDocGen(sourceMap);
+        Map<String, String> sourceMap = CxXmlUtil.firstLevelNodeValue("//DocObjContent", content);
+        Map<String, String> structureMap = OrdinaryAssistant.mapKeyContrast(sourceMap, keyContrasts);
+        LeaveHospitalDoc leaveHospitalDoc = ModelDocGenerate.leaveHospitalDocGen(structureMap);
         leaveHospitalDoc.setText(content);
         leaveHospitalDoc.setPageData((Map) sourceMap);
-
         return leaveHospitalDoc;
     }
 
+    private List<String> keyContrasts = Lists.newArrayList(
+            "患者姓名=姓名",
+            "性别=",
+            "病区++++病区名称=",
+            "床号=",
+            "病案号++++住院号=",
+            "年龄=",
+            "入院日期=入院时间",
+            "出院日期=出院时间",
+            "入院诊断=入院诊断",
+            "出院诊断=出院诊断",
+            "实际住院天数=住院天数",
+            "入院情况=入院情况",
+            "诊治经过++++入院诊治经过=诊治经过",
+            "出院情况=",
+            "出院医嘱=",
+            "健康教育=",
+            "随访计划=",
+            "签名++++=医师签名",
+            "签名时间=签名时间"
+    );
+
 }