Bläddra i källkod

台州xml解析添加

rengb 5 år sedan
förälder
incheckning
ef0065895c

+ 0 - 1
kernel/src/main/java/com/lantone/qc/kernel/web/controller/QCTestController.java

@@ -6,7 +6,6 @@ import com.lantone.qc.kernel.util.CacheFileManager;
 import com.lantone.qc.kernel.util.KernelConstants;
 import com.lantone.qc.pub.jdbc.MysqlJdbc;
 import com.lantone.qc.pub.model.OutputInfo;
-import com.lantone.qc.pub.model.keys.ModelStandardKeys;
 import com.lantone.qc.pub.model.vo.MedrecVo;
 import com.lantone.qc.pub.model.vo.QueryVo;
 import com.lantone.qc.pub.res.Response;

+ 292 - 0
public/src/main/java/com/lantone/qc/pub/model/keys/StructTypeStandardKeys.java

@@ -0,0 +1,292 @@
+package com.lantone.qc.pub.model.keys;
+
+import com.google.common.collect.Lists;
+
+import java.util.List;
+
+/**
+ * @Description: 各个模块标准key,各地公用
+ * @author: rengb
+ * @time: 2020/3/5 14:50
+ */
+public class StructTypeStandardKeys {
+
+    //各大模块的标准title
+    private static final List<String> model_titles = Lists.newArrayList(
+            "会诊",
+            "手术",
+            "转科记录",
+            "入院记录",
+            "输血/血制品病程记录",
+            "危急值记录",
+            "病危通知书",
+            "死亡病例讨论记录",
+            "死亡记录",
+            "疑难病例讨论记录",
+            "医嘱信息",
+            "值班交接制度",
+            "首次病程录",
+            "病案首页",
+            "出院小结",
+            "分级护理制度",
+            "抢救记录",
+            "病重通知书",
+            "阶段小结",
+            "查房记录"
+    );
+
+
+    //会诊-会诊记录的标准key
+    public static final List<String> consultationRecord = Lists.newArrayList(
+            "会诊情况",
+            "记录时间",
+            "记录医师"
+    );
+    //会诊-会诊申请单的标准key
+    public static final List<String> consultationApplication = Lists.newArrayList();
+    //会诊-会诊结果单的标准key
+    public static final List<String> consultationResults = Lists.newArrayList();
+
+
+    //手术-术后首次病程及谈话记录的标准key
+    public static final List<String> operationDiscussion = Lists.newArrayList(
+            "记录时间",
+            "手术时间",
+            "麻醉方式",
+            "手术方式",
+            "术中诊断",
+            "手术简要经过",
+            "患者术后情况",
+            "术后处理措施",
+            "术后可能出现的并发症及预防措施",
+            "术后注意事项",
+            "谈话医师签字",
+            "患者签名",
+            "患者签名时间",
+            "被授权人/代理人签名",
+            "代理人签名时间"
+    );
+    //手术-手术记录的标准key
+    public static final List<String> operationRecord = Lists.newArrayList(
+            "手术名称",
+            "麻醉方式",
+            "术前诊断",
+            "术后诊断",
+            "手术经过"
+    );
+    //手术-术前讨论、术前小结的标准key
+    public static final List<String> preoperativeDiscussion = Lists.newArrayList(
+            "讨论时间",
+            "讨论方式",
+            "参加人员",
+            "简要病情",
+            "讨论结论",
+            "经治医师签名",
+            "经治医师签字时间",
+            "主刀医师签名",
+            "主刀医师签字时间",
+            "手术指征",
+            "麻醉方式",
+            "术前准备内容",
+            "术前术后注意事项",
+            "可能意外和防范措施",
+            "拟行术式"
+    );
+
+
+    //转科记录-转入的标准key
+    public static final List<String> transferInto = Lists.newArrayList();
+    //转科记录-转出的标准key
+    public static final List<String> transferOut = Lists.newArrayList();
+
+
+    //入院记录的标准key
+    public static final List<String> beHospitalized = Lists.newArrayList(
+            "姓名",
+            "性别",
+            "年龄",
+            "民族",
+            "职业",
+            "出生地",
+            "婚姻",
+            "联系地址",
+            "病史陈述者",
+            "出生日期",
+            "户口地址",
+            "电话",
+            "入院日期",
+            "记录日期",
+            "主诉",
+            "现病史",
+            "既往史",
+            "个人史",
+            "婚育史",
+            "月经史",
+            "家族史",
+            "体格检查",
+            "专科体格检查",
+            "辅助检查",
+            "初步诊断",
+            "修正诊断",
+            "医师签名",
+            "补充诊断"
+    );
+
+    //输血/血制品病程记录的标准key
+    public static final List<String> clinicalBlood = Lists.newArrayList(
+            "输注原因",
+            "输注时间",
+            "输注开始",
+            "输注结束",
+            "输注种类、血型、数量",
+            "输注过程",
+            "输注后效果评价",
+            "记录医师",
+            "记录时间"
+    );
+
+    //危急值记录的标准key
+    public static final List<String> crisisValueReport = Lists.newArrayList(
+            "记录时间",
+            "记录医师",
+            "患者临床诊断",
+            "危急值记录内容",
+            "报告部门",
+            "报告人姓名",
+            "报告时间",
+            "接收人姓名",
+            "接收时间",
+            "病情分析及处理",
+            "医生签名",
+            "医生签名时间"
+    );
+
+    //病危通知书的标准key
+    public static final List<String> criticallyIllNotice = Lists.newArrayList();
+
+    //死亡病例讨论记录的标准key
+    public static final List<String> deathCaseDiscuss = Lists.newArrayList(
+            "记录时间",
+            "记录医师",
+            "入院时间",
+            "死亡时间",
+            "出院时间",
+            "入院诊断",
+            "死亡诊断",
+            "讨论时间",
+            "讨论地点",
+            "参加讨论人员",
+            "讨论主持人",
+            "讨论内容",
+            "死亡原因",
+            "结论"
+    );
+
+    //死亡记录的标准key
+    public static final List<String> deathRecord = Lists.newArrayList(
+            "姓名",
+            "性别",
+            "科别",
+            "床号",
+            "病案号",
+            "年龄",
+            "入院时间",
+            "死亡时间",
+            "入院情况",
+            "发病经过",
+            "入院诊断",
+            "诊疗经过",
+            "死亡原因",
+            "死亡诊断",
+            "记录医师",
+            "记录时间"
+    );
+
+    //疑难病例讨论记录的标准key
+    public static final List<String> difficultCaseDiscuss = Lists.newArrayList(
+            "记录时间",
+            "记录医师",
+            "入院时间",
+            "入院诊断",
+            "讨论时间",
+            "讨论地点",
+            "讨论目的",
+            "主持人",
+            "参加讨论者",
+            "讨论内容",
+            "结论"
+    );
+
+    //医嘱信息的标准key
+    public static final List<String> doctorAdvice = Lists.newArrayList();
+
+    //值班交接制度的标准key
+    public static final List<String> dutyShiftSystem = Lists.newArrayList(
+            "记录时间",
+            "记录医师"
+    );
+
+    //首次病程录的标准key
+    public static final List<String> firstCourseRecord = Lists.newArrayList(
+            "病例特点",
+            "初步诊断",
+            "诊断依据",
+            "鉴别诊断",
+            "诊疗计划",
+            "记录医师",
+            "记录时间"
+    );
+
+    //病案首页
+    public static final List<String> FirstPageRecord = Lists.newArrayList();
+
+    //出院小结的标准key
+    public static final List<String> leaveHospital = Lists.newArrayList(
+            "姓名",
+            "性别",
+            "年龄",
+            "床号",
+            "入院时间",
+            "出院时间",
+            "入院诊断",
+            "出院诊断",
+            "住院天数",
+            "入院情况",
+            "诊治经过",
+            "出院情况",
+            "出院医嘱",
+            "健康教育",
+            "随访计划",
+            "温馨提示",
+            "医师签名",
+            "签名时间"
+    );
+
+    //分级护理制度的标准key
+    public static final List<String> nursingSystem = Lists.newArrayList();
+
+    //抢救记录的标准key
+    public static final List<String> rescue = Lists.newArrayList(
+            "抢救时间",
+            "记录时间",
+            "记录医师",
+            "抢救过程",
+            "参与人员"
+    );
+
+    //病重通知书的标准key
+    public static final List<String> seriouslyIllNotice = Lists.newArrayList();
+
+    //阶段小结的标准key
+    public static final List<String> stagesSummary = Lists.newArrayList();
+
+    //查房记录的标准key
+    public static final List<String> threeLevelWard = Lists.newArrayList(
+            "查房标题",
+            "病情记录",
+            "查房日期",
+            "记录时间",
+            "记录医师"
+    );
+
+}

