CorderPickupTimeVO corderPickupTimeVO = new CorderPickupTimeVO();
// 当前日期
ZoneId zoneId = ZoneId.of("Asia/Shanghai");
LocalDate currentDate = LocalDate.now(zoneId);
// 设置开始时间为上午9点
LocalTime startTime = LocalTime.of(9, 0);
// 设置结束时间为晚上18点 顺丰速运目前有限制
LocalTime endTime = LocalTime.of(18, 0);
//日期
List<PickupRangeTimeVO> pickupRangeTimes = Lists.newLinkedList();
//日期1
LocalTime nowTime = LocalTime.now(zoneId);
LocalTime firstTime = LocalTime.of(nowTime.getHour(), 0).plusHours(1);
List<String> firstRangeTimes = Lists.newLinkedList();
if (firstTime.isAfter(startTime) && firstTime.isBefore(endTime)) {
//在区间内
while (firstTime.isBefore(endTime)) {
String timeStr = firstTime.toString();
firstRangeTimes.add(timeStr + "-" + firstTime.plusHours(1));
firstTime = firstTime.plusHours(1);
}
PickupRangeTimeVO firstPickupRangeTime = new PickupRangeTimeVO();
firstPickupRangeTime.setDateStr(currentDate.format(DateTimeFormatter.ofPattern("MM月dd日")) + "(今天)");
firstPickupRangeTime.setDayStr("今天");
firstPickupRangeTime.setRangeTimes(firstRangeTimes);
pickupRangeTimes.add(firstPickupRangeTime);
}
//日期2
LocalDate secondDate = currentDate.plusDays(1);
LocalTime otherStartTime = LocalTime.of(9, 0);
LocalTime otherEndTime = LocalTime.of(18, 0);
List<String> otherRangeTimeList = Lists.newLinkedList();
while (otherStartTime.isBefore(otherEndTime)) {
String timeStr = otherStartTime.toString();
otherRangeTimeList.add(timeStr + "-" + otherStartTime.plusHours(1));
otherStartTime = otherStartTime.plusHours(1);
}
PickupRangeTimeVO secondPickupRangeTime = new PickupRangeTimeVO();
secondPickupRangeTime.setDateStr(secondDate.format(DateTimeFormatter.ofPattern("MM月dd日")) + "(明天)");
secondPickupRangeTime.setDayStr("明天");
secondPickupRangeTime.setRangeTimes(otherRangeTimeList);
pickupRangeTimes.add(secondPickupRangeTime);
//日期3
LocalDate thirdDate = secondDate.plusDays(1);
PickupRangeTimeVO thirdPickupRangeTime = new PickupRangeTimeVO();
thirdPickupRangeTime.setDateStr(thirdDate.format(DateTimeFormatter.ofPattern("MM月dd日")) + "(后天)");
thirdPickupRangeTime.setRangeTimes(otherRangeTimeList);
thirdPickupRangeTime.setDayStr("后天");
pickupRangeTimes.add(thirdPickupRangeTime);
corderPickupTimeVO.setListDate(pickupRangeTimes);