|
|
|
@ -53,19 +53,27 @@ public class PatientScanSynchronizer {
|
|
|
|
|
for (PatientScanConditionDTO condition : patientScanConditionDTOList) {
|
|
|
|
|
List<TBasic> basicList = getBasicInfo(condition);
|
|
|
|
|
if (Func.isEmpty(basicList)) {
|
|
|
|
|
log.warn("{},住院号:{},住院次数:{} 查询基础数据没有数据,请检查!", source, condition.getInpatientNo(), condition.getAdmissTimes());
|
|
|
|
|
syncMsgStringBuilder.append(source).append(",住院号:").append(condition.getInpatientNo()).append("住院次数:").append(condition.getAdmissTimes()).append(" 查询基础数据没有数据,请检查!");
|
|
|
|
|
log.warn("{},住院号:{},出院日期:{},患者姓名:{} 查询基础数据没有数据,请检查!", source, condition.getInpatientNo(),condition.getDisDate(),condition.getName());
|
|
|
|
|
syncMsgStringBuilder.append(source)
|
|
|
|
|
.append(",住院号:").append(condition.getInpatientNo())
|
|
|
|
|
.append(",出院日期:").append(condition.getDisDate())
|
|
|
|
|
.append(",患者姓名:").append(condition.getName())
|
|
|
|
|
.append(" 查询基础数据没有数据,请检查!");
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
if (basicList.size() > 1) {
|
|
|
|
|
log.warn("{},住院号:{},住院次数:{} 查询基础数据有多条数据,请检查!", source, condition.getInpatientNo(), condition.getAdmissTimes());
|
|
|
|
|
syncMsgStringBuilder.append(source).append(",住院号:").append(condition.getInpatientNo()).append("住院次数:").append(condition.getAdmissTimes()).append(" 查询基础数据有多条数据,请检查!");
|
|
|
|
|
log.warn("{},住院号:{},出院日期:{},患者姓名:{} 查询基础数据有多条数据,请检查!", source,condition.getInpatientNo(), condition.getDisDate(),condition.getName());
|
|
|
|
|
syncMsgStringBuilder.append(source)
|
|
|
|
|
.append(",住院号:").append(condition.getInpatientNo())
|
|
|
|
|
.append(",出院日期:").append(condition.getDisDate())
|
|
|
|
|
.append(",患者姓名:").append(condition.getName())
|
|
|
|
|
.append(" 查询基础数据有多条数据,请检查!");
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
List<PatientScan> patientScanList = patientScanService.getScanDataByInpatientNoAndTimes(condition);
|
|
|
|
|
log.info("{},住院号:{},住院次数:{} 采集视图数据:{} 条!", source, condition.getInpatientNo(), condition.getAdmissTimes(), patientScanList.size());
|
|
|
|
|
List<PatientScan> patientScanList = patientScanService.getScanDataByConditions(condition);
|
|
|
|
|
log.info("{},住院号:{},出院日期:{},患者姓名:{} 采集视图数据:{} 条!", source, condition.getInpatientNo(), condition.getDisDate(),condition.getName(), patientScanList.size());
|
|
|
|
|
saveCollectTaskAndReport(basicList.get(0), patientScanList);
|
|
|
|
|
log.info("{},住院号:{},住院次数:{} 采集视图数据:{} 条,执行成功!", source, condition.getInpatientNo(), condition.getAdmissTimes(), patientScanList.size());
|
|
|
|
|
log.info("{},住院号:{},出院日期:{},患者姓名:{} 采集视图数据:{} 条,执行成功!", source, condition.getInpatientNo(), condition.getDisDate(),condition.getName(), patientScanList.size());
|
|
|
|
|
fileCount += patientScanList.size();
|
|
|
|
|
successPatientCount++;
|
|
|
|
|
}
|
|
|
|
@ -89,9 +97,13 @@ public class PatientScanSynchronizer {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private List<TBasic> getBasicInfo(PatientScanConditionDTO patientScanConditionDTO) {
|
|
|
|
|
String disDate = patientScanConditionDTO.getDisDate();
|
|
|
|
|
|
|
|
|
|
TBasicQrDto basicQrDto = new TBasicQrDto();
|
|
|
|
|
basicQrDto.setInpatientNo(patientScanConditionDTO.getInpatientNo());
|
|
|
|
|
basicQrDto.setAdmissTimes(Integer.parseInt(patientScanConditionDTO.getAdmissTimes()));
|
|
|
|
|
basicQrDto.setName(patientScanConditionDTO.getName());
|
|
|
|
|
basicQrDto.setDisDateStart(disDate+" 00:00:00");
|
|
|
|
|
basicQrDto.setDisDateEnd(disDate+" 23:59:59");
|
|
|
|
|
basicQrDto.setIgnorePh(1);
|
|
|
|
|
return patientBasicMapper.getBasicInfo(basicQrDto);
|
|
|
|
|
}
|
|
|
|
|