From 43e9944347e51d5628166f8c1b78d98cfd2013ea Mon Sep 17 00:00:00 2001
From: yyy <1083599556@qq.com>
Date: 星期三, 22 四月 2026 22:12:22 +0800
Subject: [PATCH] 1.调试接口修改问题 2.修改定向服务的播单和 改派
---
xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpTargetedServiceServiceImpl.java | 67 ++++++++++++++++++++++++++++++---
1 files changed, 60 insertions(+), 7 deletions(-)
diff --git a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpTargetedServiceServiceImpl.java b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpTargetedServiceServiceImpl.java
index 96db0c3..d56d845 100644
--- a/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpTargetedServiceServiceImpl.java
+++ b/xp-robotaxi-operation-boot/src/main/java/com/xiaopeng/operation/service/impl/XpTargetedServiceServiceImpl.java
@@ -9,6 +9,7 @@
import com.xiaopeng.api.model.operation.XpTargetedServiceWhitelist;
import com.xiaopeng.api.model.vehicleConvoy.XpVehicle;
import com.xiaopeng.api.query.operation.XpTargetedServiceQuery;
+import com.xiaopeng.api.vo.operation.XpTargetedServiceVehicleVo;
import com.xiaopeng.api.vo.operation.XpTargetedServiceVo;
import com.xiaopeng.common.core.domain.R;
import com.xiaopeng.common.core.exception.ServiceException;
@@ -22,10 +23,7 @@
import javax.annotation.Resource;
import java.time.LocalDateTime;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
import java.util.stream.Collectors;
@Service
@@ -49,11 +47,11 @@
List<XpTargetedServiceVehicle> list = xpTargetedServiceMapper.listVehicle(targetedServiceId);
if(!list.isEmpty()){
- List<Long> ids = new ArrayList<>();
+ List<Long> vehicleIds = new ArrayList<>();
for (XpTargetedServiceVehicle xpTargetedServiceVehicle : list) {
- ids.add(xpTargetedServiceVehicle.getVehicleId());
+ vehicleIds.add(xpTargetedServiceVehicle.getVehicleId());
}
- R<List<XpVehicle>> listR = xpVehicleClient.listByIds(ids);
+ R<List<XpVehicle>> listR = xpVehicleClient.listByIds(vehicleIds);
if(!listR.getData().isEmpty()){
List<XpVehicle> vehicleList = listR.getData();
Map<Long, XpVehicle> vehicleMap = vehicleList.stream()
@@ -187,4 +185,59 @@
removeBatchByIds(ids);
return R.ok();
}
+
+ /**
+ * 定向服务 根据 用户id 和 城市编码 查询 定向服务的 数据和 车辆信息
+ * @param appUserId
+ * @param cityCode
+ * @return
+ */
+ @Override
+ public List<String> findSetVehicleVinByUserIdAndCityCode(Long appUserId, String cityCode) {
+ List<XpTargetedServiceVehicleVo> list = findListByUserIdAndCityCode(appUserId, cityCode);
+ if(list.isEmpty()){
+ return null;
+ }
+ return list.stream()
+ .map(XpTargetedServiceVehicleVo::getVehicleVin)
+ .filter(Objects::nonNull)
+ .distinct()
+ .collect(Collectors.toList());
+
+ }
+
+ @Override
+ public List<XpTargetedServiceVehicleVo> findListByUserIdAndCityCode(Long appUserId, String cityCode) {
+
+ List<XpTargetedServiceVehicleVo> listInfoVehicle = baseMapper.findListInfoVehicle(appUserId, cityCode, LocalDateTime.now());
+
+ if(!listInfoVehicle.isEmpty()){
+ // 提取车辆ID列表
+ List<Long> vehicleIds = listInfoVehicle.stream()
+ .map(XpTargetedServiceVehicleVo::getVehicleId)
+ .filter(Objects::nonNull)
+ .distinct()
+ .collect(Collectors.toList());
+
+ R<List<XpVehicle>> listR = xpVehicleClient.listByIds(vehicleIds);
+ if(!listR.getData().isEmpty()){
+ List<XpVehicle> vehicleList = listR.getData();
+ Map<Long, XpVehicle> vehicleMap = vehicleList.stream()
+ .collect(Collectors.toMap(XpVehicle::getId, vehicle -> vehicle));
+
+ for (XpTargetedServiceVehicleVo beanVo : listInfoVehicle) {
+ XpVehicle remoteVehicle = vehicleMap.get(beanVo.getVehicleId());
+ if (remoteVehicle != null) {
+ beanVo.setVehicleVin(remoteVehicle.getVehicleVin());
+ }
+ }
+ }
+ return listInfoVehicle;
+ }
+ return null;
+ }
+
+
+
+
}
--
Gitblit v1.7.1