Procházet zdrojové kódy

对接参数修改

rengb před 5 roky
rodič
revize
d814462ba9

+ 1 - 0
kernel/src/main/java/com/lantone/qc/kernel/analysis/QCAnalysis.java

@@ -40,6 +40,7 @@ public class QCAnalysis {
             }
             CatalogueUtil.qcCatalogueMap.get(entry.getKey()).execute(inputInfo, outputInfo);
         }
+        outputInfo.setPageData(inputInfo.getPageData());
         return outputInfo;
     }
 }

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

@@ -1,5 +1,6 @@
 package com.lantone.qc.pub.model;
 
+import com.google.common.collect.Maps;
 import com.lantone.qc.pub.model.doc.BeHospitalizedDoc;
 import com.lantone.qc.pub.model.doc.ClinicalBloodDoc;
 import com.lantone.qc.pub.model.doc.ConsultationDoc;
@@ -43,6 +44,8 @@ public class InputInfo {
      * {"BEH0001":{"precond":"BEH0002,BEH0003,BEH0004"}}
      */
     private Map<String, Map<String, String>> inputCatalogueMap = new HashMap<>();
+    //页面结构化信息存储
+    private Map<String, Object> pageData = Maps.newHashMap();
     //手术
     private List<OperationDoc> operationDocs = new ArrayList<>();
     //转科记录

+ 3 - 0
public/src/main/java/com/lantone/qc/pub/model/OutputInfo.java

@@ -22,4 +22,7 @@ public class OutputInfo {
      * }
      */
     private Map<String, Map<String, String>> result = new HashMap<>();
+    //后结构化数据
+    private Map<String, Object> pageData = new HashMap<>();
+
 }

+ 2 - 0
public/src/main/java/com/lantone/qc/pub/model/doc/ModelDoc.java

@@ -17,4 +17,6 @@ public class ModelDoc {
     //所有结构化信息存储
     private Map<String, String> structureMap = Maps.newHashMap();
     private String text;
+    //页面结构化信息存储
+    private Map<String, Object> pageData = Maps.newHashMap();
 }

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

@@ -40,12 +40,17 @@ public class ChangxBeHospitalizedDocTrans extends ModelDocTrans {
                         content
                 );
 
+        Map<String, Object> pageData = (Map) structureMap;
+
         structureMap.put("体格检查", structureMap.get("体格检查(一)"));
         structureMap.put("专科体格检查", structureMap.get("体格检查(二)"));
         structureMap.remove("体格检查(一)");
         structureMap.remove("体格检查(二)");
 
-        return ModelDocGenerate.beHospitalizedDocGen(structureMap);
+        BeHospitalizedDoc beHospitalizedDoc = ModelDocGenerate.beHospitalizedDocGen(structureMap);
+        beHospitalizedDoc.setPageData(pageData);
+
+        return beHospitalizedDoc;
     }
 
 }

+ 62 - 0
trans/src/main/java/com/lantone/qc/trans/changx/ChangxDocTrans.java

@@ -3,8 +3,11 @@ package com.lantone.qc.trans.changx;
 import com.lantone.qc.pub.model.InputInfo;
 import com.lantone.qc.pub.model.vo.MedrecVo;
 import com.lantone.qc.pub.model.vo.QueryVo;
+import com.lantone.qc.pub.util.ListUtil;
 import com.lantone.qc.trans.DocTrans;
 
