瀏覽代碼

添加会诊记录结构化表

chengyao 4 年之前
父節點
當前提交
713b85d02a

+ 18 - 2
src/main/java/com/diagbot/facade/BehospitalInfoFacade.java

@@ -121,6 +121,8 @@ public class BehospitalInfoFacade extends BehospitalInfoServiceImpl {
     @Autowired
     MedConsultationNoteFacade medConsultationNoteFacade;
     @Autowired
+    MedConsultationRecordFacade medConsultationRecordFacade;
+    @Autowired
     MedAdmissionNoteFacade medAdmissionNoteFacade;
     @Autowired
     MedBloodResultFacade medBloodResultFacade;
@@ -335,6 +337,16 @@ public class BehospitalInfoFacade extends BehospitalInfoServiceImpl {
                 .select("whole_data", "rec_id", "hospital_id")
                 .orderByAsc("behospital_date")
         );
+
+        // 会诊记录
+        List<MedConsultationRecord> medConsultationRecordList = medConsultationRecordFacade.list(new QueryWrapper<MedConsultationRecord>()
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("hospital_id", hospitalId)
+                .eq("behospital_code", analyzeVO.getBehospitalCode())
+                .select("whole_data", "rec_id", "hospital_id")
+                .orderByAsc("behospital_date")
+        );
+
         // 入院记录
         List<MedAdmissionNote> medAdmissionNoteList = medAdmissionNoteFacade.list(new QueryWrapper<MedAdmissionNote>()
                 .eq("is_deleted", IsDeleteEnum.N.getKey())
@@ -599,8 +611,12 @@ public class BehospitalInfoFacade extends BehospitalInfoServiceImpl {
          */
 
         // 会诊记录
-        specialDataWithKey("会诊", recMap, medrecVoList, "会诊记录",
-                null);
+        if (ListUtil.isNotEmpty(medConsultationRecordList)) {
+            specialData("会诊", medConsultationRecordList, recMap, medrecVoList, "会诊记录");
+        } else {
+            specialDataWithKey("会诊", recMap, medrecVoList, "会诊记录",
+                    Arrays.asList("会诊记录"));
+        }
 
         //会诊申请单
         if (ListUtil.isNotEmpty(medConsultationApplyList)) {

+ 14 - 0
src/main/java/com/diagbot/facade/MedConsultationRecordFacade.java

@@ -0,0 +1,14 @@
+package com.diagbot.facade;
+
+import com.diagbot.service.impl.MedConsultationNoteServiceImpl;
+import com.diagbot.service.impl.MedConsultationRecordServiceImpl;
+import org.springframework.stereotype.Component;
+
+/**
+ * @Description:
+ * @author: cy
+ * @time: 2020/11/13 11:39
+ */
+@Component
+public class MedConsultationRecordFacade extends MedConsultationRecordServiceImpl {
+}

+ 6 - 86
src/main/java/com/diagbot/facade/data/AMedicalRecordFacade.java

@@ -125,76 +125,7 @@ public class AMedicalRecordFacade extends MedicalRecordServiceImpl {
             medicalRecordQe.in("rec_id", hisDataDealVO.getRecIdList());
         }
         List<MedicalRecord> medicalRecordList = medicalRecordService.list(medicalRecordQe);
-        Boolean flag = true;
-        if (hisDataDealVO.getModeId().size() > 1) {
-            flag = false;
-            Map<String, Object> content = new HashMap<>();
-            for (MedicalRecord medicalRecord : medicalRecordList) {
-                RecordDataVO recordContentVO_7 = new RecordDataVO();
-                BeanUtil.copyProperties(medicalRecord, recordContentVO_7);
-                recordContentVO_7.setModeId(7l);
-                List<RecordContentDTO> recordContentFac_7 = medicalRecordFacade.getRecordData(recordContentVO_7);
-                specialDataWithKey(encryptFlag, recordContentFac_7);
-                List<Map<String, Object>> returnData = new ArrayList<>();
-                Map<String, List<Map<String, Object>>> returnMap = new HashMap<>();
-                if (ListUtil.isNotEmpty(recordContentFac_7)) {
-                    for (RecordContentDTO recordContentDTO : recordContentFac_7) {
-                        try {
-                            Map<String, Object> objectMap = MapUtil.objectToMap(recordContentDTO);
-                            returnData.add(objectMap);
-                            returnMap.put("会诊记录", returnData);
-                        } catch (Exception e) {
-                            e.printStackTrace();
-                        }
-                    }
-                }
-
-                RecordDataVO recordContentVO_30 = new RecordDataVO();
-                BeanUtil.copyProperties(medicalRecord, recordContentVO_30);
-                recordContentVO_30.setModeId(30l);
-                List<RecordContentDTO> recordContentFac_30 = medicalRecordFacade.getRecordData(recordContentVO_30);
-                specialDataWithKey(encryptFlag, recordContentFac_30);
-                if (ListUtil.isNotEmpty(recordContentFac_30)) {
-                    for (RecordContentDTO recordContentDTO : recordContentFac_30) {
-                        try {
-                            Map<String, Object> objectMap = MapUtil.objectToMap(recordContentDTO);
-                            returnData.add(objectMap);
-                            returnMap.put("会诊申请单", returnData);
-                        } catch (Exception e) {
-                            e.printStackTrace();
-                        }
-                    }
-                }
-
-                RecordDataVO recordContentVO_31 = new RecordDataVO();
-                BeanUtil.copyProperties(medicalRecord, recordContentVO_31);
-                recordContentVO_31.setModeId(31l);
-                List<RecordContentDTO> recordContentFac_31 = medicalRecordFacade.getRecordData(recordContentVO_31);
-                specialDataWithKey(encryptFlag, recordContentFac_31);
-                if (ListUtil.isNotEmpty(recordContentFac_31)) {
-                    for (RecordContentDTO recordContentDTO : recordContentFac_31) {
-                        try {
-                            Map<String, Object> objectMap = MapUtil.objectToMap(recordContentDTO);
-                            returnData.add(objectMap);
-                            returnMap.put("会诊结果单", returnData);
-                        } catch (Exception e) {
-                            e.printStackTrace();
-                        }
-                    }
-                }
-                content.put("content", returnMap);
-                MedrecVo medrecVo = new MedrecVo();
-                medrecVo.setHospitalId(medicalRecord.getHospitalId());
-                medrecVo.setContent(content);
-                if (recordContentVO_31.getModeId() == 7l || recordContentVO_30.getModeId() == 30l || recordContentVO_31.getModeId() == 31l) {
-                    medrecVo.setTitle("会诊");
-                }
-                splicingParam(null, medrecVo);
-
-            }
-        }
-
-        if (flag) {
+        
             medicalRecordList.forEach(medicalRecord -> {
 
                         QueryWrapper<MedicalRecordContent> medicalRecordContentQe = new QueryWrapper<>();
@@ -225,11 +156,9 @@ public class AMedicalRecordFacade extends MedicalRecordServiceImpl {
                         records.add(aMedicalRecordVO);
                         AMrContentVO aMrContentVO = new AMrContentVO();
                         aMrContentVO.setRecords(records);
-                        splicingParam(aMrContentVO, null);
+                        splicingParam(aMrContentVO);
                     }
             );
-        }
-        ;
         return true;
     }
 
@@ -261,17 +190,8 @@ public class AMedicalRecordFacade extends MedicalRecordServiceImpl {
      *
      * @param aMrContentVO
      */
-    public void splicingParam(AMrContentVO aMrContentVO, MedrecVo medrec) {
-        if (null == aMrContentVO) {
-            QueryVo queryVo = new QueryVo();
-            List<MedrecVo> medreclist = Lists.newArrayList();
-            medreclist.add(medrec);
-            queryVo.setMedrec(medreclist);
-            queryVo.setHospitalId(String.valueOf(medrec.getHospitalId()));
-            queryVo.setCid(basHospitalInfoFacade.getHosCode(medrec.getHospitalId()));
-            columnFacade.analyseRec(queryVo);
-        }
-        if (null == medrec) {
+    public void splicingParam(AMrContentVO aMrContentVO) {
+
             try {
                 QueryVo queryVo = new QueryVo();
                 List<MedrecVo> medreclist = Lists.newArrayList();
@@ -327,7 +247,7 @@ public class AMedicalRecordFacade extends MedicalRecordServiceImpl {
                 aMedAbnormalInfoFacade.saveAbnormalInfo("参数拼接", "", JSON.toJSONString(aMrContentVO), "", e.getMessage());
             }
         }
-    }
+
 
     /**
      * 运行质控-通过接口更新病历记录
@@ -363,7 +283,7 @@ public class AMedicalRecordFacade extends MedicalRecordServiceImpl {
             });
 
             //数据解析
-            splicingParam(aMrContentVO, null);
+            splicingParam(aMrContentVO);
 
             //评分后返回结构体
             return mrIng(aMrContentVO);

+ 0 - 1
src/main/java/com/diagbot/vo/MedrecVo.java

@@ -16,7 +16,6 @@ import java.util.Map;
 @Setter
 public class MedrecVo {
     private String title;
-    private Long hospitalId;
     private Map<String, Object> content;
     private List<String> label;
 }

+ 43 - 0
src/main/resources/mapper/MedConsultationRecordMapper.xml

@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.diagbot.mapper.MedConsultationRecordMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.diagbot.entity.MedConsultationRecord">
+        <id column="rec_id" property="recId" />
+        <result column="hospital_id" property="hospitalId" />
+        <result column="behospital_code" property="behospitalCode" />
+        <result column="name" property="name" />
+        <result column="sex" property="sex" />
+        <result column="age" property="age" />
+        <result column="bed_no" property="bedNo" />
+        <result column="dept_name" property="deptName" />
+        <result column="record_date" property="recordDate" />
+        <result column="rec_title" property="recTitle" />
+        <result column="behospital_date" property="behospitalDate" />
+        <result column="apply_dept" property="applyDept" />
+        <result column="apply_doctor" property="applyDoctor" />
+        <result column="apply_date" property="applyDate" />
+        <result column="invite_type" property="inviteType" />
+        <result column="invite_dept" property="inviteDept" />
+        <result column="invite_doctor" property="inviteDoctor" />
+        <result column="brief_note" property="briefNote" />
+        <result column="current_diagnosis" property="currentDiagnosis" />
+        <result column="treatment_situation" property="treatmentSituation" />
+        <result column="consultation_date" property="consultationDate" />
+        <result column="consultation_purpose" property="consultationPurpose" />
+        <result column="consultation_opinions" property="consultationOpinions" />
+        <result column="rec_doctor" property="recDoctor" />
+        <result column="rec_date" property="recDate" />
+        <result column="audit_doctor" property="auditDoctor" />
+        <result column="audit_date" property="auditDate" />
+        <result column="whole_data" property="wholeData" />
+        <result column="remark" property="remark" />
+        <result column="is_deleted" property="isDeleted" />
+        <result column="gmt_create" property="gmtCreate" />
+        <result column="gmt_modified" property="gmtModified" />
+        <result column="creator" property="creator" />
+        <result column="modifier" property="modifier" />
+    </resultMap>
+
+</mapper>