From d80a20a9458abdbd601779c4ed8474ca092027bf Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期四, 12 二月 2026 19:26:31 +0800
Subject: [PATCH] 小程序接口
---
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/utils/TaskOrderUtil.java | 19 +++++++++++++++++--
1 files changed, 17 insertions(+), 2 deletions(-)
diff --git a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/utils/TaskOrderUtil.java b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/utils/TaskOrderUtil.java
index 9f18319..7814e57 100644
--- a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/utils/TaskOrderUtil.java
+++ b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/utils/TaskOrderUtil.java
@@ -10,6 +10,7 @@
import com.xiaopeng.api.feignClient.vehicleConvoy.UserVehicleClient;
import com.xiaopeng.api.feignClient.vehicleConvoy.VehicleControlClient;
import com.xiaopeng.api.feignClient.vehicleConvoy.XpVehicleClient;
+import com.xiaopeng.api.model.operation.XpElectronicFence;
import com.xiaopeng.api.model.operation.XpTradingStrategy;
import com.xiaopeng.api.model.order.XpOrder;
import com.xiaopeng.api.vo.automaticPilot.VehiclePosition;
@@ -18,6 +19,7 @@
import com.xiaopeng.common.core.constant.CacheConstants;
import com.xiaopeng.common.core.domain.R;
import com.xiaopeng.common.redis.service.RedisService;
+import com.xiaopeng.operation.mapper.XpElectronicFenceMapper;
import com.xiaopeng.operation.service.IXpElectronicFenceAreaService;
import com.xiaopeng.operation.service.IXpTradingStrategyService;
import com.xiaopeng.operation.service.XpPointService;
@@ -81,6 +83,9 @@
threadPoolTaskExecutor.setThreadNamePrefix("taskOrder-");
threadPoolTaskExecutor.initialize();
}
+
+ @Autowired
+ private XpElectronicFenceMapper xpElectronicFenceMapper;
/**
* 5秒执行一次
@@ -221,6 +226,10 @@
}
XpOrder xpOrder = xpOrderR.getData();
+ // 找出围栏id
+ Long xpElectronicFenceAreaId = xpOrder.getXpElectronicFenceAreaId();
+ XpElectronicFence xpElectronicFence = xpElectronicFenceMapper.selectById(xpElectronicFenceAreaId);
+
for (int i = 0; i < count; i++) {
System.out.println("进入找车环节");
@@ -236,12 +245,18 @@
List<String> vinList = positionList.stream().map(VehiclePosition::getVin).collect(Collectors.toList());
// 获取车辆的信息 筛选出可用车辆
- R<List<VehiclePositionVo>> vehiclePositionVos = xpVehicleClient.queryVehiclePositionByVin(new VehiclePositionByVinDto(xpOrder.getXpElectronicFenceAreaId(), vinList, xpTradingStrategy.getSimultaneouslyOrderCount()));
+ R<List<String>> vehiclePositionVos = xpVehicleClient.queryVehiclePositionByVin(new VehiclePositionByVinDto(xpElectronicFence.getId(), vinList, xpTradingStrategy.getSimultaneouslyOrderCount()));
if(vehiclePositionVos.getCode()!=200){
continue;
}
- List<VehiclePositionVo> availableVehiclesNearby =vehiclePositionVos.getData();
+ List<VehiclePositionVo> availableVehiclesNearby = BeanUtil.copyToList(positionList, VehiclePositionVo.class);
+ List<String> data = vehiclePositionVos.getData();
+
+ // 找出符合条件的
+ availableVehiclesNearby = availableVehiclesNearby.stream().filter(e->data.contains(e.getVin())).collect(Collectors.toList());
+
+// List<VehiclePositionVo> availableVehiclesNearby =vehiclePositionVos.getData();
if (!availableVehiclesNearby.isEmpty()) {
if (availableVehiclesNearby.size() > 1) {
--
Gitblit v1.7.1