From 67ba7d7ed35008438ca0d97fbc9794169265c91a Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期五, 27 二月 2026 17:34:51 +0800
Subject: [PATCH] 订单轨迹实时查询
---
xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/controller/XpOrderController.java | 25 +++++++++++++++++++++++++
1 files changed, 25 insertions(+), 0 deletions(-)
diff --git a/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/controller/XpOrderController.java b/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/controller/XpOrderController.java
index 39d949e..21c9d3d 100644
--- a/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/controller/XpOrderController.java
+++ b/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/controller/XpOrderController.java
@@ -4,19 +4,23 @@
import cn.afterturn.easypoi.excel.entity.ExportParams;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.xiaopeng.api.dto.QueryOrderRouteDTO;
import com.xiaopeng.api.dto.order.GetOrderNumDto;
import com.xiaopeng.api.dto.order.PopOrderDto;
import com.xiaopeng.api.dto.statistics.OrderStatisticsDTO;
import com.xiaopeng.api.dto.statistics.StatisticsQueryDTO;
import com.xiaopeng.api.model.order.XpOrder;
import com.xiaopeng.api.model.vehicleConvoy.XpVehicle;
+import com.xiaopeng.api.vo.operation.RouteVo;
import com.xiaopeng.api.vo.order.FareBreakdownVo;
import com.xiaopeng.api.vo.order.XpHistoryEndPointsVo;
import com.xiaopeng.api.vo.order.XpHistoryStartPointsVo;
import com.xiaopeng.api.vo.order.XpPointInfoVo;
+import com.xiaopeng.common.core.constant.CacheConstants;
import com.xiaopeng.common.core.domain.R;
import com.xiaopeng.common.core.utils.WebUtils;
import com.xiaopeng.common.core.web.page.PageInfo;
+import com.xiaopeng.common.redis.service.RedisService;
import com.xiaopeng.order.mangodb.model.OrderTrajectory;
import com.xiaopeng.order.model.dto.XpOrderCommentDto;
import com.xiaopeng.order.model.dto.XpOrderPayDto;
@@ -62,6 +66,7 @@
public class XpOrderController {
private final IXpOrderService xpOrderService;
+ private final RedisService redisService;
/**
* 获取订单统计数据(内部接口)
@@ -451,4 +456,24 @@
return R.ok();
}
+ /**
+ * 订单查询实时轨迹路线
+ */
+ @ApiOperation(value = "订单查询实时轨迹路线")
+ @PostMapping("/api/v1/order/queryOrderRoute")
+ public R<RouteVo> queryOrderRoute(@RequestBody QueryOrderRouteDTO dto) {
+ // 查询订单信息
+ XpOrder xpOrder = xpOrderService.getById(dto.getOrderId());
+ // 封装消息内容
+ Integer routeType = dto.getRouteType();
+ if(routeType == 2){
+ routeType = 3;
+ }else {
+ routeType = xpOrder.getStatus() == 4 ? 1 : 2;
+ }
+ // 获取路线规划
+ RouteVo routeVo = redisService.getCacheObject(CacheConstants.ORDER_ROUTE_CAPTURE + "_" + dto.getOrderId() + "_" +routeType);
+ return R.ok(routeVo);
+ }
+
}
--
Gitblit v1.7.1