From 0b72de92a3130bdb8ce16fcde3fb6f3d1482b539 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期四, 12 二月 2026 20:38:13 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java | 33 +++++++++++++++++++++++++++++----
1 files changed, 29 insertions(+), 4 deletions(-)
diff --git a/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java b/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java
index 5ce747e..26bd344 100644
--- a/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java
+++ b/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java
@@ -64,7 +64,6 @@
import com.xiaopeng.order.job.base.QuartzManager;
import com.xiaopeng.order.job.base.TimeJobType;
import com.xiaopeng.order.job.jobs.OrderCancelJob;
-import com.xiaopeng.order.utils.XpPricingUtil;
import io.swagger.annotations.ApiModelProperty;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@@ -119,8 +118,8 @@
@Autowired
private MongoTemplate mongoTemplate;
- @Autowired
- private XpPricingUtil xpPricingUtil;
+// @Autowired
+// private XpPricingUtil xpPricingUtil;
@Override
public OrderStatisticsDTO getOrderStatistics(StatisticsQueryDTO query) {
@@ -864,8 +863,34 @@
if (pricing == null) {
throw new ServiceException("当前城市未配置定价规则", I18nKeyConstant.ORDER_PRICING_NOT_EXISTS);
}
+ // 查询订单轨迹
+ List<OrderTrajectory> trajectories = mongoTemplate.find(
+ new Query(Criteria.where("orderId").is(orderId))
+ .with(Sort.by(Sort.Direction.ASC, "locatetime")),
+ OrderTrajectory.class
+ );
+ // 计算等待时间
+ LocalDateTime boardingTime = order.getBoardingTime();// 上车时间
+ LocalDateTime arrivalTime = order.getArrivalTime();// 车辆到达上车点时间
+ // 行程开始时间
+ Integer waitTime =Math.abs( (int) Duration.between(boardingTime, arrivalTime).getSeconds());
+ // 计算订单总行驶距离,单位米
+ Double totalDistance = 0.00D;
+ // 行程总时间 秒
+ LocalDateTime tripBegin = order.getTripBegin();
+ LocalDateTime tripEnd = order.getTripEnd();
+ long seconds = Duration.between(tripBegin, tripEnd).getSeconds();
+ for (OrderTrajectory trajectory : trajectories) {
+
+ }
// XpPricingCardVo xpPricingCardVo = xpPricingUtil.calculationPrice(
-//
+// order.getAppUserId().toString(),JSON.parseObject(pricing.getBasicPricingJson()),
+// JSON.parseArray(pricing.getStartingFareJson()),
+// pricing.getDynamicPricingJson(),
+// pricing.getIsDynamicPrice(),
+// totalDistance,
+// seconds,
+// order.getCityId()
// );
// Long id = pricing.getId();
--
Gitblit v1.7.1