feat:佛山三院多个患者,记录多个

master
wyb 10 hours ago
parent 122117505d
commit 8c7ba9aa68

@ -21,6 +21,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Collections;
import java.util.Date;
import java.util.List;
@ -59,23 +60,27 @@ public class FsBusinessServiceImpl implements FsBusinessService {
}
TbasicQrPreciseCondition condition = FsWsRecordSubmitMessageConvert.convert(dto);
List<String> patientIds = tBasicMapper.getPatientIdByPreciseConditions(condition);
verifyPatientIds(patientIds);
String submitDateStr = dto.getSubmitDate();
Date submitDate = Func.parseDate(submitDateStr, "yyyy/M/d HH:mm:ss");
tBasicMapper.insertOrUpdateDoctorSubmitTime(patientIds.get(0), submitDate);
compensateTask("电子病历提交",patientIds, taskConfig.getCollectorIds());
tBasicMapper.updateEmrSubmitState(patientIds.get(0), 1);
verifyPatientIds(patientIds);
// 有多个患者,多个患者都插入数据。
for (String patientId : patientIds) {
String submitDateStr = dto.getSubmitDate();
Date submitDate = Func.parseDate(submitDateStr, "yyyy/M/d HH:mm:ss");
tBasicMapper.insertOrUpdateDoctorSubmitTime(patientId ,submitDate);
compensateTask("电子病历提交", Collections.singletonList(patientId), taskConfig.getCollectorIds());
tBasicMapper.updateEmrSubmitState(patientId, 1);
// 添加提交记录
HospitalSubmitNodeLogAddDTO nodeLogAddDTO = new HospitalSubmitNodeLogAddDTO();
nodeLogAddDTO.setPatientId(patientId);
nodeLogAddDTO.setContent(new String[]{Func.formatDateTime(submitDate)});
nodeLogAddDTO.setSubmitNodeEnum(HospitalSubmitNodeEnum.EMR);
nodeLogAddDTO.setCreater("电子病历提交");
nodeLogAddDTO.setCreaterName("电子病历提交");
hospitalSubmitNodeServiceApi.addLog(nodeLogAddDTO);
}
// 添加提交记录
HospitalSubmitNodeLogAddDTO nodeLogAddDTO = new HospitalSubmitNodeLogAddDTO();
nodeLogAddDTO.setPatientId(patientIds.get(0));
nodeLogAddDTO.setContent(new String[]{Func.formatDateTime(submitDate)});
nodeLogAddDTO.setSubmitNodeEnum(HospitalSubmitNodeEnum.EMR);
nodeLogAddDTO.setCreater("电子病历提交");
nodeLogAddDTO.setCreaterName("电子病历提交");
hospitalSubmitNodeServiceApi.addLog(nodeLogAddDTO);
return true;
} catch (Exception ex) {
@ -88,9 +93,6 @@ public class FsBusinessServiceImpl implements FsBusinessService {
if (Func.isEmpty(patientIds)) {
throw new BaseException("系统无此患者!");
}
if (patientIds.size() > 1) {
throw new BaseException("系统中患者有多个,无法确认!");
}
}
@Override
@ -110,20 +112,19 @@ public class FsBusinessServiceImpl implements FsBusinessService {
List<String> patientIds = tBasicMapper.getPatientIdByPreciseConditions(condition);
verifyPatientIds(patientIds);
String submitDate = dto.getSubmitDate();
tBasicMapper.insertOrUpdateNurseSubmitTime(patientIds.get(0), Func.parseDate(submitDate, DateUtil.PATTERN_DATETIME));
compensateTask("护理提交",patientIds, taskConfig.getCollectorIds());
// 添加提交记录
HospitalSubmitNodeLogAddDTO nodeLogAddDTO = new HospitalSubmitNodeLogAddDTO();
nodeLogAddDTO.setPatientId(patientIds.get(0));
nodeLogAddDTO.setContent(new String[]{submitDate});
nodeLogAddDTO.setSubmitNodeEnum(HospitalSubmitNodeEnum.NURSE);
nodeLogAddDTO.setCreater("护理提交");
nodeLogAddDTO.setCreaterName("护理提交");
hospitalSubmitNodeServiceApi.addLog(nodeLogAddDTO);
for (String patientId : patientIds) {
String submitDate = dto.getSubmitDate();
tBasicMapper.insertOrUpdateNurseSubmitTime(patientId, Func.parseDate(submitDate, DateUtil.PATTERN_DATETIME));
compensateTask("护理提交",Collections.singletonList(patientId), taskConfig.getCollectorIds());
// 添加提交记录
HospitalSubmitNodeLogAddDTO nodeLogAddDTO = new HospitalSubmitNodeLogAddDTO();
nodeLogAddDTO.setPatientId(patientId);
nodeLogAddDTO.setContent(new String[]{submitDate});
nodeLogAddDTO.setSubmitNodeEnum(HospitalSubmitNodeEnum.NURSE);
nodeLogAddDTO.setCreater("护理提交");
nodeLogAddDTO.setCreaterName("护理提交");
hospitalSubmitNodeServiceApi.addLog(nodeLogAddDTO);
}
return true;
} catch (Exception ex) {
log.error(ex.getMessage(), ex);

Loading…
Cancel
Save