From 3963419240d589661e54d64fe17f6efab5ccb254 Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期五, 13 二月 2026 19:39:57 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/Robotaxi
---
xp-robotaxi-automaticPilot-boot/src/main/java/com/xiaopeng/automaticPilot/service/KafkaConsumerService.java | 97 ++++++++++--------------------------------------
1 files changed, 21 insertions(+), 76 deletions(-)
diff --git a/xp-robotaxi-automaticPilot-boot/src/main/java/com/xiaopeng/automaticPilot/service/KafkaConsumerService.java b/xp-robotaxi-automaticPilot-boot/src/main/java/com/xiaopeng/automaticPilot/service/KafkaConsumerService.java
index 44f658b..822c6ea 100644
--- a/xp-robotaxi-automaticPilot-boot/src/main/java/com/xiaopeng/automaticPilot/service/KafkaConsumerService.java
+++ b/xp-robotaxi-automaticPilot-boot/src/main/java/com/xiaopeng/automaticPilot/service/KafkaConsumerService.java
@@ -89,6 +89,24 @@
*/
public void topicProdRobotaxiXpuHigh(String message) {
MsgContent msgContent = JSON.parseObject(message, MsgContent.class);
+ handleXPUMessage(msgContent, message);
+ }
+
+ /**
+ * 消费消息 - XPU上报Robotaxi云端的消息topic(低优先级)
+ */
+ public void topicProdRobotaxiXpuNormal(String message) {
+ MsgContent msgContent = JSON.parseObject(message, MsgContent.class);
+ handleXPUMessage(msgContent, message);
+ }
+
+
+ /**
+ * 处理XPU消息
+ * @param msgContent
+ * @param message
+ */
+ public void handleXPUMessage(MsgContent msgContent, String message){
RtMsgHeader header = msgContent.getHeader();
MessageType type = header.getType();
//处理请求消息
@@ -173,87 +191,12 @@
xpOrderClient.popOrder(dto);
}
}
-
-
}
}
}
- /**
- * 消费消息 - XPU上报Robotaxi云端的消息topic(低优先级)
- */
- public void topicProdRobotaxiXpuNormal(String message) {
- MsgContent msgContent = JSON.parseObject(message, MsgContent.class);
- RtMsgHeader header = msgContent.getHeader();
- MessageType type = header.getType();
- //处理请求消息
- if (MessageType.MESSAGE_TYPE_REQUEST == type) {
- //区分业务类型
- RTCmdType cmd = header.getCmd();
- switch (cmd) {
- case SYSTEM_STATUS_XPU:
- log.info("XPU发布系统运行状态 (XPU→云端):{}", message);
- systemStatusXpu(msgContent);
- break;
- case XPU_NAVIGATION_REQUEST:
- log.info("XPU向云端请求导航 (XPU→云端):{}", message);
- xpuNavigationRequest(msgContent);
- break;
- case TRIP_STATUS_UPDATE_EVENT:
- log.info("行程状态更新(XPU→云端)(XPU→座舱):{}", message);
- break;
- case PULLOVER_STATUS_EVENT:
- log.info("靠边停车状态(XPU→云端)(XPU→座舱):{}", message);
- break;
- case DRIVING_MODE_UPDATE_EVENT:
- log.info("驾驶模式变化(XPU→云端)(XPU→座舱):{}", message);
- break;
- case SYSTEM_STATUS_UPDATE_EVENT:
- log.info("系统状态变化(XPU→云端)(XPU→座舱):{}", message);
- break;
- case TASK_STATE_UPDATE_EVENT:
- log.info("任务状态变化(XPU→云端)(XPU→座舱):{}", message);
- break;
- case ORDER_STATE_UPDATE_EVENT:
- log.info("订单状态变化(XPU→云端)(XPU→座舱):{}", message);
- orderStateUpdateEvent(msgContent);
- break;
- case POINT_ARRIVAL_STATUS_EVENT:
- log.info("到达目标点状态(XPU→云端)(XPU→座舱):{}", message);
- break;
- case PICKUP_CONFIRMATION_EVENT:
- log.info("用户上车确认(XPU→云端)(XPU→座舱):{}", message);
- break;
- case DROPOFF_INFO_EVENT:
- log.info("用户下车信息(XPU→云端):{}", message);
- break;
- case NAVIGATION_DEVIATION_EVENT:
- log.info("导航偏航(XPU→云端):{}", message);
- navigationDeviationEvent(msgContent);
- break;
- case EMERGENCY_STOP_EVENT:
- log.info("急停(XPU→云端)(XPU→座舱):{}", message);
- break;
- case NAVIGATION_UPDATE_EVENT:
- log.info("导航信息变化(XPU→云端):{}", message);
- break;
- case TASK_QUEUE_UPDATE_EVENT:
- log.info("XPU待执行任务队列(XPU→云端):{}", message);
- break;
- case SYSTEM_STATE_ANAPSHOT_SYNC_EVENT:
- log.info("每次MQTT连接之后触发 (XPU→云端):{}", message);
- break;
- case ORDER_STATE_UPDATE_TO_CDU_EVENT:
- log.info("更新订单状态到CDU (XPU→云端):{}", message);
- break;
- default:
- log.info("消息不在处理范围内,忽略:{}", message);
- }
- }
-
- }
/**
@@ -273,7 +216,9 @@
Float alt = naviPose.getAlt();
//获取车辆静态信息
VehicleStaticInfo staticInfo = systemRuntimeStatus.getVehicle_status().getStatic_info();
- String vin = staticInfo.getVin();
+ String xpuId = staticInfo.getXpu_id();
+ XpVehicle xpVehicle = xpVehicleClient.findByVehicleXpuId(xpuId).getData();
+ String vin = xpVehicle.getVehicleVin();
//先响应消息
Long sequence = msgContent.getHeader().getSequence();
responseMessage(sequence, vin);
--
Gitblit v1.7.1