|
@@ -9,12 +9,15 @@ import com.lantone.qc.pub.model.doc.consultation.ConsultationDoc;
|
|
|
import com.lantone.qc.pub.model.doc.consultation.ConsultationRecordDoc;
|
|
|
import com.lantone.qc.pub.model.doc.consultation.ConsultationResultsDoc;
|
|
|
import com.lantone.qc.pub.model.vo.MedrecVo;
|
|
|
+import com.lantone.qc.pub.util.FastJsonUtils;
|
|
|
import com.lantone.qc.pub.util.ListUtil;
|
|
|
import com.lantone.qc.pub.util.MapUtil;
|
|
|
import com.lantone.qc.pub.util.StringUtil;
|
|
|
import com.lantone.qc.trans.ModelDocTrans;
|
|
|
import com.lantone.qc.trans.comsis.OrdinaryAssistant;
|
|
|
+import com.lantone.qc.trans.shaoyf.util.ShaoyfOrdinaryAssistant;
|
|
|
|
|
|
+import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
import java.util.Set;
|
|
@@ -87,16 +90,42 @@ public class ShaoyfConsultationDocTrans extends ModelDocTrans {
|
|
|
|
|
|
private ConsultationRecordDoc getConsultationRecordDoc(Map<String, Object> contentMap) {
|
|
|
String content = contentMap.get("xmlText").toString();
|
|
|
- Map<String, String> sourceMap = ShaoyfXmlUtil.getXmlToMap(content);
|
|
|
- sourceMap.put("mode_id=" + contentMap.get("modeId").toString(), "");
|
|
|
- sourceMap.put("rec_title=" + contentMap.get("recTitle").toString(), "");
|
|
|
- Map<String, String> structureMap = OrdinaryAssistant.mapKeyContrast(sourceMap, consultationRecord_keyContrasts);
|
|
|
|
|
|
+ Map<String, String> sourceMap = new HashMap<>();
|
|
|
+ Map<String, String> structureMap = new HashMap<>();
|
|
|
+ if (contentMap.get("isParsed") != null && "1".equals(contentMap.get("isParsed").toString())) {
|
|
|
+ sourceMap = (Map) FastJsonUtils.getJsonToMap(content);
|
|
|
+ sourceMap.remove("hospitalId");
|
|
|
+ sourceMap.put("mode_id", "300");
|
|
|
+ try {
|
|
|
+ ShaoyfOrdinaryAssistant.replaceData(sourceMap,"recordDate","病历日期");
|
|
|
+ ShaoyfOrdinaryAssistant.replaceData(sourceMap,"behospitalDate","入院时间");
|
|
|
+ ShaoyfOrdinaryAssistant.replaceData(sourceMap,"leaveHospitalDate","出院日期");
|
|
|
+ ShaoyfOrdinaryAssistant.replaceData(sourceMap,"recDate","签名时间");
|
|
|
+ ShaoyfOrdinaryAssistant.replaceData(sourceMap,"auditDate","审核日期");
|
|
|
+ ShaoyfOrdinaryAssistant.replaceData(sourceMap,"patientSignDate","患者或家属签字时间");
|
|
|
+ } catch (Exception e) {
|
|
|
+
|
|
|
+ }
|
|
|
+ structureMap = OrdinaryAssistant.mapKeyContrast(sourceMap, consultationRecord_keyContrastParseds);
|
|
|
+ } else {
|
|
|
+ sourceMap = ShaoyfXmlUtil.getXmlToMap(content);
|
|
|
+ sourceMap.put("mode_id=" + contentMap.get("modeId").toString(), "");
|
|
|
+ sourceMap.put("rec_title=" + contentMap.get("recTitle").toString(), "");
|
|
|
+ structureMap = OrdinaryAssistant.mapKeyContrast(sourceMap, consultationRecord_keyContrasts);
|
|
|
+ }
|
|
|
ConsultationRecordDoc consultationRecordDoc = new ConsultationRecordDoc();
|
|
|
consultationRecordDoc.setStructureMap(structureMap);
|
|
|
consultationRecordDoc.setPageData((Map) structureMap);
|
|
|
return consultationRecordDoc;
|
|
|
}
|
|
|
+ // 会诊记录映射字段
|
|
|
+ private List<String> consultationRecord_keyContrastParseds = Lists.newArrayList(
|
|
|
+ "事件日期=记录时间",
|
|
|
+ "医生=记录医师",
|
|
|
+ "临床科室=申请科室",
|
|
|
+ "会诊执行情况=会诊情况"
|
|
|
+ );
|
|
|
|
|
|
// 会诊记录映射字段
|
|
|
private List<String> consultationRecord_keyContrasts = Lists.newArrayList(
|
|
@@ -130,22 +159,64 @@ public class ShaoyfConsultationDocTrans extends ModelDocTrans {
|
|
|
|
|
|
private ConsultationResultsDoc getConsultationResultsDoc(Map<String, Object> contentMap) {
|
|
|
String content = contentMap.get("xmlText").toString();
|
|
|
- Map<String, String> sourceMap = ShaoyfXmlUtil.getXmlToMap(content);
|
|
|
- sourceMap.put("mode_id=" + contentMap.get("modeId").toString(), "");
|
|
|
- sourceMap.put("rec_title=" + contentMap.get("recTitle").toString(), "");
|
|
|
- Map<String, String> structureMap = OrdinaryAssistant.mapKeyContrast(sourceMap, consultationResults_keyContrasts);
|
|
|
-
|
|
|
- MapUtil.keyAssig(structureMap, "申请科室", "临床科室");
|
|
|
- if (contentMap.get("recTitle").toString().equals("外请会诊回复单")) {
|
|
|
- MapUtil.keyAssig(structureMap, "会诊科室", "会诊医生");
|
|
|
- MapUtil.keyAssig(structureMap, "申请医生", "医师签名");
|
|
|
- MapUtil.keyAssig(structureMap, "申请日期", "事件日期");
|
|
|
+
|
|
|
+ Map<String, String> sourceMap = new HashMap<>();
|
|
|
+ Map<String, String> structureMap = new HashMap<>();
|
|
|
+ if (contentMap.get("isParsed") != null && "1".equals(contentMap.get("isParsed").toString())) {
|
|
|
+ sourceMap = (Map) FastJsonUtils.getJsonToMap(content);
|
|
|
+ sourceMap.remove("hospitalId");
|
|
|
+ sourceMap.put("mode_id", "329");
|
|
|
+ try {
|
|
|
+ ShaoyfOrdinaryAssistant.replaceData(sourceMap,"recordDate","病历日期");
|
|
|
+ ShaoyfOrdinaryAssistant.replaceData(sourceMap,"behospitalDate","入院日期");
|
|
|
+ ShaoyfOrdinaryAssistant.replaceData(sourceMap,"recDate","会诊日期及时间");
|
|
|
+ ShaoyfOrdinaryAssistant.replaceData(sourceMap,"auditDate","审核日期");
|
|
|
+ ShaoyfOrdinaryAssistant.replaceData(sourceMap,"applyDate","申请日期");
|
|
|
+ ShaoyfOrdinaryAssistant.replaceData(sourceMap,"consultationArriveDate","会诊到达时间");
|
|
|
+ } catch (Exception e) {
|
|
|
+
|
|
|
+ }
|
|
|
+ structureMap = OrdinaryAssistant.mapKeyContrast(sourceMap, consulconsultationResults_keyContrastParseds);
|
|
|
+ } else {
|
|
|
+ sourceMap = ShaoyfXmlUtil.getXmlToMap(content);
|
|
|
+ sourceMap.put("mode_id=" + contentMap.get("modeId").toString(), "");
|
|
|
+ sourceMap.put("rec_title=" + contentMap.get("recTitle").toString(), "");
|
|
|
+ structureMap = OrdinaryAssistant.mapKeyContrast(sourceMap, consultationResults_keyContrasts);
|
|
|
+
|
|
|
+ MapUtil.keyAssig(structureMap, "申请科室", "临床科室");
|
|
|
+ if (contentMap.get("recTitle").toString().equals("外请会诊回复单")) {
|
|
|
+ MapUtil.keyAssig(structureMap, "会诊科室", "会诊医生");
|
|
|
+ MapUtil.keyAssig(structureMap, "申请医生", "医师签名");
|
|
|
+ MapUtil.keyAssig(structureMap, "申请日期", "事件日期");
|
|
|
+ }
|
|
|
}
|
|
|
ConsultationResultsDoc consultationResultsDoc = new ConsultationResultsDoc();
|
|
|
consultationResultsDoc.setStructureMap(structureMap);
|
|
|
consultationResultsDoc.setPageData((Map) structureMap);
|
|
|
return consultationResultsDoc;
|
|
|
}
|
|
|
+ // 会诊结果映射字段
|
|
|
+ private List<String> consulconsultationResults_keyContrastParseds = Lists.newArrayList(
|
|
|
+ "hospitalId=医院ID",
|
|
|
+ "behospitalCode=病历号",
|
|
|
+ "name=姓名",
|
|
|
+ "sex=性别",
|
|
|
+ "age=年龄",
|
|
|
+ "bedNo=床号",
|
|
|
+ "deptName=科别",
|
|
|
+ "recTitle=标题",
|
|
|
+ "applyDept=申请科室",
|
|
|
+ "applyDoctor=申请医生",
|
|
|
+ "inviteType=会诊类别",
|
|
|
+ "inviteDept=会诊科室",
|
|
|
+ "inviteDoctor=会诊医生",
|
|
|
+ "currentDiagnosis=当前诊断",
|
|
|
+ "consultationPurpose=会诊目的",
|
|
|
+ "consultationOpinions=会诊意见",
|
|
|
+ "recDoctor=医师签名",
|
|
|
+ "auditDoctor=审核医生",
|
|
|
+ "note=注意事项"
|
|
|
+ );
|
|
|
|
|
|
// 会诊结果映射字段
|
|
|
private List<String> consultationResults_keyContrasts = Lists.newArrayList(
|
|
@@ -185,11 +256,30 @@ public class ShaoyfConsultationDocTrans extends ModelDocTrans {
|
|
|
|
|
|
private ConsultationApplicationDoc getConsultationApplicationDoc(Map<String, Object> contentMap) {
|
|
|
String content = contentMap.get("xmlText").toString();
|
|
|
- Map<String, String> sourceMap = ShaoyfXmlUtil.getXmlToMap(content);
|
|
|
- sourceMap.put("mode_id=" + contentMap.get("modeId").toString(), "");
|
|
|
- sourceMap.put("rec_title=" + contentMap.get("recTitle").toString(), "");
|
|
|
- Map<String, String> structureMap = OrdinaryAssistant.mapKeyContrast(sourceMap, consultationApplication_keyContrasts);
|
|
|
|
|
|
+ Map<String, String> sourceMap = new HashMap<>();
|
|
|
+ Map<String, String> structureMap = new HashMap<>();
|
|
|
+ if (contentMap.get("isParsed") != null && "1".equals(contentMap.get("isParsed").toString())) {
|
|
|
+ sourceMap = (Map) FastJsonUtils.getJsonToMap(content);
|
|
|
+ sourceMap.remove("hospitalId");
|
|
|
+ sourceMap.put("mode_id", "300");
|
|
|
+ try {
|
|
|
+ ShaoyfOrdinaryAssistant.replaceData(sourceMap,"recordDate","病历日期");
|
|
|
+ ShaoyfOrdinaryAssistant.replaceData(sourceMap,"behospitalDate","入院日期");
|
|
|
+ ShaoyfOrdinaryAssistant.replaceData(sourceMap,"applyDate","申请日期");
|
|
|
+ ShaoyfOrdinaryAssistant.replaceData(sourceMap,"recDate","记录时间");
|
|
|
+ ShaoyfOrdinaryAssistant.replaceData(sourceMap,"auditDate","审核日期");
|
|
|
+ ShaoyfOrdinaryAssistant.replaceData(sourceMap,"consultationDate","会诊日期及时间");
|
|
|
+ } catch (Exception e) {
|
|
|
+
|
|
|
+ }
|
|
|
+ structureMap = OrdinaryAssistant.mapKeyContrast(sourceMap, consultationApplication_keyContrastParseds);
|
|
|
+ } else {
|
|
|
+ sourceMap = ShaoyfXmlUtil.getXmlToMap(content);
|
|
|
+ sourceMap.put("mode_id=" + contentMap.get("modeId").toString(), "");
|
|
|
+ sourceMap.put("rec_title=" + contentMap.get("recTitle").toString(), "");
|
|
|
+ structureMap = OrdinaryAssistant.mapKeyContrast(sourceMap, consultationApplication_keyContrasts);
|
|
|
+ }
|
|
|
if (structureMap.get("会诊医生") != null) {
|
|
|
String ra = structureMap.get("会诊医生").replaceAll("&nbsp;", "");
|
|
|
structureMap.put("会诊医生", ra);
|
|
@@ -201,6 +291,31 @@ public class ShaoyfConsultationDocTrans extends ModelDocTrans {
|
|
|
return consultationApplicationDoc;
|
|
|
}
|
|
|
|
|
|
+ // 会诊申请单映射字段
|
|
|
+ private List<String> consultationApplication_keyContrastParseds = Lists.newArrayList(
|
|
|
+ "behospitalCode=病历号",
|
|
|
+ "name=姓名",
|
|
|
+ "sex=性别",
|
|
|
+ "age=年龄",
|
|
|
+ "bedNo=床号",
|
|
|
+ "deptName=科别",
|
|
|
+ "recTitle=标题",
|
|
|
+ "applyDept=申请科室",
|
|
|
+ "applyDoctor=医生",
|
|
|
+ "inviteType=会诊分类",
|
|
|
+ "inviteDept=会诊科室",
|
|
|
+ "inviteDoctor=会诊医生",
|
|
|
+ "briefNote=简要病情",
|
|
|
+ "diagnosis=当前诊断",
|
|
|
+ "treatmentSituation=诊治经过",
|
|
|
+ "consultationPurpose=申请理由目的",
|
|
|
+ "consultationOpinions=会诊意见",
|
|
|
+ "recDoctor=医生",
|
|
|
+ "auditDoctor=审核医生",
|
|
|
+ "notes=注意事项"
|
|
|
+
|
|
|
+ );
|
|
|
+
|
|
|
// 会诊申请单映射字段
|
|
|
private List<String> consultationApplication_keyContrasts = Lists.newArrayList(
|
|
|
"事件日期=申请日期",
|