From e8cd57fc46fa84b0c095f7e93cb348c014d06eb4 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期六, 07 三月 2026 21:00:03 +0800
Subject: [PATCH] 新增管理后台接口,修改小程序流程bug及其他相关功能
---
xp-robotaxi-push-message-boot/src/main/java/com/xiaopeng/pushMessage/controller/PushOrderRouteController.java | 24 +++++++++++-------------
1 files changed, 11 insertions(+), 13 deletions(-)
diff --git a/xp-robotaxi-push-message-boot/src/main/java/com/xiaopeng/pushMessage/controller/PushOrderRouteController.java b/xp-robotaxi-push-message-boot/src/main/java/com/xiaopeng/pushMessage/controller/PushOrderRouteController.java
index bdcb061..3aa44fb 100644
--- a/xp-robotaxi-push-message-boot/src/main/java/com/xiaopeng/pushMessage/controller/PushOrderRouteController.java
+++ b/xp-robotaxi-push-message-boot/src/main/java/com/xiaopeng/pushMessage/controller/PushOrderRouteController.java
@@ -41,14 +41,19 @@
*/
@PostMapping("/inner/v1/order/pushOrderRoute")
public R<String> pushOrderRoute(@Validated @RequestBody PushOrderRouteDTO dto) {
-
+ // 查询订单信息
+ XpOrder xpOrder = xpOrderClient.queryOrderById(dto.getOrderId()).getData();
+ // 封装消息内容
+ Integer routeType = dto.getRouteType();
+ if(routeType == 2){
+ routeType = 3;
+ }else {
+ routeType = xpOrder.getStatus() == 3 ? 1 : 2;
+ }
// 获取路线规划
- RouteVo routeVo = redisService.getCacheObject(CacheConstants.ORDER_ROUTE_CAPTURE + "_" + dto.getOrderId() + "_" +dto.getRouteType());
+ RouteVo routeVo = redisService.getCacheObject(CacheConstants.ORDER_ROUTE_CAPTURE + "_" + dto.getOrderId() + "_" +routeType);
if(Objects.nonNull(routeVo)){
-
- // 查询订单信息
- XpOrder xpOrder = xpOrderClient.queryOrderById(dto.getOrderId()).getData();
// 计算实时点位到线段的最优截取
List<LonLatDto> lonLatDtos = MapMatchingUtil.clipBySegmentDistance(routeVo.getPolyline(), new LonLatDto(dto.getLongitude(), dto.getLatitude()));
@@ -58,7 +63,7 @@
routeVo.setPolyline(lonLatDtos);
// 存储最新路线偏离缓存,后续进行轨迹截取
- redisService.setCacheObject(CacheConstants.ORDER_ROUTE_CAPTURE + "_" + dto.getOrderId() + "_" +dto.getRouteType(), routeVo);
+ redisService.setCacheObject(CacheConstants.ORDER_ROUTE_CAPTURE + "_" + dto.getOrderId() + "_" +routeType, routeVo);
// 封装轨迹点位集合
Map<String, Object> polyline = new HashMap<>();
@@ -72,13 +77,6 @@
route.put("duration",dto.getDuration());
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",routeType);
--
Gitblit v1.7.1