|
@@ -1,15 +1,13 @@
|
|
package com.lantone.qc.trans.ywzxyy;
|
|
package com.lantone.qc.trans.ywzxyy;
|
|
|
|
|
|
-import com.google.common.collect.Lists;
|
|
|
|
import com.google.common.collect.Maps;
|
|
import com.google.common.collect.Maps;
|
|
-import com.lantone.qc.dbanaly.facade.yiwu.YiWuFirstPageRecordXmlUtil;
|
|
|
|
import com.lantone.qc.dbanaly.util.ModuleMappingUtil;
|
|
import com.lantone.qc.dbanaly.util.ModuleMappingUtil;
|
|
|
|
+import com.lantone.qc.pub.Content;
|
|
import com.lantone.qc.pub.model.doc.FirstPageRecordDoc;
|
|
import com.lantone.qc.pub.model.doc.FirstPageRecordDoc;
|
|
import com.lantone.qc.pub.model.vo.MedrecVo;
|
|
import com.lantone.qc.pub.model.vo.MedrecVo;
|
|
import com.lantone.qc.pub.util.FastJsonUtils;
|
|
import com.lantone.qc.pub.util.FastJsonUtils;
|
|
import com.lantone.qc.trans.ModelDocTrans;
|
|
import com.lantone.qc.trans.ModelDocTrans;
|
|
|
|
|
|
-import java.util.List;
|
|
|
|
import java.util.Map;
|
|
import java.util.Map;
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -18,220 +16,39 @@ import java.util.Map;
|
|
* @time: 2020/3/16 17:47
|
|
* @time: 2020/3/16 17:47
|
|
*/
|
|
*/
|
|
public class YwzxyyFirstPageRecordDocTrans extends ModelDocTrans {
|
|
public class YwzxyyFirstPageRecordDocTrans extends ModelDocTrans {
|
|
- private String modeId = "6";
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public FirstPageRecordDoc extract(MedrecVo medrecVo) {
|
|
public FirstPageRecordDoc extract(MedrecVo medrecVo) {
|
|
- //Map<String, String> content = (Map) medrecVo.getContent();
|
|
|
|
- Map<String, Object> contentMap = ((List<Map>) medrecVo.getContent().get("content")).get(0);
|
|
|
|
- String content = contentMap.get("xmlText").toString();
|
|
|
|
|
|
+ Map<String, String> content = (Map) medrecVo.getContent();
|
|
FirstPageRecordDoc firstPageRecordDoc = new FirstPageRecordDoc();
|
|
FirstPageRecordDoc firstPageRecordDoc = new FirstPageRecordDoc();
|
|
- Map<String, Object> structureExtMap = null;
|
|
|
|
- Map<String, String> structureMap = Maps.newHashMap();
|
|
|
|
- if (contentMap.get("isParsed") != null && "1".equals(contentMap.get("isParsed").toString())) {
|
|
|
|
- structureExtMap = (Map) FastJsonUtils.getJsonToMap(content);
|
|
|
|
- } else {
|
|
|
|
- structureExtMap = YiWuFirstPageRecordXmlUtil.process(content);
|
|
|
|
- structureExtMap.put("mode_id", ModuleMappingUtil.getDeptModuleId(modeId));
|
|
|
|
- firstPageRecordDoc.setStructureExtMap(structureExtMap);
|
|
|
|
- }
|
|
|
|
- structureExtMap.forEach((k, v) -> structureMap.put(k, v.toString()));
|
|
|
|
- firstPageRecordDoc.setStructureMap(structureMap);
|
|
|
|
- firstPageRecordDoc.setPageData(structureExtMap);
|
|
|
|
|
|
+ firstPageRecordDoc.setStructureMap(content);
|
|
|
|
+
|
|
|
|
+ Map<String, Object> structureExtMap = Maps.newHashMap();
|
|
|
|
+ structureExtMap.putAll(content);
|
|
|
|
+ structureExtMap.put(Content.diagnose_cts, FastJsonUtils.getJsonToBean(content.get(Content.diagnose_cts), Object.class));
|
|
|
|
+ // structureExtMap.put(Content.outpatientEmergencyDiag, FastJsonUtils.getJsonToBean(content.get(Content.outpatientEmergencyDiag), Object.class));
|
|
|
|
+ structureExtMap.put(Content.operative_information, FastJsonUtils.getJsonToBean(content.get(Content.operative_information), Object.class));
|
|
|
|
+ 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);
|
|
|
|
+ //病案首页出院诊断页面信息只保留主要诊断和其他诊断
|
|
|
|
+ /*List<Map<String, String>> list = (List<Map<String, String>>) FastJsonUtils.getJsonToBean(content.get(Content.dischargeDiag), Object.class);
|
|
|
|
+ if (ListUtil.isNotEmpty(list)) {
|
|
|
|
+ Iterator<Map<String, String>> iterator = list.iterator();
|
|
|
|
+ Map<String, String> map = new HashMap<>();
|
|
|
|
+ while (iterator.hasNext()) {
|
|
|
|
+ map = new HashMap<>();
|
|
|
|
+ map = iterator.next();
|
|
|
|
+ if (!((map.get("诊断类别") != null && map.get("诊断类别").equals("主要诊断"))
|
|
|
|
+ || (map.get("诊断类别") != null && map.get("诊断类别").equals("其他诊断")))) {
|
|
|
|
+ iterator.remove();
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ medrecVo.getContent().put("出院诊断", list.toString());
|
|
|
|
+ }*/
|
|
|
|
+ medrecVo.getContent().put("mode_id", ModuleMappingUtil.getStandardModuleId("6"));
|
|
|
|
+ firstPageRecordDoc.setPageData(medrecVo.getContent());
|
|
return firstPageRecordDoc;
|
|
return firstPageRecordDoc;
|
|
}
|
|
}
|
|
|
|
|
|
- private List<String> keyContrasts = Lists.newArrayList(
|
|
|
|
- "住院期间身体约束=",
|
|
|
|
- "出院日期=",
|
|
|
|
- "诊断符合情况=",
|
|
|
|
- "手术费=",
|
|
|
|
- "入院途径=",
|
|
|
|
- "颅脑损伤患者昏迷时间(入院前)=",
|
|
|
|
- "住院费用=",
|
|
|
|
- "红细胞=",
|
|
|
|
- "输血情况=",
|
|
|
|
- "入院科室=",
|
|
|
|
- "临床诊断项目费=",
|
|
|
|
- "血浆=",
|
|
|
|
- "主治医生=",
|
|
|
|
- "Rh血型=",
|
|
|
|
- "护理费=",
|
|
|
|
- "住院自付金额=",
|
|
|
|
- "手术治疗费=",
|
|
|
|
- "细胞因子类制品费=",
|
|
|
|
- "综合医疗其他服务费=",
|
|
|
|
- "出院科室=",
|
|
|
|
- "户口地址邮政编码=",
|
|
|
|
- "凝血因子类制品费=",
|
|
|
|
- "家庭电话=",
|
|
|
|
- "其他费=",
|
|
|
|
- "HCV-Ab=",
|
|
|
|
- "病案质量=",
|
|
|
|
- "治疗用一次性医用材料费=",
|
|
|
|
- "质控护士=",
|
|
|
|
- "其他=",
|
|
|
|
- "离院方式=",
|
|
|
|
- "球蛋白类制品费=",
|
|
|
|
- "ICD9=",
|
|
|
|
- "ICD10=",
|
|
|
|
- "确诊日期=",
|
|
|
|
- "联系人姓名=",
|
|
|
|
- "中医治疗费=",
|
|
|
|
- "本人姓名=",
|
|
|
|
- "新生儿年龄=",
|
|
|
|
- "住院期间是否发生跌倒或坠床=",
|
|
|
|
- "出生地址=",
|
|
|
|
- "质控日期=",
|
|
|
|
- "病历日期=",
|
|
|
|
- "实验室诊断费=",
|
|
|
|
- "住院医生=",
|
|
|
|
- "现住址=",
|
|
|
|
- "院内感染诊断=",
|
|
|
|
- "非手术治疗项目费=",
|
|
|
|
- "手术时数=",
|
|
|
|
- "住院期间有无告病危=",
|
|
|
|
- "职业=",
|
|
|
|
- "病人病案身份=职业",
|
|
|
|
- "病人病案性别=性别",
|
|
|
|
- "病人病案血型=血型",
|
|
|
|
- "感染部位=",
|
|
|
|
- "手术日期2=",
|
|
|
|
- "质控医师=",
|
|
|
|
- "手术医师=",
|
|
|
|
- "医院感染=",
|
|
|
|
- "医生=",
|
|
|
|
- "出院31天内再入院计划=",
|
|
|
|
- "新生儿入院体重=",
|
|
|
|
- "治疗结果=",
|
|
|
|
- "影像学诊断费=",
|
|
|
|
- "目的=",
|
|
|
|
- "其它疾病治疗结果=",
|
|
|
|
- "血型=",
|
|
|
|
- "并发症=",
|
|
|
|
- "临床路径管理=",
|
|
|
|
- // "临床路径管理 1.完成 2.变异 3.退出 4.未入=临床路径管理",
|
|
|
|
- // "有无药物过敏=药物过敏",
|
|
|
|
- // "单病种管理 1.是 2.否=单病种管理",
|
|
|
|
- "现住址电话=现住址电话",
|
|
|
|
- "拟接收医疗机构名称=",
|
|
|
|
- "科主任=",
|
|
|
|
- "中成药费=",
|
|
|
|
- "助手II=",
|
|
|
|
- "门(急)诊诊断=",
|
|
|
|
- "非计划再次手术=",
|
|
|
|
- "是否住院期间发生压疮=",
|
|
|
|
- "入住ICU情况=",
|
|
|
|
- "进修医生=",
|
|
|
|
- "损伤中毒的外部因素=",
|
|
|
|
- "居住地邮政编码=",
|
|
|
|
- "麻醉方式=",
|
|
|
|
- "病历号=",
|
|
|
|
- "病房(出)=",
|
|
|
|
- "入院日期=",
|
|
|
|
- "户口地址=",
|
|
|
|
- "年龄单位=",
|
|
|
|
- "病房(入)=",
|
|
|
|
- "病案完成=",
|
|
|
|
- "西药费=",
|
|
|
|
- "工作场所=",
|
|
|
|
- "尸检=",
|
|
|
|
- "其它过敏=",
|
|
|
|
- "审核人=",
|
|
|
|
- "病理诊断=",
|
|
|
|
- // "放射与病理符合=放射与病理",
|
|
|
|
- "医院=",
|
|
|
|
- "就诊类别=",
|
|
|
|
- "籍贯=",
|
|
|
|
- // "门诊与出院符合=门诊与出院",
|
|
|
|
- "麻醉医师=",
|
|
|
|
- "实习医生=",
|
|
|
|
- "HIV-Ab=",
|
|
|
|
- "转科科室=",
|
|
|
|
- "联系电话=",
|
|
|
|
- "病理诊断费=",
|
|
|
|
- "事件基本信息=",
|
|
|
|
- "血小板=",
|
|
|
|
- "年龄=",
|
|
|
|
- "并发症情况=",
|
|
|
|
- "一般医疗服务费=",
|
|
|
|
- "联系人地址=",
|
|
|
|
- "过敏史=",
|
|
|
|
- "责任护士=",
|
|
|
|
- "主任医生=",
|
|
|
|
- "床号=",
|
|
|
|
- "抗菌药物费用=",
|
|
|
|
- "病人基本信息=",
|
|
|
|
- "生日=",
|
|
|
|
- "切口等级=",
|
|
|
|
- "HBsAg=",
|
|
|
|
- "手术记录=",
|
|
|
|
- "单病种管理=",
|
|
|
|
- // "临床与病理符合=临床与病理",
|
|
|
|
- "麻醉费=",
|
|
|
|
- "康复费=",
|
|
|
|
- "研究生=",
|
|
|
|
- "临床科室=",
|
|
|
|
- "出生体重1=",
|
|
|
|
- "审核=",
|
|
|
|
- "检查用一次性医用材料费=",
|
|
|
|
- "医疗付费方式=",
|
|
|
|
- "其它诊断=",
|
|
|
|
- "是否进入临床路径=",
|
|
|
|
- // "入院与出院符合=入院与出院",
|
|
|
|
- "诊断治疗信息=",
|
|
|
|
- "抢救次数=",
|
|
|
|
- "入院诊断=",
|
|
|
|
- "户籍住址=",
|
|
|
|
- "病理诊断的icd10=",
|
|
|
|
- "助手=",
|
|
|
|
- "手术操作代码=",
|
|
|
|
- "本人电话=",
|
|
|
|
- "医疗组=",
|
|
|
|
- "手术用一次性医用材料费=",
|
|
|
|
- "白蛋白类制品费=",
|
|
|
|
- "健康卡号=",
|
|
|
|
- "全血=",
|
|
|
|
- "民族=",
|
|
|
|
- "一般治疗操作费=",
|
|
|
|
- "术前诊断与术后诊断=",
|
|
|
|
- "其它诊断ICD10=",
|
|
|
|
- "病人类别=",
|
|
|
|
- "门急诊ICD10=",
|
|
|
|
- "中草药费=",
|
|
|
|
- "颅脑损伤患者昏迷时间(入院后)=",
|
|
|
|
- "关系=",
|
|
|
|
- "切口愈合等级=",
|
|
|
|
- "居民身份证=",
|
|
|
|
- "是否发生压疮=",
|
|
|
|
- "编码员=",
|
|
|
|
- "血费=",
|
|
|
|
- "手术级别=",
|
|
|
|
- "成功次数=",
|
|
|
|
- "就诊次数=",
|
|
|
|
- "婚姻=",
|
|
|
|
- "审核日期=",
|
|
|
|
- "条码病历号=",
|
|
|
|
- "主要诊断=",
|
|
|
|
- "住院次数=",
|
|
|
|
- "性别=",
|
|
|
|
- "损伤诊断icd10=",
|
|
|
|
- "入院病情2=",
|
|
|
|
- "临床物理治疗费=",
|
|
|
|
- "是否完成临床路径=",
|
|
|
|
- "手术名称=",
|
|
|
|
- "国籍=",
|
|
|
|
- "病历状态=",
|
|
|
|
- "实际住院天数=",
|
|
|
|
- "本人工作单位电话=",
|
|
|
|
- "工作单位邮政编码=",
|
|
|
|
- "病理号="
|
|
|
|
- // "病人出生日期=出生日期"
|
|
|
|
- // "门诊与出院符合 0.未做 1.符合 2.不符合 3.不确定=门诊与出院",
|
|
|
|
- // "入院与出院符合 0.未做 1.符合 2.不符合 3.不确定=入院与出院",
|
|
|
|
- // "术前与术后符合 0.未做 1.符合 2.不符合 3.不确定=术前与术后",
|
|
|
|
- // "临床与病理符合 0.未做 1.符合 2.不符合 3.不确定=临床与病理",
|
|
|
|
- // "放射与病理符合0.未做 1.符合 2.不符合 3.不确定=放射与病理"
|
|
|
|
- );
|
|
|
|
-
|
|
|
|
}
|
|
}
|