From c095cf1ef192a1ac4cfd1868bdf70de2b340a2f5 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期六, 18 四月 2026 15:51:40 +0800
Subject: [PATCH] resolve conflict

---
 xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/utils/TaskOrderCancelUtil.java |   28 ++++++++++++++++++++++++++++
 1 files changed, 28 insertions(+), 0 deletions(-)

diff --git a/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/utils/TaskOrderCancelUtil.java b/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/utils/TaskOrderCancelUtil.java
index 0eef366..28f5d03 100644
--- a/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/utils/TaskOrderCancelUtil.java
+++ b/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/utils/TaskOrderCancelUtil.java
@@ -2,7 +2,13 @@
 
 import com.alibaba.nacos.common.utils.CollectionUtils;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.xiaopeng.api.dto.vehicleConvoy.BaseVehicleUserDto;
+import com.xiaopeng.api.feignClient.vehicleConvoy.BluetoothUnlockClient;
+import com.xiaopeng.api.feignClient.vehicleConvoy.XpVehicleClient;
 import com.xiaopeng.api.model.order.XpOrder;
+import com.xiaopeng.api.model.vehicleConvoy.XpVehicle;
+import com.xiaopeng.api.vo.vehicleConvoy.BluetoothDeliverVo;
+import com.xiaopeng.common.core.utils.StringUtils;
 import com.xiaopeng.common.redis.service.RedisService;
 import com.xiaopeng.order.service.IXpOrderService;
 import lombok.extern.slf4j.Slf4j;
@@ -10,6 +16,7 @@
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
 
+import javax.annotation.Resource;
 import java.time.LocalDateTime;
 import java.util.List;
 import java.util.concurrent.TimeUnit;
@@ -24,6 +31,12 @@
 
     @Autowired
     private RedisService redisService;
+
+    @Resource
+    private XpVehicleClient xpVehicleClient;
+
+    @Resource
+    private BluetoothUnlockClient bluetoothUnlockClient;
 
     /**
      * 30秒执行一次
@@ -59,7 +72,22 @@
         order.setAppUserId(null);
         order.setStatus(0);
         xpOrderService.updateById(order);
+        order.setAppUserId(appUserId);
         redisService.setCacheObject("ORDER_STATUS:" + order.getId(), 0, 24L, TimeUnit.HOURS);
+        //删除蓝牙秘钥
+        String token = redisService.getCacheObject("rt:bluetooth:unlock:order:" + order.getId());
+        if(StringUtils.isNotBlank(token)){
+            redisService.deleteObject("rt:bluetooth:unlock:" + token);
+            redisService.deleteObject("rt:bluetooth:unlock:order:" + order.getId());
+            XpVehicle xpVehicle = xpVehicleClient.queryById(order.getVehicleId()).getData();
+            BluetoothDeliverVo vo = new BluetoothDeliverVo();
+            vo.setVim(xpVehicle.getVehicleVin());
+            vo.setPassengerUid(order.getAppUserId());
+            BaseVehicleUserDto delete = bluetoothUnlockClient.delete(vo);
+            if(null == delete || delete.getCode() != 0){
+                log.error("删除蓝牙解锁失败:{} {}", delete.getMsg(), order.getOrderNumber());
+            }
+        }
     }
 
 

--
Gitblit v1.7.1