From e544532dc08b81614ecbac8685f018b70d5254e0 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期四, 12 三月 2026 18:01:22 +0800
Subject: [PATCH] 修改bug
---
xp-robotaxi-automatic-pilot-boot/src/main/java/com/xiaopeng/automaticPilot/service/KafkaConsumerService.java | 63 ++++++++++++++-----------------
1 files changed, 29 insertions(+), 34 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 862efe2..06b3853 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
@@ -14,10 +14,7 @@
import com.xiaopeng.api.dto.order.PopOrderDto;
import com.xiaopeng.api.dto.pushMessage.PushOrderRouteDTO;
import com.xiaopeng.api.dto.pushMessage.SendMessageDTO;
-import com.xiaopeng.api.feignClient.account.XpOperationUserClient;
-import com.xiaopeng.api.feignClient.account.XpOperationUserNotificationClient;
import com.xiaopeng.api.feignClient.maintenance.XpTaskClient;
-import com.xiaopeng.api.feignClient.maintenance.XpTaskRuleClient;
import com.xiaopeng.api.feignClient.map.XpMapClient;
import com.xiaopeng.api.feignClient.operation.ReassignOrderClient;
import com.xiaopeng.api.feignClient.operation.XpCruisePlanClient;
@@ -25,8 +22,6 @@
import com.xiaopeng.api.feignClient.order.XpOrderClient;
import com.xiaopeng.api.feignClient.pushMessage.XpPushMessageClient;
import com.xiaopeng.api.feignClient.vehicleConvoy.UserVehicleClient;
-import com.xiaopeng.api.feignClient.vehicleConvoy.XpFleetOperationsClient;
-import com.xiaopeng.api.feignClient.vehicleConvoy.XpFleetVehicleClient;
import com.xiaopeng.api.feignClient.vehicleConvoy.XpVehicleClient;
import com.xiaopeng.api.model.order.XpCruiseOrder;
import com.xiaopeng.api.model.order.XpOrder;
@@ -45,7 +40,6 @@
import com.xiaopeng.common.core.utils.uuid.UUID;
import com.xiaopeng.common.redis.service.RedisService;
import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.geo.Point;
import org.springframework.data.mongodb.core.MongoTemplate;
@@ -60,7 +54,6 @@
import java.util.*;
import java.util.concurrent.TimeUnit;
-;
/**
* Kafka 消费者服务
@@ -105,7 +98,7 @@
@Resource
private XpCruisePlanClient xpCruisePlanClient;
- @Resource(name = "hutoolSnowflake")
+ @Resource
private Snowflake snowflake;
@Value("${robotaxi.appId:xp_robotaxi_api}")
@@ -114,7 +107,7 @@
@Resource
private XpTaskClient xpTaskClient;
- private static final com.google.protobuf.util.JsonFormat.Printer jsonPrinter = com.google.protobuf.util.JsonFormat.printer()
+ private static final JsonFormat.Printer jsonPrinter = JsonFormat.printer()
.printingEnumsAsInts()
.preservingProtoFieldNames();
@@ -268,7 +261,7 @@
String vin = jsonObject.getString("vin");
String orderType = jsonObject.getString("orderType");
PopOrderDto dto = new PopOrderDto();
- dto.setOrderId(Long.valueOf(orderId));
+ dto.setOrderId(Long.valueOf(orderId.contains("XU") ? orderId.substring(2) : orderId));
dto.setXpVehicleVin(vin);
dto.setOrderType(orderType);
xpOrderClient.popOrder(dto);
@@ -368,12 +361,13 @@
//TODO 这两个字段现在拿不到
// dto.setDuration(rtTripInfo.getRemaining_time());
// dto.setDistance(rtTripInfo.getRemaining_distance().intValue());
+// dto.setDirection();
xpPushMessageClient.pushOrderRoute(dto);
}
}
-
-
}
+
+
/**
@@ -510,7 +504,7 @@
destination.setLatitude(xpCruiseOrder.getEndLat());
OrderRouteAndFareDto dto = new OrderRouteAndFareDto();
- dto.setOrderId(Long.parseLong(orderId));
+ dto.setOrderId(Long.parseLong(orderId.substring(2)));
dto.setOrigin(origin);
dto.setDestination(destination);
dto.setRouteType(3);
@@ -618,7 +612,7 @@
destination.setLatitude(xpCruiseOrder.getEndLat());
OrderRouteAndFareDto dto = new OrderRouteAndFareDto();
- dto.setOrderId(Long.parseLong(orderId));
+ dto.setOrderId(Long.parseLong(orderId.substring(2)));
dto.setOrigin(origin);
dto.setDestination(destination);
dto.setRouteType(3);
@@ -800,7 +794,7 @@
case ORDER_RECEIVED:
//收到订单
buildPushOrderStatus(orderId, OrderStatusEnum.READY_DEPART, sequence);
- xpOrderClient.updateOrderStatus(Long.parseLong(orderId), OrderStatusEnum.READY_DEPART.getCode());
+ xpOrderClient.updateOrderStatus(Long.parseLong(orderId.contains("XU") ? orderId.substring(2) : orderId), OrderStatusEnum.READY_DEPART.getCode());
break;
case ORDER_STARTED:
//开始执行订单
@@ -809,7 +803,7 @@
case ORDER_EN_ROUTE_TO_PICKUP:
//前往上车点
buildPushOrderStatus(orderId, OrderStatusEnum.PICK_UP, sequence);
- xpOrderClient.updateOrderStatus(Long.parseLong(orderId), OrderStatusEnum.PICK_UP.getCode());
+ xpOrderClient.updateOrderStatus(Long.parseLong(orderId.contains("XU") ? orderId.substring(2) : orderId), OrderStatusEnum.PICK_UP.getCode());
break;
case ORDER_ARRIVED_AT_PICKUP:
//到达上车点
@@ -818,17 +812,17 @@
case ORDER_WAITING_FOR_PICKUP:
//等待乘客上车
buildPushOrderStatus(orderId, OrderStatusEnum.PICK_UP_GUESTS, sequence);
- xpOrderClient.updateOrderStatus(Long.parseLong(orderId), OrderStatusEnum.PICK_UP_GUESTS.getCode());
+ xpOrderClient.updateOrderStatus(Long.parseLong(orderId.contains("XU") ? orderId.substring(2) : orderId), OrderStatusEnum.PICK_UP_GUESTS.getCode());
break;
case ORDER_PASSENGER_ONBOARD:
//乘客已上车
buildPushOrderStatus(orderId, OrderStatusEnum.PASSENGER_BOARDED, sequence);
- xpOrderClient.updateOrderStatus(Long.parseLong(orderId), OrderStatusEnum.PASSENGER_BOARDED.getCode());
+ xpOrderClient.updateOrderStatus(Long.parseLong(orderId.contains("XU") ? orderId.substring(2) : orderId), OrderStatusEnum.PASSENGER_BOARDED.getCode());
break;
case ORDER_EN_ROUTE_TO_DESTINATION:
//前往目的地
buildPushOrderStatus(orderId, OrderStatusEnum.IN_SERVICE, sequence);
- xpOrderClient.updateOrderStatus(Long.parseLong(orderId), OrderStatusEnum.IN_SERVICE.getCode());
+ xpOrderClient.updateOrderStatus(Long.parseLong(orderId.contains("XU") ? orderId.substring(2) : orderId), OrderStatusEnum.IN_SERVICE.getCode());
break;
case ORDER_ARRIVED_AT_DESTINATION:
//到达目的地
@@ -837,27 +831,28 @@
case ORDER_WAITING_FOR_DROPOFF:
//等待乘客下车
buildPushOrderStatus(orderId, OrderStatusEnum.SEE_OFF_GUESTS, sequence);
- xpOrderClient.updateOrderStatus(Long.parseLong(orderId), OrderStatusEnum.SEE_OFF_GUESTS.getCode());
+ xpOrderClient.updateOrderStatus(Long.parseLong(orderId.contains("XU") ? orderId.substring(2) : orderId), OrderStatusEnum.SEE_OFF_GUESTS.getCode());
break;
case ORDER_DROPOFF_COMPLETED:
//下车完成
buildPushOrderStatus(orderId, OrderStatusEnum.APPROVAL_REJECTION, sequence);
- xpOrderClient.updateOrderStatus(Long.parseLong(orderId), OrderStatusEnum.APPROVAL_REJECTION.getCode());
-
+ xpOrderClient.updateOrderStatus(Long.parseLong(orderId.contains("XU") ? orderId.substring(2) : orderId), OrderStatusEnum.APPROVAL_REJECTION.getCode());
// 下发巡游任务
- R<XpOrder> xpOrderR = xpOrderClient.queryOrderById(Long.parseLong(orderId));
- if(xpOrderR.getCode()==200){
- XpOrder orderData = xpOrderR.getData();
- Long vehicleId =orderData.getVehicleId();
- R<XpVehicle> xpVehicleR = xpVehicleClient.queryById(vehicleId);
- if(xpVehicleR.getData()!=null){
- XpVehicle xpVehicle = xpVehicleR.getData();
+ if(!orderId.contains("XU")){
+ R<XpOrder> xpOrderR = xpOrderClient.queryOrderById(Long.parseLong(orderId));
+ if(xpOrderR.getCode()==200){
+ XpOrder orderData = xpOrderR.getData();
+ Long vehicleId =orderData.getVehicleId();
+ R<XpVehicle> xpVehicleR = xpVehicleClient.queryById(vehicleId);
+ if(xpVehicleR.getData()!=null){
+ XpVehicle xpVehicle = xpVehicleR.getData();
- AddCruiseMissionDto addCruiseMissionDto = new AddCruiseMissionDto();
- addCruiseMissionDto.setOrder(orderData);
- addCruiseMissionDto.setVehicle(xpVehicle);
- xpCruiseOrderClient.addCruiseMission(addCruiseMissionDto);
+ AddCruiseMissionDto addCruiseMissionDto = new AddCruiseMissionDto();
+ addCruiseMissionDto.setOrder(orderData);
+ addCruiseMissionDto.setVehicle(xpVehicle);
+ xpCruiseOrderClient.addCruiseMission(addCruiseMissionDto);
+ }
}
}
@@ -871,7 +866,7 @@
case ORDER_CANCELLED:
//已取消
buildPushOrderStatus(orderId, OrderStatusEnum.CANCELED, sequence);
- xpOrderClient.updateOrderStatus(Long.parseLong(orderId), OrderStatusEnum.CANCELED.getCode());
+ xpOrderClient.updateOrderStatus(Long.parseLong(orderId.contains("XU") ? orderId.substring(2) : orderId), OrderStatusEnum.CANCELED.getCode());
break;
case ORDER_ARRIVED_AT_CRUISE_DESTINATION:
//到达巡游终点
--
Gitblit v1.7.1