From b92a2bf0fdb56b51066c2d484f8880d1b05941de Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期六, 18 四月 2026 17:33:04 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/1.0' into 1.0
---
xp-robotaxi-itinerary-boot/src/main/java/com/xiaopeng/itinerary/controller/ActiveOrderController.java | 32 ++++++++++++++++++++++++++++----
1 files changed, 28 insertions(+), 4 deletions(-)
diff --git a/xp-robotaxi-itinerary-boot/src/main/java/com/xiaopeng/itinerary/controller/ActiveOrderController.java b/xp-robotaxi-itinerary-boot/src/main/java/com/xiaopeng/itinerary/controller/ActiveOrderController.java
index 75d1684..359e5e4 100644
--- a/xp-robotaxi-itinerary-boot/src/main/java/com/xiaopeng/itinerary/controller/ActiveOrderController.java
+++ b/xp-robotaxi-itinerary-boot/src/main/java/com/xiaopeng/itinerary/controller/ActiveOrderController.java
@@ -2,6 +2,7 @@
import com.xiaopeng.api.dto.map.RouteAndFareDto;
import com.xiaopeng.api.dto.order.OrderChangeDto;
+import com.xiaopeng.api.vo.automaticPilot.VehiclePosition;
import com.xiaopeng.api.vo.operation.RouteAndFareVo;
import com.xiaopeng.common.core.domain.R;
import com.xiaopeng.itinerary.service.ActiveOrderService;
@@ -10,11 +11,14 @@
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.data.geo.Distance;
+import org.springframework.data.geo.Metrics;
+import org.springframework.data.geo.Point;
+import org.springframework.data.mongodb.core.MongoTemplate;
+import org.springframework.data.mongodb.core.query.Criteria;
+import org.springframework.data.mongodb.core.query.Query;
import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
@@ -73,6 +77,26 @@
return R.ok();
}
+ /**
+ * 周围车辆点位查询
+ */
+ @ApiOperation(value = "周围车辆点位查询", notes = "", tags = {"小程序-周围车辆点位查询"})
+ @GetMapping("/api/v1/mini-program/nearby/cars")
+ @XpClientCheck(checkToken = false, checkOtpToken = true)
+ public R<List<VehiclePosition>> carAround(@RequestParam double lon,@RequestParam double lat,@RequestParam double distanceMeters,HttpServletRequest request) {
+
+ String uid = request.getHeader("XP-Uid");
+
+ Point point = new Point(lon, lat);
+ Distance distance = new Distance(distanceMeters / 1000.0, Metrics.KILOMETERS);
+ Criteria criteria = Criteria.where("point")
+ .nearSphere(point)
+ .maxDistance(distance.getNormalizedValue());
+ Query query = new Query(criteria);
+ return R.ok(mongoTemplate.find(query, VehiclePosition.class));
+ }
+ @Resource
+ private MongoTemplate mongoTemplate;
}
--
Gitblit v1.7.1