Ver código fonte

手术文档更新

rengb 5 anos atrás
pai
commit
804612b7f9

+ 3 - 6
public/src/main/java/com/lantone/qc/pub/model/InputInfo.java

@@ -14,11 +14,10 @@ import com.lantone.qc.pub.model.doc.FirstCourseRecordDoc;
 import com.lantone.qc.pub.model.doc.FirstPageRecordDoc;
 import com.lantone.qc.pub.model.doc.LeaveHospitalDoc;
 import com.lantone.qc.pub.model.doc.NursingSystemDoc;
-import com.lantone.qc.pub.model.doc.OperationDiscussionDoc;
-import com.lantone.qc.pub.model.doc.PreoperativeDiscussionDoc;
 import com.lantone.qc.pub.model.doc.RescueDoc;
 import com.lantone.qc.pub.model.doc.SeriouslyIllNoticeDoc;
 import com.lantone.qc.pub.model.doc.ThreeLevelWardDoc;
+import com.lantone.qc.pub.model.doc.operation.OperationDoc;
 import com.lantone.qc.pub.model.doc.transferrecord.TransferRecordDoc;
 import lombok.Getter;
 import lombok.Setter;
@@ -43,6 +42,8 @@ public class InputInfo {
      * {"BEH0001":{"precond":"BEH0002,BEH0003,BEH0004"}}
      */
     private Map<String, Map<String, String>> inputCatalogueMap = new HashMap<>();
+    //手术
+    private List<OperationDoc> operationDocs = new ArrayList<>();
     //转科记录
     private List<TransferRecordDoc> transferRecordDocs = new ArrayList<>();
     //入院记录
@@ -73,10 +74,6 @@ public class InputInfo {
     private LeaveHospitalDoc leaveHospitalDoc;
     //分级护理制度
     private NursingSystemDoc nursingSystemDoc;
-    //术后首次病程及谈话记录
-    private List<OperationDiscussionDoc> operationDiscussionDocs = new ArrayList<>();
-    //术前讨论、术前小结
-    private List<PreoperativeDiscussionDoc> preoperativeDiscussionDocs = new ArrayList<>();
     //抢救记录
     private List<RescueDoc> rescueDocs = new ArrayList<>();
     //病重通知书

+ 1 - 1
public/src/main/java/com/lantone/qc/pub/model/doc/operation/OperationDoc.java

@@ -12,7 +12,7 @@ import lombok.Setter;
 @Setter
 public class OperationDoc {
 
-    private PreoperativeDiscussionDoc preoperativeDiscussionDoc;
     private OperationDiscussionDoc operationDiscussionDoc;
+    private PreoperativeDiscussionDoc preoperativeDiscussionDoc;
 
 }

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

@@ -32,6 +32,38 @@ public class ModelStandardKeys {
     );
 
 
+    //手术-术后首次病程及谈话记录的标准key
+    public static final List<String> operationDiscussion = Lists.newArrayList(
+            "记录时间",
+            "手术时间",
+            "麻醉方式",
+            "手术方式",
+            "术中诊断",
+            "手术简要经过",
+            "患者术后情况",
+            "术后处理措施",
+            "术后可能出现的并发症及预防措施",
+            "术后注意事项",
+            "谈话医师签字",
+            "患者签名",
+            "患者签名时间",
+            "被授权人/代理人签名",
+            "代理人签名时间"
+    );
+    //手术-术前讨论、术前小结的标准key
+    public static final List<String> preoperativeDiscussion = Lists.newArrayList(
+            "讨论时间",
+            "讨论方式",
+            "参加人员",
+            "简要病情",
+            "讨论结论",
+            "经治医师签名",
+            "经治医师签字时间",
+            "主刀医师签名",
+            "主刀医师签字时间"
+    );
+
+
     //转科记录-转入的标准key
     public static final List<String> transferInto = Lists.newArrayList();
     //转科记录-转出的标准key
@@ -206,38 +238,6 @@ public class ModelStandardKeys {
     //分级护理制度的标准key
     public static final List<String> nursingSystem = Lists.newArrayList();
 
-    //术后首次病程及谈话记录的标准key
-    public static final List<String> operationDiscussion = Lists.newArrayList(
-            "记录时间",
-            "手术时间",
-            "麻醉方式",
-            "手术方式",
-            "术中诊断",
-            "手术简要经过",
-            "患者术后情况",
-            "术后处理措施",
-            "术后可能出现的并发症及预防措施",
-            "术后注意事项",
-            "谈话医师签字",
-            "患者签名",
-            "患者签名时间",
-            "被授权人/代理人签名",
-            "代理人签名时间"
-    );
-
-    //术前讨论、术前小结的标准key
-    public static final List<String> preoperativeDiscussion = Lists.newArrayList(
-            "讨论时间",
-            "讨论方式",
-            "参加人员",
-            "简要病情",
-            "讨论结论",
-            "经治医师签名",
-            "经治医师签字时间",
-            "主刀医师签名",
-            "主刀医师签字时间"
-    );
-
     //抢救记录的标准key
     public static final List<String> rescue = Lists.newArrayList(
             "抢救时间",

+ 4 - 8
trans/src/main/java/com/lantone/qc/trans/changx/ChangxDocTrans.java

@@ -17,6 +17,10 @@ public class ChangxDocTrans extends DocTrans {
     protected InputInfo extract(QueryVo queryVo) {
         InputInfo inputInfo = new InputInfo();
         for (MedrecVo i : queryVo.getMedrec()) {
+            if (i.getTitle().equals("手术")) {
+                ChangxOperationDocTrans changxOperationDocTrans = new ChangxOperationDocTrans();
+                inputInfo.setOperationDocs(changxOperationDocTrans.extract(i));
+            }
             if (i.getTitle().equals("转科记录")) {
                 ChangxTransferRecordDocTrans transferRecordDocTrans = new ChangxTransferRecordDocTrans();
                 inputInfo.setTransferRecordDocs(transferRecordDocTrans.extract(i));
@@ -77,14 +81,6 @@ public class ChangxDocTrans extends DocTrans {
                 ChangxNursingSystemDocTrans nursingSystemDocTrans = new ChangxNursingSystemDocTrans();
                 inputInfo.setNursingSystemDoc(nursingSystemDocTrans.extract(i));
             }
-            if (i.getTitle().equals("术后首次病程及谈话记录")) {
-                ChangxOperationDiscussionDocTrans operationDiscussionDocTrans = new ChangxOperationDiscussionDocTrans();
-                inputInfo.setOperationDiscussionDocs(operationDiscussionDocTrans.extract(i));
-            }
-            if (i.getTitle().equals("术前讨论、术前小结")) {
-                ChangxPreoperativeDiscussionDocTrans preoperativeDiscussionDocTrans = new ChangxPreoperativeDiscussionDocTrans();
-                inputInfo.setPreoperativeDiscussionDocs(preoperativeDiscussionDocTrans.extract(i));
-            }
             if (i.getTitle().equals("抢救记录")) {
                 ChangxRescueDocTrans rescueDocTrans = new ChangxRescueDocTrans();
                 inputInfo.setRescueDocs(rescueDocTrans.extract(i));

+ 0 - 41
trans/src/main/java/com/lantone/qc/trans/changx/ChangxOperationDiscussionDocTrans.java

@@ -1,41 +0,0 @@
-package com.lantone.qc.trans.changx;
-
-import com.google.common.collect.Lists;
-import com.lantone.qc.pub.model.doc.OperationDiscussionDoc;
-import com.lantone.qc.pub.model.keys.ModelStandardKeys;
-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.comsis.ModelDocGenerate;
-import com.lantone.qc.trans.comsis.Preproc;
-
-import java.util.List;
-import java.util.Map;
-
-/**
- * @Description: 术后首次病程及谈话记录文档生成
- * @author: rengb
- * @time: 2020/3/17 13:26
- */
-public class ChangxOperationDiscussionDocTrans extends ModelDocTrans {
-
-    @Override
-    public List<OperationDiscussionDoc> extract(MedrecVo medrecVo) {
-        List<OperationDiscussionDoc> retList = Lists.newArrayList();
-        List<String> contents = (List) medrecVo.getContent().get("content");
-        contents.forEach(content -> {
-            Map<String, String> structureMap =
-                    Preproc.extract_doc_pub(
-                            false,
-                            ListUtil.isEmpty(medrecVo.getLabel()) ? ModelStandardKeys.operationDiscussion : medrecVo.getLabel(),
-                            content
-                    );
-
-            OperationDiscussionDoc operationDiscussionDoc = ModelDocGenerate.operationDiscussionDocGen(structureMap);
-            operationDiscussionDoc.setText(content);
-            retList.add(operationDiscussionDoc);
-        });
-        return retList;
-    }
-
-}

+ 65 - 0
trans/src/main/java/com/lantone/qc/trans/changx/ChangxOperationDocTrans.java

@@ -0,0 +1,65 @@
+package com.lantone.qc.trans.changx;
+
+import com.google.common.collect.Lists;
+import com.lantone.qc.pub.model.doc.operation.OperationDiscussionDoc;
+import com.lantone.qc.pub.model.doc.operation.OperationDoc;
+import com.lantone.qc.pub.model.doc.operation.PreoperativeDiscussionDoc;
+import com.lantone.qc.pub.model.keys.ModelStandardKeys;
+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.comsis.ModelDocGenerate;
+import com.lantone.qc.trans.comsis.Preproc;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Description: 手术文档生成
+ * @author: rengb
+ * @time: 2020/3/20 17:11
+ */
+public class ChangxOperationDocTrans extends ModelDocTrans {
+
+    @Override
+    public List<OperationDoc> extract(MedrecVo medrecVo) {
+        List<OperationDoc> retList = Lists.newArrayList();
+        Map<String, Object> content = medrecVo.getContent();
+        Map<String, List<String>> labelMap = (Map) content.get("label");
+        List<String> operationDiscussionLabel = labelMap.get("术后首次病程及谈话记录");
+        List<String> preoperativeDiscussionLabel = labelMap.get("术前讨论、术前小结");
+        List<Map<String, String>> operations = (List) content.get("content");
+
+        String operationDiscussionContent, preoperativeDiscussionContent;
+        Map<String, String> operationDiscussionStructureMap, preoperativeDiscussionStructureMap;
+        for (Map<String, String> operation : operations) {
+            OperationDoc operationDoc = new OperationDoc();
+
+            operationDiscussionContent = operation.get("术后首次病程及谈话记录");
+            operationDiscussionStructureMap =
+                    Preproc.extract_doc_pub(
+                            false,
+                            ListUtil.isEmpty(operationDiscussionLabel) ? ModelStandardKeys.operationDiscussion : operationDiscussionLabel,
+                            operationDiscussionContent
+                    );
+            OperationDiscussionDoc operationDiscussionDoc = ModelDocGenerate.operationDiscussionDocGen(operationDiscussionStructureMap);
+            operationDiscussionDoc.setText(operationDiscussionContent);
+            operationDoc.setOperationDiscussionDoc(operationDiscussionDoc);
+
+            preoperativeDiscussionContent = operation.get("术前讨论、术前小结");
+            preoperativeDiscussionStructureMap =
+                    Preproc.extract_doc_pub(
+                            false,
+                            ListUtil.isEmpty(preoperativeDiscussionLabel) ? ModelStandardKeys.preoperativeDiscussion : preoperativeDiscussionLabel,
+                            preoperativeDiscussionContent
+                    );
+            PreoperativeDiscussionDoc preoperativeDiscussionDoc = ModelDocGenerate.preoperativeDiscussionDocGen(preoperativeDiscussionStructureMap);
+            preoperativeDiscussionDoc.setText(preoperativeDiscussionContent);
+            operationDoc.setPreoperativeDiscussionDoc(preoperativeDiscussionDoc);
+
+            retList.add(operationDoc);
+        }
+        return retList;
+    }
+
+}

+ 0 - 41
trans/src/main/java/com/lantone/qc/trans/changx/ChangxPreoperativeDiscussionDocTrans.java

@@ -1,41 +0,0 @@
-package com.lantone.qc.trans.changx;
-
-import com.google.common.collect.Lists;
-import com.lantone.qc.pub.model.doc.PreoperativeDiscussionDoc;
-import com.lantone.qc.pub.model.keys.ModelStandardKeys;
-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.comsis.ModelDocGenerate;
-import com.lantone.qc.trans.comsis.Preproc;
-
-import java.util.List;
-import java.util.Map;
-
-/**
- * @Description: 术前讨论、术前小结文档生成
- * @author: rengb
- * @time: 2020/3/17 13:26
- */
-public class ChangxPreoperativeDiscussionDocTrans extends ModelDocTrans {
-
-    @Override
-    public List<PreoperativeDiscussionDoc> extract(MedrecVo medrecVo) {
-        List<PreoperativeDiscussionDoc> retList = Lists.newArrayList();
-        List<String> contents = (List) medrecVo.getContent().get("content");
-        contents.forEach(content -> {
-            Map<String, String> structureMap =
-                    Preproc.extract_doc_pub(
-                            false,
-                            ListUtil.isEmpty(medrecVo.getLabel()) ? ModelStandardKeys.preoperativeDiscussion : medrecVo.getLabel(),
-                            content
-                    );
-
-            PreoperativeDiscussionDoc preoperativeDiscussionDoc = ModelDocGenerate.preoperativeDiscussionDocGen(structureMap);
-            preoperativeDiscussionDoc.setText(content);
-            retList.add(preoperativeDiscussionDoc);
-        });
-        return retList;
-    }
-
-}

+ 26 - 26
trans/src/main/java/com/lantone/qc/trans/comsis/ModelDocGenerate.java

@@ -13,11 +13,11 @@ import com.lantone.qc.pub.model.doc.DutyShiftSystemDoc;
 import com.lantone.qc.pub.model.doc.FirstCourseRecordDoc;
 import com.lantone.qc.pub.model.doc.LeaveHospitalDoc;
 import com.lantone.qc.pub.model.doc.NursingSystemDoc;
-import com.lantone.qc.pub.model.doc.OperationDiscussionDoc;
-import com.lantone.qc.pub.model.doc.PreoperativeDiscussionDoc;
 import com.lantone.qc.pub.model.doc.RescueDoc;
 import com.lantone.qc.pub.model.doc.SeriouslyIllNoticeDoc;
 import com.lantone.qc.pub.model.doc.ThreeLevelWardDoc;
+import com.lantone.qc.pub.model.doc.operation.OperationDiscussionDoc;
+import com.lantone.qc.pub.model.doc.operation.PreoperativeDiscussionDoc;
 import com.lantone.qc.pub.model.doc.transferrecord.TransferIntoDoc;
 import com.lantone.qc.pub.model.doc.transferrecord.TransferOutDoc;
 import com.lantone.qc.pub.model.label.ChiefLabel;
@@ -43,6 +43,30 @@ import java.util.Map;
  */
 public class ModelDocGenerate {
 
+    /**
+     * 手术-术后首次病程及谈话记录
+     *
+     * @param structureMap
+     * @return
+     */
+    public static OperationDiscussionDoc operationDiscussionDocGen(Map<String, String> structureMap) {
+        OperationDiscussionDoc operationDiscussionDoc = new OperationDiscussionDoc();
+        operationDiscussionDoc.setStructureMap(structureMap);
+        return operationDiscussionDoc;
+    }
+
+    /**
+     * 手术-术前讨论、术前小结
+     *
+     * @param structureMap
+     * @return
+     */
+    public static PreoperativeDiscussionDoc preoperativeDiscussionDocGen(Map<String, String> structureMap) {
+        PreoperativeDiscussionDoc preoperativeDiscussionDoc = new PreoperativeDiscussionDoc();
+        preoperativeDiscussionDoc.setStructureMap(structureMap);
+        return preoperativeDiscussionDoc;
+    }
+
     /**
      * 转科记录-转入
      *
@@ -302,30 +326,6 @@ public class ModelDocGenerate {
         return nursingSystemDoc;
     }
 
-    /**
-     * 术后首次病程及谈话记录
-     *
-     * @param structureMap
-     * @return
-     */
-    public static OperationDiscussionDoc operationDiscussionDocGen(Map<String, String> structureMap) {
-        OperationDiscussionDoc operationDiscussionDoc = new OperationDiscussionDoc();
-        operationDiscussionDoc.setStructureMap(structureMap);
-        return operationDiscussionDoc;
-    }
-
-    /**
-     * 术前讨论、术前小结
-     *
-     * @param structureMap
-     * @return
-     */
-    public static PreoperativeDiscussionDoc preoperativeDiscussionDocGen(Map<String, String> structureMap) {
-        PreoperativeDiscussionDoc preoperativeDiscussionDoc = new PreoperativeDiscussionDoc();
-        preoperativeDiscussionDoc.setStructureMap(structureMap);
-        return preoperativeDiscussionDoc;
-    }
-
     /**
      * 抢救记录
      *