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/service/impl/XpOrderServiceImpl.java | 65 ++++++++++++++++++++++++++++++++
1 files changed, 65 insertions(+), 0 deletions(-)
diff --git a/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java b/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java
index 6d8ca7d..09fb510 100644
--- a/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java
+++ b/xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java
@@ -642,9 +642,25 @@
Long userId = order.getAppUserId();
if (order.getStatus() == 1) {
order.setStatus(0);
+ Long appUserId = order.getAppUserId();
order.setAppUserId(null);
baseMapper.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());
+ }
+ }
// 消息推送
Map<String, Object> params = new HashMap<>();
Map<String, Object> content = new HashMap<>();
@@ -1670,9 +1686,25 @@
addCruiseMission(xpVehicle.getId());
}
order.setStatus(0);
+ Long appUserId = order.getAppUserId();
order.setAppUserId(null);
baseMapper.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());
+ }
+ }
XpOrderCancel xpOrderCancel = new XpOrderCancel();
xpOrderCancel.setOrderId(orderId);
@@ -1696,7 +1728,23 @@
order.setStatus(0);
order.setAppUserId(null);
baseMapper.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());
+ }
+ }
+
XpOrderCancel xpOrderCancel = new XpOrderCancel();
xpOrderCancel.setOrderId(Long.valueOf(orderId));
xpOrderCancel.setUserId(1l);
@@ -2044,10 +2092,26 @@
throw new RuntimeException("订单状态错误");
}
order.setStatus(8);
+ Long appUserId = order.getAppUserId();
order.setAppUserId(null);
order.setTripEnd(LocalDateTime.now());
baseMapper.updateById(order);
+ order.setAppUserId(appUserId);
redisService.setCacheObject("ORDER_STATUS:" + order.getId(), 8, 24L, TimeUnit.HOURS);
+ //删除蓝牙秘钥
+ String token = redisService.getCacheObject("rt:bluetooth:unlock:order:" + orderId);
+ if(StringUtils.isNotBlank(token)){
+ redisService.deleteObject("rt:bluetooth:unlock:" + token);
+ redisService.deleteObject("rt:bluetooth:unlock:order:" + orderId);
+ 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());
+ }
+ }
// 根据订单所属开通城市id 查询定价
XpPricing pricing = bootCommonService.getXpPricing(order.getCityId(),order.getVehicleId());
@@ -3331,6 +3395,7 @@
throw new ServiceException("下发蓝牙token失败");
}
if(deliver.getCode() != 0){
+ log.error("下发蓝牙token失败:{} {}", deliver.getMsg(), order.getOrderNumber());
throw new ServiceException(deliver.getMsg());
}
log.info("下发蓝牙token成功:{} {}", deliver.getData(), order.getOrderNumber());
--
Gitblit v1.7.1