From b1df51257f91e3e3c9a48ee138d167b90816e285 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期五, 13 三月 2026 20:21:41 +0800
Subject: [PATCH] 修改bug

---
 xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java |   32 ++++++++++++++++++++++----------
 1 files changed, 22 insertions(+), 10 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 7f543eb..6a67f18 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
@@ -2013,16 +2013,28 @@
         xpCruiseOrder.setStartLat(vehiclePosition.getPoint().getY());
 
         // 完成的直接走终点   终止的走起点
-        if (temp == 0) {
-            xpCruiseOrder.setEndPointId(xpCruiseOrders.getStartPointId());
-            xpCruiseOrder.setEndPointName(xpCruiseOrders.getStartPointName());
-            xpCruiseOrder.setEndLon(xpCruiseOrders.getStartLon());
-            xpCruiseOrder.setEndLat(xpCruiseOrders.getStartLat());
-        } else {
-            xpCruiseOrder.setEndPointId(xpCruiseOrders.getEndPointId());
-            xpCruiseOrder.setEndPointName(xpCruiseOrders.getEndPointName());
-            xpCruiseOrder.setEndLon(xpCruiseOrders.getEndLon());
-            xpCruiseOrder.setEndLat(xpCruiseOrders.getEndLat());
+        if(null != xpCruiseOrders){
+            if (temp == 0) {
+                xpCruiseOrder.setEndPointId(xpCruiseOrders.getStartPointId());
+                xpCruiseOrder.setEndPointName(xpCruiseOrders.getStartPointName());
+                xpCruiseOrder.setEndLon(xpCruiseOrders.getStartLon());
+                xpCruiseOrder.setEndLat(xpCruiseOrders.getStartLat());
+            } else {
+                xpCruiseOrder.setEndPointId(xpCruiseOrders.getEndPointId());
+                xpCruiseOrder.setEndPointName(xpCruiseOrders.getEndPointName());
+                xpCruiseOrder.setEndLon(xpCruiseOrders.getEndLon());
+                xpCruiseOrder.setEndLat(xpCruiseOrders.getEndLat());
+            }
+        }else{
+            // 先找计划
+            List<XpCruisePlanPoint> planPointList = xpCruisePlanClient.getCruisePlanPointList(vehicle.getId()).getData();
+            XpCruisePlanPoint xpCruisePlanPoint = planPointList.get(0);
+            Long endPointId = xpCruisePlanPoint.getPointId();
+            XpPoint endPoint = xpPointClient.queryById(endPointId).getData();
+            xpCruiseOrder.setEndPointId(endPointId);
+            xpCruiseOrder.setEndPointName(endPoint.getPointName());
+            xpCruiseOrder.setEndLon(endPoint.getPointLon());
+            xpCruiseOrder.setEndLat(endPoint.getPointLat());
         }
 
 

--
Gitblit v1.7.1