puzhibing
2026-03-12 2b73d5cfaa57aee00ff41c37a136c764f5c8194b
xp-robotaxi-automatic-pilot-boot/src/main/java/com/xiaopeng/automaticPilot/service/KafkaConsumerService.java
@@ -390,7 +390,7 @@
            String orderId = systemRuntimeStatus.getRunningOrderStatusInfo().getOrderId();
            if(!orderId.contains("XU")){
                //巡游订单,需要关闭订单
                xpCruiseOrderClient.updateCruiseOrderId(Long.parseLong(orderId.substring(2)));
                xpCruiseOrderClient.cancelCruiseOrderById(Long.parseLong(orderId.substring(2)));
                XpCruiseOrder cruiseOrder = xpCruiseOrderClient.getCruiseOrder(Long.parseLong(orderId.substring(2))).getData();
                vehicle = xpVehicleClient.queryById(cruiseOrder.getVehicleId()).getData();
                if (vehicle != null) {
@@ -889,22 +889,16 @@
            //响应消息
            // TODO 1.处理结束当前巡游订单  2.创建新的巡游订单 返航  3.调用xpu车机接口  (判断是返航还是正常  返航需要存储之前的订单id)
            responseMessage(sequence, "");
            //前往目的地
            if(OrderStatusEnum.IN_SERVICE.equals(status)){
            }
            //到达目的地
            if(OrderStatusEnum.COMPLETED.equals(status)){
                // 返程找到目前的订单 -》之前的订单 查询生成一个   正常巡游 找到下一个点位   若到达最后点位  则反向找点位  每次判断是否收车状态 是则不进行处理了
                // 找到这个订单
                R<XpCruiseOrder> cruiseOrder = xpCruiseOrderClient.getCruiseOrder(Long.parseLong(orderId.substring(2)));
                if(cruiseOrder!=null){
                    XpCruiseOrder xpCruiseOrder = cruiseOrder.getData();
                    Long vehicleId = xpCruiseOrder.getVehicleId();
                    // 完成当前巡游单子 已完成
                    xpCruiseOrderClient.closeCruiseOrder(xpCruiseOrder.getVehicleVin());
                    xpCruiseOrderClient.completeCruiseOrder(Long.parseLong(orderId.substring(2)));
                    R<XpVehicle> xpVehicleR = xpVehicleClient.queryById(vehicleId);
                    XpVehicle xpVehicle = xpVehicleR.getData();
                    // 运营中 继续执行