From a6d543bcef73e2a78d8da9b065e241643c166aa8 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期五, 13 二月 2026 11:40:29 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
xp-robotaxi-vehicleConvoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/controller/XpVehicleController.java | 66 ++++++++++++++++++++++++++++-----
1 files changed, 56 insertions(+), 10 deletions(-)
diff --git a/xp-robotaxi-vehicleConvoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/controller/XpVehicleController.java b/xp-robotaxi-vehicleConvoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/controller/XpVehicleController.java
index c8d4bef..9aaf95a 100644
--- a/xp-robotaxi-vehicleConvoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/controller/XpVehicleController.java
+++ b/xp-robotaxi-vehicleConvoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/controller/XpVehicleController.java
@@ -7,15 +7,15 @@
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.xiaopeng.api.dto.operation.VehiclePositionByVinDto;
import com.xiaopeng.api.dto.vehicleConvoy.VehicleTemperatureDto;
-import com.xiaopeng.api.feignClient.order.XpOrderClient;
-import com.xiaopeng.api.model.order.XpOrder;
import com.xiaopeng.api.feignClient.maintenance.XpChargingRecordClient;
import com.xiaopeng.api.feignClient.maintenance.XpVehiclePreparationClient;
import com.xiaopeng.api.feignClient.order.XpOrderClient;
import com.xiaopeng.api.model.vehicleConvoy.XpVehicle;
import com.xiaopeng.api.model.vehicleConvoy.XpVehicleAnnualRecord;
-import com.xiaopeng.api.vo.vehicleConvoy.VehicleTemperatureVo;
+import com.xiaopeng.api.vo.automaticPilot.VehiclePosition;
import com.xiaopeng.api.vo.vehicleConvoy.VehiclesCommandCallbackVo;
import com.xiaopeng.common.core.domain.R;
import com.xiaopeng.common.core.exception.ServiceException;
@@ -26,17 +26,16 @@
import com.xiaopeng.vehicleConvoy.model.exportExcel.XpVehicleExportExcel;
import com.xiaopeng.vehicleConvoy.model.importExcel.XpVehicleImportExcel;
import com.xiaopeng.vehicleConvoy.model.query.*;
+import com.xiaopeng.vehicleConvoy.model.vo.XpVehicleVO;
import com.xiaopeng.vehicleConvoy.service.IXpVehicleAnnualRecordService;
import com.xiaopeng.vehicleConvoy.service.IXpVehicleService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiImplicitParam;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiParam;
+import io.swagger.annotations.*;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.ss.usermodel.Workbook;
import org.springframework.context.annotation.Lazy;
+import org.springframework.data.mongodb.core.geo.GeoJsonPoint;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
@@ -376,6 +375,38 @@
}
/**
+ * 查询车辆位置信息 做筛选
+ * @param dto
+ * @return
+ */
+ @PostMapping("/inner/vehicle/queryVehiclePositionByVin")
+ public R<List<String>> queryVehiclePositionByVin(@RequestBody VehiclePositionByVinDto dto){
+ List<XpVehicle> list = xpVehicleService.list(new LambdaQueryWrapper<XpVehicle>().eq(XpVehicle::getState, 0).eq(XpVehicle::getStatus, 1).eq(XpVehicle::getElectronicId, dto.getFenceId()).in(XpVehicle::getVehicleVin,
+ dto.getVinList()));
+ if(list.isEmpty()){
+ return R.ok(new ArrayList<>());
+ }else {
+ List<String> vehiclePositionVos = new ArrayList<>(list.size());
+ for (XpVehicle xpVehicle : list) {
+ vehiclePositionVos.add(xpVehicle.getVehicleVin());
+ }
+ return R.ok(vehiclePositionVos);
+ }
+
+ }
+
+
+ /**
+ * 查询车辆信息
+ * @param vehicleVin
+ * @return
+ */
+ @GetMapping("/inner/vehicle/findByVehicleVin")
+ public R<XpVehicle> findByVehicleVin(String vehicleVin){
+ XpVehicle xpVehicle = xpVehicleService.getOne(new LambdaQueryWrapper<XpVehicle>().eq(XpVehicle::getVehicleVin, vehicleVin));
+ return R.ok(xpVehicle);
+ }
+ /**
* 查询可改派的车辆列表
*
* @return 车辆列表
@@ -446,7 +477,7 @@
* 业务流程-车门解锁/后备箱解锁
*/
@ApiOperation(value = "打开车门操作", tags = {"小程序-业务流程"})
- @PostMapping("/api/v1/order/vehicle/unlock")
+ @PostMapping("/api/v1/mini-program/order/vehicle/unlock")
public R<Integer> unlock(@RequestBody UnlockAppletDTO dto) {
return R.ok(xpVehicleService.unlock(dto));
}
@@ -455,7 +486,7 @@
* 业务流程-打开设置温度
*/
@ApiOperation(value = "打开设置温度", tags = {"小程序-业务流程"})
- @PostMapping("/api/v1/order/ac/set-temperature")
+ @PostMapping("/api/v1/mini-program/order/ac/set-temperature")
public R<Integer> setTemperature(@RequestBody SetTemperatureDTO dto) {
return R.ok(xpVehicleService.setTemperature(dto));
}
@@ -464,11 +495,26 @@
* 业务流程-通过订单id查询当前车辆温度
*/
@ApiOperation(value = "通过订单id查询当前车辆温度", tags = {"小程序-业务流程"})
- @GetMapping("/api/v1/order/queryTemperatureByOrderId")
+ @GetMapping("/api/v1/mini-program/order/queryTemperatureByOrderId")
public R<VehicleTemperatureDto> queryTemperatureByOrderId(@RequestParam Long orderId, HttpServletRequest request) {
String uid = request.getHeader("XP-Uid");
VehicleTemperatureDto vehicleTemperatureDto = xpVehicleService.queryTemperatureByOrderId(orderId,uid);
return R.ok(vehicleTemperatureDto);
}
+ /**
+ * 获取车辆不分页列表
+ *
+ * @param plateNumber
+ * @param fleetName
+ * @return
+ */
+ @ApiOperation(value = "获取车辆不分页列表", tags = {"管理后台-车队管理"})
+ @PostMapping("/api/v1/vehicle/list")
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "plateNumber", value = "车牌号", dataTypeClass = String.class),
+ @ApiImplicitParam(name = "fleetName", value = "车队名称", dataTypeClass = String.class)})
+ public R<List<XpVehicleVO>> getList(String plateNumber, String fleetName) {
+ return R.ok(xpVehicleService.getList(plateNumber, fleetName));
+ }
}
--
Gitblit v1.7.1