From 3b5a2830f5d450706c279ba8bf38feffa5e30171 Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期五, 13 二月 2026 15:38:33 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/Robotaxi

---
 xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java |   37 +++++++++++++++++++++++++++++++++++++
 1 files changed, 37 insertions(+), 0 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 f89847b..887015a 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
@@ -30,6 +30,7 @@
 import com.xiaopeng.api.feignClient.vehicleConvoy.XpVehicleClient;
 import com.xiaopeng.api.model.account.XpAppUser;
 import com.xiaopeng.api.model.operation.XpGeoQueryEntity;
+import com.xiaopeng.api.model.operation.XpFeedbackType;
 import com.xiaopeng.api.model.operation.XpPoint;
 import com.xiaopeng.api.model.order.XpOrder;
 import com.xiaopeng.api.model.order.XpOrderCancel;
@@ -71,6 +72,8 @@
 import com.xiaopeng.order.service.IXpOrderReassignService;
 import com.xiaopeng.order.service.IXpOrderService;
 import com.xiaopeng.order.utils.holiday.HolidayUtil;
+import com.xiaopeng.order.vo.OrderDetailVo;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.shardingsphere.transaction.core.TransactionType;
@@ -917,6 +920,8 @@
 
             userVehicleClient.cancelTaxiPassenger(cancelTaxiPassengerVo);
         }
+        // 计算起步价
+
 //        // 计算实际价格
 //        // 根据订单所属开通城市id 查询定价
 //        R<XpPricing> pricingByCityId = xpPricingClient.getPricingByCityId(order.getCityId());
@@ -1592,6 +1597,38 @@
         }
     }
 
+    @Override
+    public OrderDetailVo orderDetail(Long orderId, String uid) {
+        OrderDetailVo orderDetailVo = new OrderDetailVo();
+        XpOrder order = this.getById(orderId);
+        BeanUtils.copyProperties(order, orderDetailVo);
+        // 查询车辆信息
+        XpVehicle vehicle = xpVehicleClient.queryById(order.getVehicleId()).getData();
+        if (vehicle!=null){
+            orderDetailVo.setVehicleCode(vehicle.getVehicleCode());
+            orderDetailVo.setPlateNumber(vehicle.getPlateNumber());
+            orderDetailVo.setVehicleColor(vehicle.getVehicleColor());
+            orderDetailVo.setVehiclePictures(vehicle.getVehiclePictures());
+        }
+        // 查询评价信息
+        XpOrderEvaluate evaluate = xpOrderEvaluateService.lambdaQuery().eq(XpOrderEvaluate::getOrderId, orderId)
+                .last("limit 1").one();
+        if (evaluate != null) {
+            orderDetailVo.setFeedbackPictures(evaluate.getFeedbackPictures());
+            orderDetailVo.setFeedbackContent(evaluate.getFeedbackContent());
+            orderDetailVo.setOrderRating(evaluate.getOrderRating());
+            XpFeedbackType feedbackType = xpSystemSettingClient.getFeedbackTypeById(evaluate.getFeedbackTypeId()).getData();
+            orderDetailVo.setFeedbackTypeName(feedbackType.getFeedbackType());
+        }
+        List<OrderTrajectory> trajectories = mongoTemplate.find(
+                new Query(Criteria.where("orderId").is(orderId))
+                        .with(Sort.by(Sort.Direction.ASC, "locatetime")),
+                OrderTrajectory.class
+        );
+        orderDetailVo.setTrajectories(trajectories);
+        return orderDetailVo;
+    }
+
 
     /**
      * 成功操作下发命令后调用 用于弹出redis队列的获取成功的数据

--
Gitblit v1.7.1