From 67aeb1bc74d582c0f82ae19f4a0b087f9d3a73b3 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期四, 12 二月 2026 18:55:47 +0800
Subject: [PATCH] 修改费用明细返回结构

---
 xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java |   28 +++++++++++++++++++++++++++-
 1 files changed, 27 insertions(+), 1 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 d39f362..82a6735 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
@@ -860,8 +860,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