|
@@ -2,12 +2,14 @@ package com.diagbot.facade.data;
|
|
|
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
import com.diagbot.dto.OutputInfo;
|
|
|
+import com.diagbot.dto.RespDTO;
|
|
|
import com.diagbot.dto.Response;
|
|
|
import com.diagbot.enums.CacheKeyEnum;
|
|
|
+import com.diagbot.enums.ModeIdEnum;
|
|
|
import com.diagbot.facade.QcClientFacade;
|
|
|
-import com.diagbot.facade.str.*;
|
|
|
import com.diagbot.service.impl.ColumnServiceImpl;
|
|
|
import com.diagbot.vo.QueryVo;
|
|
|
+import com.diagbot.vo.str.StrContentVO;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Component;
|
|
@@ -54,6 +56,33 @@ public class ColumnFacade extends ColumnServiceImpl {
|
|
|
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * @Description:解析his传输过来的wholeData
|
|
|
+ * @Author:liuqq
|
|
|
+ * @time: ${DATE} ${TIME}
|
|
|
+ **/
|
|
|
+ public void analyseWholeData(StrContentVO strContentVO){
|
|
|
+ //调用解析接口
|
|
|
+ Response<OutputInfo> resp=null;
|
|
|
+ //qcClientFacade.analyseField(queryVo);
|
|
|
+ if(resp.getData()!=null && resp.getData().getPageData()!=null){
|
|
|
+ Map<String, Object> pageData=resp.getData().getPageData();
|
|
|
+ pageData.forEach((key,value)->{
|
|
|
+ List<Map<String, Object>> listMap=(List<Map<String,Object>>)resp.getData().getPageData().get(key);
|
|
|
+ Map<String, String> columnMap=this.getColumn(CacheKeyEnum.getName(key));
|
|
|
+
|
|
|
+ Map<String, Object> entityMap=new HashMap<String, Object>();
|
|
|
+ listMap.forEach(s->{
|
|
|
+ columnMap.forEach((k, v) -> {
|
|
|
+ entityMap.put(v,s.get(k));
|
|
|
+ });
|
|
|
+ //数据解析
|
|
|
+ analysisData(ModeIdEnum.getName(Integer.parseInt(strContentVO.getModelId())),entityMap,strContentVO.getHospitalId(),JSON.toJSONString(s));
|
|
|
+ });
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 数据解析
|
|
|
* @param modelName
|
|
@@ -61,59 +90,54 @@ public class ColumnFacade extends ColumnServiceImpl {
|
|
|
* @param hospitalId
|
|
|
*/
|
|
|
private void analysisData(String modelName,Map<String, Object> entityMap,Long hospitalId,String columnMap){
|
|
|
- try {
|
|
|
- if("入院记录".equals(modelName)){
|
|
|
- aStrAdmissionNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
- }else if("首次病程录".equals(modelName)){
|
|
|
- aStrFirstRecordFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
- }else if("输血后效果评价".equals(modelName)){
|
|
|
- aStrBloodResultFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
- }else if("输血/血制品病程记录".equals(modelName)){
|
|
|
- aStrBloodTransfusionFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
- }else if("转入记录".equals(modelName)){
|
|
|
- aStrTransferInNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
- }else if("转出记录".equals(modelName)){
|
|
|
- aStrTransferOutNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
- }else if("病危通知书".equals(modelName)){
|
|
|
- aStrIllCriticallyFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
- }else if("病重通知书".equals(modelName)){
|
|
|
- aStrIllSeriouslFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
- }else if("疑难病例讨论记录".equals(modelName)){
|
|
|
- aStrDifficultCaseFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
- }else if("死亡记录".equals(modelName)){
|
|
|
- aStrDeathNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
- }else if("死亡病例讨论记录".equals(modelName)){
|
|
|
- aStrDeathDiscussionFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
- }else if("查房记录".equals(modelName)){
|
|
|
- aStrWardRecordFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
- }else if("术后首次病程及谈话记录".equals(modelName)){
|
|
|
- aStrOperativeFirstRecord.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
- }else if("术前讨论、术前小结".equals(modelName)){
|
|
|
- aStrPreoperativeDiscussionFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
- }else if("手术记录".equals(modelName)){
|
|
|
- aStrOperativeNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
- }else if("抢救记录".equals(modelName)){
|
|
|
- aStrRescueNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
- }else if("危急值记录".equals(modelName)){
|
|
|
- aStrCrisisNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
- }else if("出院小结".equals(modelName)){
|
|
|
- aStrLeaveHospitalFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
- }else if("会诊申请单".equals(modelName)){
|
|
|
- aStrConsultationApplyFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
- }else if("会诊结果单".equals(modelName)){
|
|
|
- aStrConsultationResultFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
- }else if("会诊单".equals(modelName)){
|
|
|
- aStrConsultationNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
- }else if ("会诊记录".equals(modelName)){
|
|
|
- aStrConsultationRecordFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
- } else if("阶段小结".equals(modelName)){
|
|
|
- aStrPeriodConclusionFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
- }
|
|
|
- log.info(modelName+"---- 解析完成!");
|
|
|
- }catch (Exception e){
|
|
|
- log.error(e.getMessage(),e);
|
|
|
- aMedAbnormalInfoFacade.saveAbnormalInfo("数据解析异常", "",JSON.toJSONString(columnMap),"",e.getMessage());
|
|
|
+ if("入院记录".equals(modelName)){
|
|
|
+ aStrAdmissionNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
+ }else if("首次病程录".equals(modelName)){
|
|
|
+ aStrFirstRecordFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
+ }else if("输血后效果评价".equals(modelName)){
|
|
|
+ aStrBloodResultFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
+ }else if("输血/血制品病程记录".equals(modelName)){
|
|
|
+ aStrBloodTransfusionFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
+ }else if("转入记录".equals(modelName)){
|
|
|
+ aStrTransferInNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
+ }else if("转出记录".equals(modelName)){
|
|
|
+ aStrTransferOutNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
+ }else if("病危通知书".equals(modelName)){
|
|
|
+ aStrIllCriticallyFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
+ }else if("病重通知书".equals(modelName)){
|
|
|
+ aStrIllSeriouslFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
+ }else if("疑难病例讨论记录".equals(modelName)){
|
|
|
+ aStrDifficultCaseFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
+ }else if("死亡记录".equals(modelName)){
|
|
|
+ aStrDeathNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
+ }else if("死亡病例讨论记录".equals(modelName)){
|
|
|
+ aStrDeathDiscussionFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
+ }else if("查房记录".equals(modelName)){
|
|
|
+ aStrWardRecordFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
+ }else if("术后首次病程及谈话记录".equals(modelName)){
|
|
|
+ aStrOperativeFirstRecord.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
+ }else if("术前讨论、术前小结".equals(modelName)){
|
|
|
+ aStrPreoperativeDiscussionFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
+ }else if("手术记录".equals(modelName)){
|
|
|
+ aStrOperativeNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
+ }else if("抢救记录".equals(modelName)){
|
|
|
+ aStrRescueNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
+ }else if("危急值记录".equals(modelName)){
|
|
|
+ aStrCrisisNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
+ }else if("出院小结".equals(modelName)){
|
|
|
+ aStrLeaveHospitalFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
+ }else if("会诊申请单".equals(modelName)){
|
|
|
+ aStrConsultationApplyFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
+ }else if("会诊结果单".equals(modelName)){
|
|
|
+ aStrConsultationResultFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
+ }else if("会诊单".equals(modelName)){
|
|
|
+ aStrConsultationNoteFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
+ }else if ("会诊记录".equals(modelName)){
|
|
|
+ aStrConsultationRecordFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
+ } else if("阶段小结".equals(modelName)){
|
|
|
+ aStrPeriodConclusionFacade.dealData(columnMap,entityMap,Long.valueOf(hospitalId));
|
|
|
}
|
|
|
+ log.info(modelName+"---- 解析完成!");
|
|
|
}
|
|
|
|
|
|
@Autowired
|