获取七天的日期
获取七天的日期
1. 需求分析
需要获取七天(包括当天)的数据进行分析
2. 导入依赖
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.0.6</version>
</dependency>
3. 获取七天日期
/**
* 获取当前七天的时间
* yyyy-MM-dd 00:00:00
* 2022-08-01 00:00:00, 2022-08-02 00:00:00, 2022-08-03 00:00:00, 2022-08-04 00:00:00, 2022-08-05 00:00:00,
* 2022-08-06 00:00:00, 2022-08-07 00:00:00, 2022-08-08 00:00:00
*
* @return
*/
private List<DateTime> getDateTime() {
List<DateTime> dateTimes = new ArrayList<>();
String dateString = DateUtil.format(new Date(), "yyyy-MM-dd");
DateTime dateTime = DateUtil.parseDate(dateString); // 2022-08-07 00:00:00
DateTime dateTime1 = DateUtil.offsetDay(dateTime, 1); // 2022-08-08 00:00:00
for (int i = 6; i > 0; i--) {
dateTimes.add(DateUtil.offsetDay(dateTime, -i));
}
dateTimes.add(dateTime);
dateTimes.add(dateTime1);
return dateTimes;
}
4. 数据处理
List<DateTime> dateTime = getDateTime();
for (int i = 0; i < dateTime.size() - 1; i++) {
DateTime beginTime = dateTime.get(i);
DateTime endTime = dateTime.get(i + 1);
List<WorkOrder> workOrderList = workOrders.stream().filter(workOrder ->
DateUtil.parseDateTime(workOrder.getReleaseTime()).after(beginTime) &&
DateUtil.parseDateTime(workOrder.getReleaseTime()).before(endTime))
.collect(Collectors.toList());
}

浙公网安备 33010602011771号