From 1632956ff51882192bb01dbfc5a3761482ff4603 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期五, 17 四月 2026 10:34:02 +0800
Subject: [PATCH] 合并线上代码

---
 xp-robotaxi-vehicle-convoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/util/VehicleControlUtil.java |   16 ++++++++++++----
 1 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/xp-robotaxi-vehicle-convoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/util/VehicleControlUtil.java b/xp-robotaxi-vehicle-convoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/util/VehicleControlUtil.java
index fdc802c..da3e44a 100644
--- a/xp-robotaxi-vehicle-convoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/util/VehicleControlUtil.java
+++ b/xp-robotaxi-vehicle-convoy-boot/src/main/java/com/xiaopeng/vehicleConvoy/util/VehicleControlUtil.java
@@ -7,6 +7,7 @@
 import com.xiaopeng.api.dto.vehicleConvoy.ImOpenQueryStateDto;
 import com.xiaopeng.api.dto.vehicleConvoy.VehicleTemperatureDto;
 import com.xiaopeng.api.feignClient.vehicleConvoy.VehicleControlClient;
+import com.xiaopeng.api.vo.vehicleConvoy.VehicleStateVo;
 import com.xiaopeng.api.vo.vehicleConvoy.VehiclesCommandVo;
 import com.xiaopeng.vehicleConvoy.service.AsyncVehicleStateService;
 import lombok.extern.slf4j.Slf4j;
@@ -52,6 +53,7 @@
         String nonce = System.currentTimeMillis() + "";
         Set<String> stateList = new HashSet<>();
         stateList.add("hvacInnerTemp");
+        stateList.add("trunkAjarCloseSt");
         Map<String, String> map = new HashMap<>();
         map.put("nonce", nonce);
         map.put("openId", OPEN_ID_ROBOT_TAXI);
@@ -80,12 +82,16 @@
      *
      * @param uid 用户ID
      * @param vin 车辆VIN码
-     * @return 车辆状态信息,包含后备箱状态
+     * @return 查询后备箱开关状态(打开状态=true,关闭状态=false)
      * @throws RuntimeException 查询失败或1秒超时
      */
-    public VehicleTemperatureDto queryTrunkDoorStateSync(Long uid, String vin) {
+    public Boolean queryTrunkDoorStateSync(Long uid, String vin, boolean reportEnable) {
         log.info("开始同步查询车辆后备箱状态: uid={}, vin={} (1秒超时)", uid, vin);
-
+        if (!reportEnable) {
+            VehicleTemperatureDto vehicleTemperatureDto = queryVehicleTemperature(String.valueOf(uid), vin);
+            VehicleStateVo vehicleStateVo = vehicleTemperatureDto.getStateMap().get("trunkAjarCloseSt");
+            return null != vehicleStateVo && vehicleStateVo.getValue().equals("1");
+        }
         try {
             // 使用异步服务查询状态,内部有1秒超时处理
             CompletableFuture<VehicleTemperatureDto> future = asyncVehicleStateService
@@ -99,7 +105,9 @@
             }
 
             log.info("同步查询车辆后备箱状态成功: uid={}, vin={}", uid, vin);
-            return result;
+            VehicleStateVo vehicleStateVo = result.getStateMap().get("trunkAjarCloseSt");
+            log.info("同步查询车辆后备箱状态成功: uid={}, vin={}, vehicleStateVo={}", uid, vin, JSON.toJSONString(vehicleStateVo));
+            return null != vehicleStateVo && vehicleStateVo.getValue().equals("5");
 
         } catch (java.util.concurrent.ExecutionException e) {
             Throwable cause = e.getCause();

--
Gitblit v1.7.1