From d5efeced51506a4a0c38485a7b96f8eae1a9a59e Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期六, 14 三月 2026 00:45:03 +0800
Subject: [PATCH] 修改bug

---
 xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java |   32 ++++++++++++++++++--------------
 1 files changed, 18 insertions(+), 14 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 bc79b55..414cf1e 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
@@ -1981,14 +1981,16 @@
         xpCruiseOrder.setCreateTime(LocalDateTime.now());
 
         // 判断当前时分秒是否大于收车时间
-        LocalTime vehicleCollectionTime = xpTaskRule.getVehicleCollectionTime();
-        if (vehicleCollectionTime.isBefore(LocalTime.now())) {
-            vehicle.setOperatingStatus(3);
-            //找到车辆的收车点位 更新终点点位
-            R<XpCruiseOrder> returnCruisePoint = xpCruisePlanClient.findReturnCruisePoint(xpCruiseOrder);
-            xpCruiseOrder = returnCruisePoint.getData();
+        if(null != xpTaskRule){
+            LocalTime vehicleCollectionTime = xpTaskRule.getVehicleCollectionTime();
+            if (vehicleCollectionTime.isBefore(LocalTime.now())) {
+                vehicle.setOperatingStatus(3);
+                //找到车辆的收车点位 更新终点点位
+                R<XpCruiseOrder> returnCruisePoint = xpCruisePlanClient.findReturnCruisePoint(xpCruiseOrder);
+                xpCruiseOrder = returnCruisePoint.getData();
+            }
+            xpVehicleClient.updateVehicleById(vehicle);
         }
-        xpVehicleClient.updateVehicleById(vehicle);
 
         xpCruiseOrderMapper.insert(xpCruiseOrder);
 
@@ -2081,14 +2083,16 @@
         xpCruiseOrder.setCreateTime(LocalDateTime.now());
 
         // 判断当前时分秒是否大于收车时间
-        LocalTime vehicleCollectionTime = xpTaskRule.getVehicleCollectionTime();
-        if (vehicleCollectionTime.isBefore(LocalTime.now())) {
-            vehicle.setOperatingStatus(3);
-            //找到车辆的收车点位 更新终点点位
-            R<XpCruiseOrder> returnCruisePoint = xpCruisePlanClient.findReturnCruisePoint(xpCruiseOrder);
-            xpCruiseOrder = returnCruisePoint.getData();
+        if(null != xpTaskRule){
+            LocalTime vehicleCollectionTime = xpTaskRule.getVehicleCollectionTime();
+            if (vehicleCollectionTime.isBefore(LocalTime.now())) {
+                vehicle.setOperatingStatus(3);
+                //找到车辆的收车点位 更新终点点位
+                R<XpCruiseOrder> returnCruisePoint = xpCruisePlanClient.findReturnCruisePoint(xpCruiseOrder);
+                xpCruiseOrder = returnCruisePoint.getData();
+            }
+            xpVehicleClient.updateVehicleById(vehicle);
         }
-        xpVehicleClient.updateVehicleById(vehicle);
 
         xpCruiseOrderMapper.insert(xpCruiseOrder);
         log.info("巡游订单创建成功,开始执行巡游订单 {}", JSON.toJSONString(xpCruiseOrder));

--
Gitblit v1.7.1