From bbd837a72bb9ec1bcef044624960345f98969a49 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期四, 26 三月 2026 16:53:32 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 xp-robotaxi-automatic-pilot-boot/src/main/java/com/xiaopeng/automaticPilot/service/KafkaConsumerService.java |   17 +++++++++++++++--
 1 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/xp-robotaxi-automatic-pilot-boot/src/main/java/com/xiaopeng/automaticPilot/service/KafkaConsumerService.java b/xp-robotaxi-automatic-pilot-boot/src/main/java/com/xiaopeng/automaticPilot/service/KafkaConsumerService.java
index 039b30e..6e192e5 100644
--- a/xp-robotaxi-automatic-pilot-boot/src/main/java/com/xiaopeng/automaticPilot/service/KafkaConsumerService.java
+++ b/xp-robotaxi-automatic-pilot-boot/src/main/java/com/xiaopeng/automaticPilot/service/KafkaConsumerService.java
@@ -6,6 +6,7 @@
 import com.google.protobuf.InvalidProtocolBufferException;
 import com.google.protobuf.util.JsonFormat;
 import com.xiaopeng.api.dto.automaticPilot.MqttPublishDto;
+import com.xiaopeng.api.dto.automaticPilot.PushOrderDto;
 import com.xiaopeng.api.dto.automaticPilot.VehicleEventDTO;
 import com.xiaopeng.api.dto.map.OrderRouteAndFareDto;
 import com.xiaopeng.api.dto.operation.CruisePointDto;
@@ -423,7 +424,7 @@
         if (abnormalReason == AbnormalReason.FAULT) {
             log.info("车辆故障,开始处理故障");
             String orderId = systemRuntimeStatus.getRunningOrderStatusInfo().getOrderId();
-            if(!orderId.contains("XU")){
+            if(orderId.contains("XU")){
                 //巡游订单,需要关闭订单
                 xpCruiseOrderClient.cancelCruiseOrderById(Long.parseLong(orderId.substring(2)));
                 XpCruiseOrder cruiseOrder = xpCruiseOrderClient.getCruiseOrder(Long.parseLong(orderId.substring(2))).getData();
@@ -435,7 +436,19 @@
                     vehicle1.setId(vehicle.getId());
                     xpVehicleClient.updateVehicleById(vehicle1);
                 }
-            }else{
+            }else if(orderId.contains("TEST")){
+                //测试订单故障则取消订单
+                XpTestOrder testOrder = testOrderClient.queryOrderById(Long.parseLong(orderId.substring(4))).getData();
+                vehicle = xpVehicleClient.queryById(testOrder.getVehicleId()).getData();
+                if (vehicle != null) {
+                    // 修改车辆状态
+                    XpVehicle vehicle1 = new XpVehicle();
+                    vehicle1.setOperatingStatus(4);
+                    vehicle1.setId(vehicle.getId());
+                    xpVehicleClient.updateVehicleById(vehicle1);
+                    log.info("车辆故障,车辆状态修改0 {}", vehicle.getPlateNumber());
+                }
+            }else {
                 //正常订单
                 XpOrder xpOrder = xpOrderClient.queryOrderById(Long.parseLong(orderId)).getData();
                 vehicle = xpVehicleClient.queryById(xpOrder.getVehicleId()).getData();

--
Gitblit v1.7.1