refactor(order):优化订单查询时间过滤逻辑
- 移除对 cn.hutool.core.date.DateTime 的依赖 - 使用 java.time 包替换原有日期处理方式 - 简化日期解析与时间范围计算逻辑 - 统一时间戳转换为 UTC 毫秒数- 提升代码
Showing
1 changed file
with
6 additions
and
11 deletions
| 1 | package com.infoloop.tianting.service.client; | 1 | package com.infoloop.tianting.service.client; |
| 2 | 2 | ||
| 3 | -import cn.hutool.core.date.DateTime; | ||
| 4 | import com.infoloop.tianting.SingleResponse; | 3 | import com.infoloop.tianting.SingleResponse; |
| 5 | import com.infoloop.tianting.SingleSkuResponse; | 4 | import com.infoloop.tianting.SingleSkuResponse; |
| 6 | import com.infoloop.tianting.SingleSpecialResponse; | 5 | import com.infoloop.tianting.SingleSpecialResponse; |
| ... | @@ -92,6 +91,7 @@ import java.io.IOException; | ... | @@ -92,6 +91,7 @@ import java.io.IOException; |
| 92 | import java.time.Duration; | 91 | import java.time.Duration; |
| 93 | import java.time.LocalDate; | 92 | import java.time.LocalDate; |
| 94 | import java.time.LocalDateTime; | 93 | import java.time.LocalDateTime; |
| 94 | +import java.time.LocalTime; | ||
| 95 | import java.time.ZoneOffset; | 95 | import java.time.ZoneOffset; |
| 96 | import java.util.ArrayList; | 96 | import java.util.ArrayList; |
| 97 | import java.util.HashMap; | 97 | import java.util.HashMap; |
| ... | @@ -497,18 +497,13 @@ public class OrderServiceRpcClient { | ... | @@ -497,18 +497,13 @@ public class OrderServiceRpcClient { |
| 497 | .setShouldFilterClientIds(true).addClientIds(queryOrderDto.getClientId()) | 497 | .setShouldFilterClientIds(true).addClientIds(queryOrderDto.getClientId()) |
| 498 | .setShouldFilterStallIds(true).addAllStallIds(queryOrderDto.getStallIds()); | 498 | .setShouldFilterStallIds(true).addAllStallIds(queryOrderDto.getStallIds()); |
| 499 | if (StringUtils.isNotEmpty(queryOrderDto.getMealTime())) { | 499 | if (StringUtils.isNotEmpty(queryOrderDto.getMealTime())) { |
| 500 | - DateTime mealDate = cn.hutool.core.date.DateUtil.parseDate(queryOrderDto.getMealTime()); | 500 | + LocalDate today = LocalDate.parse(queryOrderDto.getMealTime(), DateUtil.YYYY_MM_DD); |
| 501 | - | 501 | + LocalDateTime todayZero = today.atStartOfDay(); |
| 502 | - DateTime startOfDayBeijing = cn.hutool.core.date.DateUtil.beginOfDay(mealDate); | 502 | + LocalDateTime todayEnd = today.atTime(LocalTime.MAX); |
| 503 | - DateTime endOfDayBeijing = cn.hutool.core.date.DateUtil.endOfDay(mealDate); | ||
| 504 | - | ||
| 505 | - long startTimestamp = cn.hutool.core.date.DateUtil.offsetHour(startOfDayBeijing, 8).getTime(); | ||
| 506 | - long endTimestamp = cn.hutool.core.date.DateUtil.offsetHour(endOfDayBeijing, 8).getTime(); | ||
| 507 | - | ||
| 508 | request.setShouldFilterMealTimeStart(true) | 503 | request.setShouldFilterMealTimeStart(true) |
| 509 | - .setMealTimeStart(startTimestamp) | 504 | + .setMealTimeStart(todayZero.toInstant(ZoneOffset.UTC).toEpochMilli()) |
| 510 | .setShouldFilterMealTimeEnd(true) | 505 | .setShouldFilterMealTimeEnd(true) |
| 511 | - .setMealTimeEnd(endTimestamp); | 506 | + .setMealTimeEnd(todayEnd.toInstant(ZoneOffset.UTC).toEpochMilli()); |
| 512 | } | 507 | } |
| 513 | return orderServiceRpcBlockingStub.queryClientCustomerOrdersByCondition(request.build()); | 508 | return orderServiceRpcBlockingStub.queryClientCustomerOrdersByCondition(request.build()); |
| 514 | } | 509 | } | ... | ... |
-
Please register or login to post a comment