前端传来的只有日期内容,如:2025-04-17
需要在日期内容的基础上补充时间部分,代码示例:
/**
* 日志查询(分页查询)
* @param recordLogQueryDTO 查询参数对象
* @return 日志列表
*/
@Override
public PageBean<RecordLog> query(RecordLogQueryDTO recordLogQueryDTO) {
// 处理日期范围查询dateBegin、dateEnd(都是java.time.LocalDate的类型)
// 前端传过来的只有日期部分,没有时间部分,如:2025-03-09,这样默认就是 2025-03-09 00:00:00.000
// 如果查询日期范围,如 between date1 and date2,就查询不能这一天的数据
// LocalDate 转换为 LocalDateTime
// 通过 atStartOfDay 自动补充最小时间(当天午夜时间)
recordLogQueryDTO.setCreateBeginTime(recordLogQueryDTO.getDateBegin().atStartOfDay());
// 通过 atTime,指定补充时间,这里补充最大时间
recordLogQueryDTO.setCreateEndTime(recordLogQueryDTO.getDateEnd().atTime(23,59,59,999999999));
PageHelper.startPage(recordLogQueryDTO.getPage(), recordLogQueryDTO.getSize());
List<RecordLog> recordLogList = recordLogMapper.select(recordLogQueryDTO);
Page<RecordLog> recordLogPage = (Page<RecordLog>) recordLogList;
return new PageBean<>(recordLogPage.getTotal(), recordLogPage.getResult());
}
前后端联调效果: