查询规定时间范围内数据
查询规定时间范围内数据
一、需求
开发中常见如下类似的筛选条件开发列表:
二、开发思路
前端:一般给传递的只是一个选择标志
,我们要根据该标志确定查询时间范围。
分析:
时间范围标志 | 时间范围名称 | 时间范围下限 | 时间范围上限 |
---|---|---|---|
1 | 当天 | 当天凌晨 | 当前系统时间 |
2 | 24小时 | 当前系统时间前24小时 | 当前系统时间 |
3 | 近一周 | 当前系统时间向前推7天 | 当前系统时间 |
我们可以根据当前系统时间,确定查询时间范围。
我的业务上限时间戳都是当前系统时间【new Date()
】
三、实现代码片段
// 获取查询下限时间戳
var diXianSJC = new Date();
var calendar = Calendar.getInstance();
switch (shiJianFWBZ) {
// 当前时间前24小时
case "2": {
calendar.add(Calendar.DATE, -1);
diXianSJC.setTime(calendar.getTimeInMillis());
}
// 当前时间前七天
case "3": {
calendar.add(Calendar.DATE, -7);
diXianSJC.setTime(calendar.getTimeInMillis());
}
// 当日凌晨
default: {
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MILLISECOND, 0);
diXianSJC.setTime(calendar.getTimeInMillis());
}
}