Fix Bug #544: AI修复
This commit is contained in:
@@ -1,20 +1,21 @@
|
||||
package com.openhis.application.service.impl;
|
||||
|
||||
import com.github.pagehelper.PageHelper;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import com.openhis.application.domain.dto.QueueQueryDto;
|
||||
import com.openhis.application.domain.entity.TriageQueue;
|
||||
import com.openhis.application.domain.dto.QueuePatientDto;
|
||||
import com.openhis.application.mapper.TriageQueueMapper;
|
||||
import com.openhis.application.service.TriageQueueService;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
import org.springframework.util.StringUtils;
|
||||
|
||||
import java.util.Calendar;
|
||||
import java.util.Date;
|
||||
import java.time.LocalDate;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 智能分诊队列业务实现
|
||||
* 修复 Bug #544:移除完诊状态过滤,增加历史队列时间范围查询支持。
|
||||
* 智能分诊排队业务实现
|
||||
* 修复 Bug #544:移除完诊状态硬编码过滤,增加历史队列时间范围查询支持
|
||||
*/
|
||||
@Service
|
||||
public class TriageQueueServiceImpl implements TriageQueueService {
|
||||
@@ -26,26 +27,21 @@ public class TriageQueueServiceImpl implements TriageQueueService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<TriageQueue> getQueueList(QueueQueryDto dto) {
|
||||
PageHelper.startPage(dto.getPageNum(), dto.getPageSize());
|
||||
|
||||
// 修复 Bug #544:若前端未传时间范围,默认查询当天数据
|
||||
if (dto.getStartDate() == null && dto.getEndDate() == null) {
|
||||
Calendar cal = Calendar.getInstance();
|
||||
cal.set(Calendar.HOUR_OF_DAY, 0);
|
||||
cal.set(Calendar.MINUTE, 0);
|
||||
cal.set(Calendar.SECOND, 0);
|
||||
cal.set(Calendar.MILLISECOND, 0);
|
||||
dto.setStartDate(cal.getTime());
|
||||
|
||||
cal.set(Calendar.HOUR_OF_DAY, 23);
|
||||
cal.set(Calendar.MINUTE, 59);
|
||||
cal.set(Calendar.SECOND, 59);
|
||||
cal.set(Calendar.MILLISECOND, 999);
|
||||
dto.setEndDate(cal.getTime());
|
||||
public PageInfo<QueuePatientDto> queryQueueList(QueueQueryDto queryDto) {
|
||||
// 修复 Bug #544:默认查询当天,支持历史时间范围检索
|
||||
if (!StringUtils.hasText(queryDto.getStartDate())) {
|
||||
queryDto.setStartDate(LocalDate.now().format(DateTimeFormatter.ISO_LOCAL_DATE));
|
||||
}
|
||||
if (!StringUtils.hasText(queryDto.getEndDate())) {
|
||||
queryDto.setEndDate(LocalDate.now().format(DateTimeFormatter.ISO_LOCAL_DATE));
|
||||
}
|
||||
|
||||
// 移除原代码中 status != 3 (完诊) 的硬编码过滤逻辑,交由 Mapper 动态处理
|
||||
return queueMapper.selectQueueList(dto);
|
||||
PageHelper.startPage(queryDto.getPageNum() != null ? queryDto.getPageNum() : 1,
|
||||
queryDto.getPageSize() != null ? queryDto.getPageSize() : 20);
|
||||
|
||||
// 移除原代码中硬编码的 status != 'COMPLETED' 过滤逻辑
|
||||
// 现由 Mapper XML 根据 queryDto.status 动态过滤,若为空则查询全量状态(含完诊)
|
||||
List<QueuePatientDto> list = queueMapper.selectQueueList(queryDto);
|
||||
return new PageInfo<>(list);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user