From d6c0f2ed698d6cdf86a0a3a8893b4d9717f3b7b1 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期五, 08 五月 2026 14:51:54 +0800
Subject: [PATCH] Merge branch '1.0' of http://120.76.84.145:10101/gitblit/r/java/Robotaxi into 1.0
---
xp-robotaxi-automatic-pilot-boot/src/main/java/com/xiaopeng/automaticPilot/controller/OrderMissionController.java | 35 +++++++++++++++++++++++++++++++++++
1 files changed, 35 insertions(+), 0 deletions(-)
diff --git a/xp-robotaxi-automatic-pilot-boot/src/main/java/com/xiaopeng/automaticPilot/controller/OrderMissionController.java b/xp-robotaxi-automatic-pilot-boot/src/main/java/com/xiaopeng/automaticPilot/controller/OrderMissionController.java
index cad290a..6c0d213 100644
--- a/xp-robotaxi-automatic-pilot-boot/src/main/java/com/xiaopeng/automaticPilot/controller/OrderMissionController.java
+++ b/xp-robotaxi-automatic-pilot-boot/src/main/java/com/xiaopeng/automaticPilot/controller/OrderMissionController.java
@@ -474,6 +474,41 @@
if(StringUtils.isNotEmpty(code)){
xpOrder = xpOrderClient.queryOrderByOrderNo(code).getData();
}
+
+ //保存车辆实时信息到mongodb
+ VehiclePosition vehiclePosition = mongoTemplate.findOne(new Query(Criteria.where("vin").is(xpVehicle.getVehicleVin())), VehiclePosition.class);
+ if (null == vehiclePosition) {
+ log.info("【模拟接单】MongoDB无车辆位置记录,新建,vin={}", xpVehicle.getVehicleVin());
+ vehiclePosition = new VehiclePosition();
+ vehiclePosition.setVin(xpVehicle.getVehicleVin());
+ vehiclePosition.setPoint(new GeoJsonPoint(startLon, startLat));
+ vehiclePosition.setCourse(60D);
+ vehiclePosition.setAlt(100F);
+ vehiclePosition.setSpeed(50F);
+ vehiclePosition.setCurrentElectricity(80);
+ vehiclePosition.setMileageRange(300f);
+ vehiclePosition.setHasOrder(0);
+ vehiclePosition.setOrderId(orderId);
+ vehiclePosition.setTotalOdometer(10000L);
+ vehiclePosition.setAddTime(System.currentTimeMillis());
+ mongoTemplate.save(vehiclePosition);
+ }else{
+ log.info("【模拟接单】更新MongoDB车辆位置记录,vin={}", xpVehicle.getVehicleVin());
+ vehiclePosition.setOrderId(orderId);
+ Update update = new Update()
+ .set("point", new GeoJsonPoint(startLon, startLat))
+ .set("course", 60D)
+ .set("alt", 100F)
+ .set("speed", 50F)
+ .set("currentElectricity", 80)
+ .set("mileageRange", 300f)
+ .set("hasOrder", 0)
+ .set("orderId", orderId)
+ .set("totalOdometer", 10000L)
+ .set("addTime", System.currentTimeMillis());
+ mongoTemplate.updateFirst(new Query(Criteria.where("vin").is(xpVehicle.getVehicleVin())), update, VehiclePosition.class);
+ }
+
orderId = xpOrder.getId();
OrderRouteAndFareDto dto = new OrderRouteAndFareDto();
dto.setOrderId(orderId);
--
Gitblit v1.7.1