|
@@ -160,15 +160,18 @@ public class THR02985 extends QCCatalogue {
|
|
|
|
|
|
//从出院小结中获取信息
|
|
|
if (leaveHospitalDoc != null) {
|
|
|
- getInfo(info, leaveHospitalDoc.getStructureMap(), "出院小结", "出院日期", "诊治经过");
|
|
|
- if (leaveHospitalDoc.getLeaveHospitalLabel() != null) {
|
|
|
- List<Drug> drugs = leaveHospitalDoc.getLeaveHospitalLabel().getDrugs();
|
|
|
- if (inputInfo.getMedicalRecordInfoDoc() != null) {
|
|
|
- Map<String, String> medicalRecordInfoStructureMap = inputInfo.getMedicalRecordInfoDoc().getStructureMap();
|
|
|
- dateStr = medicalRecordInfoStructureMap.get("leaveHospitalDate");
|
|
|
+ if (inputInfo.getMedicalRecordInfoDoc() != null) {
|
|
|
+ Map<String, String> medicalRecordInfoStructureMap = inputInfo.getMedicalRecordInfoDoc().getStructureMap();
|
|
|
+ dateStr = medicalRecordInfoStructureMap.get("leaveHospitalDate");
|
|
|
+ //如果存在出院小结,出院日期为空,存储系统当前时间
|
|
|
+ if (StringUtil.isBlank(dateStr)) {
|
|
|
+ dateStr = DateUtil.formatDateTime(new Date());
|
|
|
}
|
|
|
- if (StringUtil.isNotBlank(dateStr)) {
|
|
|
- getInfo(info, leaveHospitalDoc.getStructureMap(), "出院小结", "出院日期", "诊治经过");
|
|
|
+ }
|
|
|
+ if (StringUtil.isNotBlank(dateStr)) {
|
|
|
+ if (leaveHospitalDoc.getLeaveHospitalLabel() != null) {
|
|
|
+ List<Drug> drugs = leaveHospitalDoc.getLeaveHospitalLabel().getDrugs();
|
|
|
+ getDischargeInfo(info, leaveHospitalDoc.getStructureMap(), "出院小结", dateStr, "诊治经过");
|
|
|
getInfo(infoModel, dateStr, drugs);
|
|
|
}
|
|
|
}
|
|
@@ -266,7 +269,7 @@ public class THR02985 extends QCCatalogue {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 获取各模块信息<入院记录、首次病程录、手术记录、术后首程、会诊结果单、查房记录、出院小结>
|
|
|
+ * 获取各模块信息<入院记录、首次病程录、手术记录、术后首程、会诊结果单、查房记录>
|
|
|
*
|
|
|
* @param structureMap
|
|
|
* @param info
|
|
@@ -282,6 +285,22 @@ public class THR02985 extends QCCatalogue {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 获取出院小结模块信息
|
|
|
+ *
|
|
|
+ * @param structureMap
|
|
|
+ * @param info
|
|
|
+ */
|
|
|
+ private void getDischargeInfo(Map<String, Date> info, Map<String, String> structureMap, String modelType, String dateStr, String... contentKey) {
|
|
|
+ String content = CatalogueUtil.structureMapJoin(structureMap, Lists.newArrayList(contentKey));
|
|
|
+ if (StringUtil.isNotBlank(dateStr)) {
|
|
|
+ Date date = StringUtil.parseDateTime(dateStr);
|
|
|
+ if (StringUtil.isNotBlank(content) && date != null) {
|
|
|
+ info.put(modelType + "->" + content, date);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
private void getInfo(Map<String, List<Drug>> info, String dateKey, List<Drug> drugs) {
|
|
|
List<Drug> tempDrugs = new ArrayList<>();
|
|
|
if (null != drugs && drugs.size() > 0) {
|