+import java.util.stream.Collectors;
+
 /**
  * @ClassName : TaiZhouDocTrans
  * @Description :
@@ -98,7 +101,66 @@ public class ChangxDocTrans extends DocTrans {
                 inputInfo.setThreeLevelWardDocs(threeLevelWardDocTrans.extract(i));
             }
         }
+        pageDataHandle(inputInfo);
         return inputInfo;
     }
 
+    private void pageDataHandle(InputInfo inputInfo) {
+        if (inputInfo.getBeHospitalizedDoc() != null) {
+            inputInfo.getPageData().put("入院记录", inputInfo.getBeHospitalizedDoc().getPageData());
+        }
+        if (inputInfo.getDeathCaseDiscussDoc() != null) {
+            inputInfo.getPageData().put("死亡病例讨论记录", inputInfo.getDeathCaseDiscussDoc().getPageData());
+        }
+        if (inputInfo.getDeathRecordDoc() != null) {
+            inputInfo.getPageData().put("死亡记录", inputInfo.getDeathRecordDoc().getPageData());
+        }
+        if (inputInfo.getFirstCourseRecordDoc() != null) {
+            inputInfo.getPageData().put("首次病程录", inputInfo.getFirstCourseRecordDoc().getPageData());
+        }
+        if (inputInfo.getLeaveHospitalDoc() != null) {
+            inputInfo.getPageData().put("出院小结", inputInfo.getLeaveHospitalDoc().getPageData());
+        }
+        if (inputInfo.getNursingSystemDoc() != null) {
+            inputInfo.getPageData().put("分级护理制度", inputInfo.getNursingSystemDoc().getPageData());
+        }
+        if (inputInfo.getFirstPageRecordDoc() != null) {
+            inputInfo.getPageData().put("分级护理制度", inputInfo.getFirstPageRecordDoc().getPageData());
+        }
+
+        if (ListUtil.isNotEmpty(inputInfo.getClinicalBloodDocs())) {
+            inputInfo.getPageData().put("输血/血制品病程记录", inputInfo.getClinicalBloodDocs().stream().map(i -> i.getPageData()).collect(Collectors.toList()));
+        }
+        if (ListUtil.isNotEmpty(inputInfo.getConsultationDocs())) {
+            inputInfo.getPageData().put("会诊记录", inputInfo.getConsultationDocs().stream().map(i -> i.getPageData()).collect(Collectors.toList()));
+        }
+        if (ListUtil.isNotEmpty(inputInfo.getCrisisValueReportDocs())) {
+            inputInfo.getPageData().put("危急值记录", inputInfo.getCrisisValueReportDocs().stream().map(i -> i.getPageData()).collect(Collectors.toList()));
+        }
+        if (ListUtil.isNotEmpty(inputInfo.getCriticallyIllNoticeDocs())) {
+            inputInfo.getPageData().put("病危通知书", inputInfo.getCriticallyIllNoticeDocs().stream().map(i -> i.getPageData()).collect(Collectors.toList()));
+        }
+        if (ListUtil.isNotEmpty(inputInfo.getDifficultCaseDiscussDocs())) {
+            inputInfo.getPageData().put("疑难病例讨论记录", inputInfo.getDifficultCaseDiscussDocs().stream().map(i -> i.getPageData()).collect(Collectors.toList()));
+        }
+        if (ListUtil.isNotEmpty(inputInfo.getDoctorAdviceDocs())) {
+            inputInfo.getPageData().put("医嘱信息", inputInfo.getDoctorAdviceDocs().stream().map(i -> i.getPageData()).collect(Collectors.toList()));
+        }
+        if (ListUtil.isNotEmpty(inputInfo.getDutyShiftSystemDocs())) {
+            inputInfo.getPageData().put("值班交接制度", inputInfo.getDutyShiftSystemDocs().stream().map(i -> i.getPageData()).collect(Collectors.toList()));
+        }
+        if (ListUtil.isNotEmpty(inputInfo.getRescueDocs())) {
+            inputInfo.getPageData().put("抢救记录", inputInfo.getRescueDocs().stream().map(i -> i.getPageData()).collect(Collectors.toList()));
+        }
+        if (ListUtil.isNotEmpty(inputInfo.getSeriouslyIllNoticeDocs())) {
+            inputInfo.getPageData().put("病重通知书", inputInfo.getSeriouslyIllNoticeDocs().stream().map(i -> i.getPageData()).collect(Collectors.toList()));
+        }
+        if (ListUtil.isNotEmpty(inputInfo.getStagesSummaryDocs())) {
+            inputInfo.getPageData().put("阶段小结", inputInfo.getStagesSummaryDocs().stream().map(i -> i.getPageData()).collect(Collectors.toList()));
+        }
+        if (ListUtil.isNotEmpty(inputInfo.getThreeLevelWardDocs())) {
+            inputInfo.getPageData().put("查房记录", inputInfo.getThreeLevelWardDocs().stream().map(i -> i.getPageData()).collect(Collectors.toList()));
+        }
+    }
+
 }

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

@@ -29,6 +29,7 @@ public class ChangxFirstPageRecordDocTrans extends ModelDocTrans {
         structureExtMap.put(Content.dischargeDiag, FastJsonUtils.getJsonToBean(content.get(Content.dischargeDiag), Object.class));
         structureExtMap.put(Content.pathologyDiagnose, FastJsonUtils.getJsonToBean(content.get(Content.pathologyDiagnose), Object.class));
         firstPageRecordDoc.setStructureExtMap(structureExtMap);
+        firstPageRecordDoc.setPageData(medrecVo.getContent());
 
         return firstPageRecordDoc;
     }

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

@@ -30,6 +30,7 @@ public class ChangxLeaveHospitalDocTrans extends ModelDocTrans {
 
         LeaveHospitalDoc leaveHospitalDoc = ModelDocGenerate.leaveHospitalDocGen(structureMap);
         leaveHospitalDoc.setText(content);
+        leaveHospitalDoc.setPageData((Map) structureMap);
 
         return leaveHospitalDoc;
     }