+ 1 - 1
public/src/main/java/com/lantone/qc/pub/model/keys/ModelStandardKeys.java

@@ -9,7 +9,7 @@ import java.util.List;
  * @author: rengb
  * @time: 2020/3/5 14:50
  */
-public class ModelStandardKeys {
+public class TextTypeStandardKeys {
 
     //各大模块的标准title
     private static final List<String> model_titles = Lists.newArrayList(

+ 6 - 11
trans/src/main/java/com/lantone/qc/trans/comsis/Preproc.java

@@ -1,11 +1,6 @@
 package com.lantone.qc.trans.comsis;
 
-import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
-import com.lantone.qc.pub.model.keys.ModelStandardKeys;
-import com.lantone.qc.pub.util.FileUtil;
-import com.lantone.qc.pub.util.ListUtil;
-import com.lantone.qc.pub.util.StringUtil;
 
 import java.util.HashMap;
 import java.util.LinkedHashMap;
@@ -35,7 +30,7 @@ public class Preproc {
      * @return
      */
     public static Map<String, String> extract_doc_pub(boolean isProgress, List<String> title, String line) {
-//        line = line.replaceAll("[ *| *| *]*", "");
+        //        line = line.replaceAll("[ *| *| *]*", "");
         int pos = 0;
         int ln_pos = 0;
         String item = "";
@@ -47,8 +42,8 @@ public class Preproc {
 
         for (String key : title) {
             Pattern pattern = Pattern.compile(key);
-            Matcher matcher=pattern.matcher(line);
-            while(matcher.find()){
+            Matcher matcher = pattern.matcher(line);
+            while (matcher.find()) {
                 key = matcher.group(0);
             }
 
@@ -104,9 +99,9 @@ public class Preproc {
         }
         sections.put(lbl, item);
 
-        Map<String,String> sectionsNew = Maps.newHashMap();
-        sections.keySet().forEach(key->{
-            sectionsNew.put(key.replaceAll("[\\s\\p{Zs}]",""),sections.get(key));
+        Map<String, String> sectionsNew = Maps.newHashMap();
+        sections.keySet().forEach(key -> {
+            sectionsNew.put(key.replaceAll("[\\s\\p{Zs}]", ""), sections.get(key));
         });
 
         return sectionsNew;