优化接口

This commit is contained in:
Euni4U 2025-04-19 18:48:01 +08:00
parent 3ead66e969
commit 2a217957a5

View File

@ -761,35 +761,43 @@ public class InspectPatientServiceImpl implements InspectPatientService {
LocalDate startDate = dates.get(0); LocalDate startDate = dates.get(0);
LocalDate endDate = dates.get(1); LocalDate endDate = dates.get(1);
// 构建查询条件 // 构建查询条件只查询必要的字段
LambdaQueryWrapper<InspectPatientDO> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<InspectPatientDO> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper
// 添加打印状态条件 .select(
queryWrapper.eq(InspectPatientDO::getIsprint, 1); InspectPatientDO::getMedicalSn,
InspectPatientDO::getOrgname,
// 添加日期范围条件 - 从开始日期的0点到结束日期的23:59:59 InspectPatientDO::getDistrictname,
queryWrapper.between(InspectPatientDO::getPrinttime, InspectPatientDO::getOldmanflag,
startDate.atStartOfDay(), InspectPatientDO::getHtnflag,
endDate.atTime(23, 59, 59)); InspectPatientDO::getDiaflag,
InspectPatientDO::getSmiflag,
// 按打印时间倒序 InspectPatientDO::getPulflag
queryWrapper.orderByDesc(InspectPatientDO::getPrinttime); )
.eq(InspectPatientDO::getIsprint, 1)
.between(InspectPatientDO::getPrinttime, startDate.atStartOfDay(), endDate.atTime(23, 59, 59));
// 查询患者信息 // 查询患者信息
List<InspectPatientDO> patients = patientMapper.selectList(queryWrapper); List<InspectPatientDO> patients = patientMapper.selectList(queryWrapper);
// 转换为补充信息VO if (patients == null || patients.isEmpty()) {
return patients.stream().map(patient -> { return Collections.emptyList();
PatientSupplementVO vo = new PatientSupplementVO(); }
vo.setMedicalSn(patient.getMedicalSn());
vo.setOrgname(patient.getOrgname()); // 使用批量转换避免循环中多次创建对象
vo.setDistrictname(patient.getDistrictname()); return patients.stream()
vo.setOldmanflag(patient.getOldmanflag()); .map(patient -> {
vo.setHtnflag(patient.getHtnflag()); PatientSupplementVO vo = new PatientSupplementVO();
vo.setDiaflag(patient.getDiaflag()); vo.setMedicalSn(patient.getMedicalSn());
vo.setSmiflag(patient.getSmiflag()); vo.setOrgname(patient.getOrgname());
vo.setPulflag(patient.getPulflag()); vo.setDistrictname(patient.getDistrictname());
return vo; vo.setOldmanflag(patient.getOldmanflag());
}).collect(Collectors.toList()); vo.setHtnflag(patient.getHtnflag());
vo.setDiaflag(patient.getDiaflag());
vo.setSmiflag(patient.getSmiflag());
vo.setPulflag(patient.getPulflag());
return vo;
})
.collect(Collectors.toList());
} }
} }