From 67e1614389b0a2fb09e1ad86935c464a40225d48 Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期六, 28 二月 2026 15:22:36 +0800
Subject: [PATCH] 规则时间收车逻辑处理

---
 xp-robotaxi-order-boot/src/main/java/com/xiaopeng/order/service/impl/XpOrderServiceImpl.java |   20 +++++++++++++++++++-
 1 files changed, 19 insertions(+), 1 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 2928ec8..73245f4 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
@@ -73,6 +73,7 @@
 import com.xiaopeng.order.dto.MileageDto;
 import com.xiaopeng.order.job.base.QuartzManager;
 import com.xiaopeng.order.job.base.TimeJobType;
+import com.xiaopeng.order.job.jobs.AddCruiseMissionJob;
 import com.xiaopeng.order.job.jobs.EndTripJob;
 import com.xiaopeng.order.job.jobs.OrderCancelJob;
 import com.xiaopeng.order.mangodb.model.OrderTrajectory;
@@ -104,6 +105,7 @@
 import org.springframework.data.mongodb.core.MongoTemplate;
 import org.springframework.data.mongodb.core.query.Criteria;
 import org.springframework.data.mongodb.core.query.Query;
+import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
@@ -150,6 +152,7 @@
     private final XpCruiseOrderMapper xpCruiseOrderMapper;
     private final XpTaskRuleClient xpTaskRuleClient;
     private final XpCruisePlanClient xpCruisePlanClient;
+
 
     @Autowired
     private MongoTemplate mongoTemplate;
@@ -1484,8 +1487,23 @@
 
             xpCruiseOrderMapper.insert(xpCruiseOrder);
 
+
+            R<XpPoint> xpPointR = xpPointClient.queryById(order.getEndPointId());
+            XpPoint data = xpPointR.getData();
             //下发命令
-            orderMissionClient.pushOrder(new PushOrderDto(vehicle.getVehicleVin(),xpCruiseOrder.getId(),null));
+            // 添加自动结束行程定时任务job
+            Map<String, ? extends Object> jobMaps =
+                    new ImmutableMap.Builder<String, String>().
+                            put("id", xpCruiseOrder.getId())
+                            .build();
+            QuartzManager.addJob(
+                    AddCruiseMissionJob.class,
+                    (AddCruiseMissionJob.name + xpCruiseOrder.getId()).toUpperCase(),
+                    TimeJobType.ADD_CRUISE_MISSION,
+                    DateUtils.localDateTimeToDate(LocalDateTime.now().plusMinutes(data.getParkingTimeLimit())),
+                    jobMaps
+            );
+
 
         }
 

--
Gitblit v1.7.1