diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/impl/DoctorStationEmrAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/impl/DoctorStationEmrAppServiceImpl.java index 73c64d46d..2f6b9bcef 100755 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/impl/DoctorStationEmrAppServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/impl/DoctorStationEmrAppServiceImpl.java @@ -79,7 +79,7 @@ public class DoctorStationEmrAppServiceImpl implements IDoctorStationEmrAppServi Emr emr = new Emr(); BeanUtils.copyProperties(patientEmrDto, emr); String contextStr = patientEmrDto.getContextJson().toString(); - Emr patientEmr = emrService.getOne(new LambdaQueryWrapper().eq(Emr::getEncounterId, emr.getEncounterId())); + Emr patientEmr = emrService.getOne(new LambdaQueryWrapper().eq(Emr::getEncounterId, emr.getEncounterId()).orderByDesc(Emr::getCreateTime).last("LIMIT 1"), false); boolean saveSuccess; // 如果已经保存病历,再次保存走更新 if (patientEmr != null) { @@ -159,7 +159,8 @@ public class DoctorStationEmrAppServiceImpl implements IDoctorStationEmrAppServi new LambdaQueryWrapper() .eq(DocRecord::getEncounterId, encounterId) .orderByDesc(DocRecord::getCreateTime) - .last("LIMIT 1") + .last("LIMIT 1"), + false ); if (docRecord != null) { // 住院病历存在,也返回数据 @@ -248,7 +249,7 @@ public class DoctorStationEmrAppServiceImpl implements IDoctorStationEmrAppServi for (Encounter encounter : encounters) { // 检查该就诊记录是否已经有病历 Emr existingEmr = emrService.getOne( - new LambdaQueryWrapper().eq(Emr::getEncounterId, encounter.getId()) + new LambdaQueryWrapper().eq(Emr::getEncounterId, encounter.getId()).orderByDesc(Emr::getCreateTime).last("LIMIT 1"), false ); // 检查该就诊是否由指定医生负责 @@ -306,7 +307,7 @@ public class DoctorStationEmrAppServiceImpl implements IDoctorStationEmrAppServi public R checkNeedWriteEmr(Long encounterId) { // 检查该就诊记录是否已经有病历 Emr existingEmr = emrService.getOne( - new LambdaQueryWrapper().eq(Emr::getEncounterId, encounterId) + new LambdaQueryWrapper().eq(Emr::getEncounterId, encounterId).orderByDesc(Emr::getCreateTime).last("LIMIT 1"), false ); // 如果没有病历,则需要写病历