From 6076049105348cb677d1c9d4809e8f6b29349624 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期四, 12 二月 2026 22:14:16 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/Robotaxi
---
xp-robotaxi-pushMessage-boot/src/main/java/com/xiaopeng/pushMessage/controller/PushOrderRouteController.java | 16 ++++++++++++++--
1 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/xp-robotaxi-pushMessage-boot/src/main/java/com/xiaopeng/pushMessage/controller/PushOrderRouteController.java b/xp-robotaxi-pushMessage-boot/src/main/java/com/xiaopeng/pushMessage/controller/PushOrderRouteController.java
index 588b865..bdcb061 100644
--- a/xp-robotaxi-pushMessage-boot/src/main/java/com/xiaopeng/pushMessage/controller/PushOrderRouteController.java
+++ b/xp-robotaxi-pushMessage-boot/src/main/java/com/xiaopeng/pushMessage/controller/PushOrderRouteController.java
@@ -32,6 +32,8 @@
private RedisService redisService;
@Autowired
private XpPushMessageClient xpPushMessageClient;
+ @Autowired
+ private XpOrderClient xpOrderClient;
/**
* 通过定位推送订单轨迹
@@ -40,9 +42,13 @@
@PostMapping("/inner/v1/order/pushOrderRoute")
public R<String> pushOrderRoute(@Validated @RequestBody PushOrderRouteDTO dto) {
+ // 获取路线规划
RouteVo routeVo = redisService.getCacheObject(CacheConstants.ORDER_ROUTE_CAPTURE + "_" + dto.getOrderId() + "_" +dto.getRouteType());
if(Objects.nonNull(routeVo)){
+
+ // 查询订单信息
+ XpOrder xpOrder = xpOrderClient.queryOrderById(dto.getOrderId()).getData();
// 计算实时点位到线段的最优截取
List<LonLatDto> lonLatDtos = MapMatchingUtil.clipBySegmentDistance(routeVo.getPolyline(), new LonLatDto(dto.getLongitude(), dto.getLatitude()));
@@ -67,9 +73,15 @@
route.put("polyline",JSONObject.toJSONString(polyline));
// 封装消息内容
+ Integer routeType = dto.getRouteType();
+ if(routeType == 2){
+ routeType = 3;
+ }else {
+ routeType = xpOrder.getStatus() == 4 ? 1 : 2;
+ }
Map<String, Object> content = new HashMap<>();
content.put("orderId",dto.getOrderId());
- content.put("routeType",dto.getRouteType());
+ content.put("routeType",routeType);
content.put("route",JSONObject.toJSONString(route));
// 封装轨迹信息
@@ -80,7 +92,7 @@
// 进行消息推送
SendMessageDTO sendMessageDTO = new SendMessageDTO();
- sendMessageDTO.setAppUserId(String.valueOf(dto.getAppUserId()));
+ sendMessageDTO.setAppUserId(String.valueOf(xpOrder.getAppUserId()));
sendMessageDTO.setMessage(JSONObject.toJSONString(params));
xpPushMessageClient.sendRoute(sendMessageDTO);
}
--
Gitblit v1.7.1