From 158629a04db419a109b53eb480c50a250fb650c2 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期五, 27 二月 2026 14:45:32 +0800
Subject: [PATCH] 修改车机交互报文实现方式和相关业务逻辑
---
xp-robotaxi-automatic-pilot-boot/src/main/java/com/xiaopeng/automaticPilot/service/KafkaConsumerService.java | 30 ++++++++++++++----------------
1 files changed, 14 insertions(+), 16 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 114ecaa..47fea4d 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
@@ -96,7 +96,7 @@
@Resource
private RedisService redisService;
- @Autowired
+ @Resource
private XpCruisePlanClient xpCruisePlanClient;
@@ -256,8 +256,8 @@
//获取实时位置
RealtimePose pose = systemRuntimeStatus.getPose();
Wgs naviPose = pose.getNaviPose();
- Double latitude = naviPose.getLatitude();
- Double longitude = naviPose.getLongitude();
+ double latitude = naviPose.getLatitude();
+ double longitude = naviPose.getLongitude();
Double course = naviPose.getCourse();
Float alt = naviPose.getAlt();
//获取车辆静态信息
@@ -414,7 +414,9 @@
long sequence = msgContent.getHeader().getSequence();
//开始处理消息对应的业务逻辑
NavigationDeviationEvent deviationEvent = msgContent.getNaviDeviationEvent();
+ // todo 请求id确认是否有这个参数
// String requestId = deviationEvent.getRequestId();
+ String requestId = "";
//导航id
String routeID = "";
Long vehicleId = null;
@@ -520,7 +522,7 @@
}
//TODO 这里的逻辑不太对,收到导航偏航事件之后
//构建导航下发请求对象
-// cloudPushNavigationInfo(requestId, routeID, stringR.getData(), orderType, orderId, xpVehicle.getVehicleVin(), xpVehicle.getXpuId());
+ cloudPushNavigationInfo(requestId, routeID, stringR.getData(), orderType, orderId, xpVehicle.getVehicleVin(), xpVehicle.getXpuId());
}
// }
}
@@ -885,25 +887,21 @@
R<XpCruiseOrder> cruisePoint = xpCruisePlanClient.getCruisePoint(cruisePointDto);
if(cruisePoint!=null){
xpCruiseOrderClient.addCruiseOrder(cruisePoint.getData());
+ RtTask.Builder taskBuilder = RtTask.newBuilder();
+ //TODO 设置目标地点信息
+ taskBuilder.setOrderId(newXpCruiseOrder.getId());
+ taskBuilder.setTaskId("MISSION_"+ IdUtil.fastUUID());
+ taskBuilder.setTaskType(com.xiaopeng.api.vo.automaticPilot.protobuf.OrderType.ORDER_TYPE_CRUISE);
+ RtTaskList.Builder taskListBuilder = RtTaskList.newBuilder();
+ taskListBuilder.addTasks(taskBuilder.build());
-
- // 下发任务
- RTTask task = new RTTask();
- task.setOrder_id(newXpCruiseOrder.getId());
- task.setTask_id("MISSION_"+ IdUtil.fastUUID());
- task.setTask_type(TaskType.CRUISE);
- task.setStatus(TaskStatus.PENDING);
SnowFlake snowFlake = new SnowFlake(0, 0);
snowFlake.withStartTimestamp(1420041600000L);
long sequence1 = snowFlake.nextId();
- xpuUtil.cloudCreateOrder(task, xpVehicle.getVehicleVin(),sequence1);
-
+ xpuUtil.cloudCreateOrder(taskListBuilder.build(), xpVehicle.getVehicleVin(),sequence1);
}
-
}
-
}
-
}
}
}else{
--
Gitblit v1.7.1