From 82a8bc62d5b9d5d607f6952329952b17eda2f0a0 Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期一, 14 九月 2026 15:44:34 +0800
Subject: [PATCH] update
---
backend/src/main/java/com/tourguide/modules/order/service/OrderLifecycleScheduler.java | 13 ++++++++++++-
1 files changed, 12 insertions(+), 1 deletions(-)
diff --git a/backend/src/main/java/com/tourguide/modules/order/service/OrderLifecycleScheduler.java b/backend/src/main/java/com/tourguide/modules/order/service/OrderLifecycleScheduler.java
index a3eb8c9..655418a 100644
--- a/backend/src/main/java/com/tourguide/modules/order/service/OrderLifecycleScheduler.java
+++ b/backend/src/main/java/com/tourguide/modules/order/service/OrderLifecycleScheduler.java
@@ -10,7 +10,6 @@
import com.tourguide.modules.order.mapper.TourOrderMapper;
import com.tourguide.modules.system.service.GuideNotificationService;
import com.tourguide.modules.user.entity.GuideReceivingSession;
-import com.tourguide.modules.user.mapper.GuideRealtimeStatusMapper;
import com.tourguide.modules.user.mapper.GuideReceivingSessionMapper;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Service;
@@ -50,6 +49,7 @@
retryPendingOrders();
sendServiceReminders();
startDueGroupSessions();
+ completeExpiredServiceSessions();
}
void cancelExpiredUnpaidOrders() {
@@ -87,6 +87,17 @@
}
}
+ void completeExpiredServiceSessions() {
+ LocalDateTime now = LocalDateTime.now();
+ List<Long> sessionIds = orderMapper.selectDueServiceSessionIds(now, BATCH_SIZE);
+ for (Long sessionId : sessionIds) {
+ GuideReceivingSession session = sessionMapper.selectById(sessionId);
+ if (session != null && "IN_SERVICE".equals(session.getStatus())) {
+ sessionTransitionService.completeSession(session, now);
+ }
+ }
+ }
+
void sendServiceReminders() {
int reminderMinutes = Math.max(1, uniPushProperties.getServiceReminderMinutes());
LocalDateTime now = LocalDateTime.now();
--
Gitblit v1.7.1