From 65cc684c4c1f4a2d028d4ed5b92994f17492401e Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期一, 09 三月 2026 18:19:37 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/Robotaxi

---
 xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java |   37 ++++++++++++++++++++++++++++++++++---
 1 files changed, 34 insertions(+), 3 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 d89e269..2df9ffa 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
@@ -79,6 +79,7 @@
 import com.xiaopeng.order.model.dto.XpOrderCommentDto;
 import com.xiaopeng.order.model.dto.XpOrderPayDto;
 import com.xiaopeng.order.model.query.XpHistoryOrderListQuery;
+import com.xiaopeng.order.model.query.XpOrderExcelQuery;
 import com.xiaopeng.order.model.query.XpOrderPageQuery;
 import com.xiaopeng.order.model.vo.*;
 import com.xiaopeng.order.service.IXpOrderCancelService;
@@ -298,9 +299,9 @@
     }
 
     @Override
-    public List<XpOrderPageVO> exportList(XpOrderPageQuery query) {
+    public List<XpOrderPageVO> exportList(XpOrderExcelQuery query) {
         // 1. 构建查询条件
-        LambdaQueryWrapper<XpOrder> wrapper = buildQueryWrapper(query);
+        LambdaQueryWrapper<XpOrder> wrapper = buildExcelQueryWrapper(query);
 
         // 2. 查询订单列表
         List<XpOrder> orderList = this.list(wrapper);
@@ -357,7 +358,27 @@
         wrapper.orderByDesc(XpOrder::getCreateTime);
         return wrapper;
     }
+    private LambdaQueryWrapper<XpOrder> buildExcelQueryWrapper(XpOrderExcelQuery query) {
+        LambdaQueryWrapper<XpOrder> wrapper = new LambdaQueryWrapper<>();
 
+        wrapper.like(StringUtils.isNotBlank(query.getOrderNumber()), XpOrder::getOrderNumber, query.getOrderNumber())
+                .eq(Objects.nonNull(query.getFleetId()), XpOrder::getFleetId, query.getFleetId())
+                .eq(Objects.nonNull(query.getOrderSource()), XpOrder::getOrderSource, query.getOrderSource())
+                .like(StringUtils.isNotBlank(query.getCityCode()), XpOrder::getCityCode, query.getCityCode())
+                .eq(Objects.nonNull(query.getStatus()), XpOrder::getStatus, query.getStatus());
+
+        if (Objects.nonNull(query.getStartTime())) {
+            wrapper.ge(XpOrder::getCreateTime, LocalDateTime.of(query.getStartTime(), LocalTime.MIN));
+        }
+        if (Objects.nonNull(query.getEndTime())) {
+            wrapper.le(XpOrder::getCreateTime, LocalDateTime.of(query.getEndTime(), LocalTime.MAX));
+        }
+        if (CollUtil.isNotEmpty(query.getIds())) {
+            wrapper.in(XpOrder::getId, query.getIds());
+        }
+        wrapper.orderByDesc(XpOrder::getCreateTime);
+        return wrapper;
+    }
     /**
      * 批量获取用户信息
      */
@@ -1016,7 +1037,17 @@
         xpOrderCancel.setCancelSource(1);
         xpOrderCancel.setCancelReason("用户取消订单");
         xpOrderCancelService.save(xpOrderCancel);
-
+        //判断还原车辆状态
+        Object cacheObject1 = redisService.getCacheObject("CREATE_ORDER:" + order.getId().toString());
+        if(null != cacheObject1){
+            com.alibaba.fastjson.JSONObject jsonObject = com.alibaba.fastjson.JSON.parseObject(cacheObject1.toString());
+            String vin = jsonObject.getString("vin");
+            XpVehicle vehicle = xpVehicleClient.findByVehicleVin(vin).getData();
+            if(null != vehicle && 0 != vehicle.getState()){
+                vehicle.setState(0);
+                xpVehicleClient.updateVehicleById(vehicle);
+            }
+        }
 
         // 设置当天的取消次数缓存
         Object cacheObject = redisService.getCacheObject("CANCEL_ORDER_" + uid);

--
Gitblit v1.7.1