From 825a575deb96cce822468bb9d9ac3e4eea0f91d1 Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期四, 17 九月 2026 08:58:14 +0800
Subject: [PATCH] update

---
 backend/src/main/java/com/tourguide/modules/user/mapper/GuideReceivingSessionMapper.java |    9 +++++++--
 1 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/backend/src/main/java/com/tourguide/modules/user/mapper/GuideReceivingSessionMapper.java b/backend/src/main/java/com/tourguide/modules/user/mapper/GuideReceivingSessionMapper.java
index 68d7b5f..6fe79f2 100644
--- a/backend/src/main/java/com/tourguide/modules/user/mapper/GuideReceivingSessionMapper.java
+++ b/backend/src/main/java/com/tourguide/modules/user/mapper/GuideReceivingSessionMapper.java
@@ -40,9 +40,10 @@
                              @Param("orderCutoffAt") LocalDateTime orderCutoffAt);
 
     @Update("UPDATE guide_receiving_session SET receiving_mode = 'PRIVATE', status = 'ASSIGNED', current_people_count = #{peopleCount}, " +
-            "first_order_at = #{now}, service_start_at = #{now}, order_cutoff_at = #{now}, updated_at = NOW() " +
+            "first_order_at = #{now}, service_start_at = #{serviceStartAt}, order_cutoff_at = #{now}, updated_at = NOW() " +
             "WHERE id = #{id} AND deleted = 0 AND status = 'RECEIVING'")
-    int assignPrivate(@Param("id") Long id, @Param("peopleCount") Integer peopleCount, @Param("now") LocalDateTime now);
+    int assignPrivate(@Param("id") Long id, @Param("peopleCount") Integer peopleCount,
+                      @Param("now") LocalDateTime now, @Param("serviceStartAt") LocalDateTime serviceStartAt);
 
     @Update("UPDATE guide_receiving_session SET status = 'IN_SERVICE', updated_at = NOW() " +
             "WHERE id = #{id} AND deleted = 0 AND status = 'RECEIVING' AND service_start_at <= NOW()")
@@ -52,6 +53,10 @@
             "WHERE id = #{id} AND guide_id = #{guideId} AND deleted = 0 AND status IN ('RECEIVING', 'ASSIGNED')")
     int startSession(@Param("id") Long id, @Param("guideId") Long guideId);
 
+    @Update("UPDATE guide_receiving_session SET status = 'STOPPED', updated_at = NOW() " +
+            "WHERE id = #{id} AND guide_id = #{guideId} AND deleted = 0 AND status = 'IN_SERVICE'")
+    int stopServiceSession(@Param("id") Long id, @Param("guideId") Long guideId);
+
     @Update("UPDATE guide_receiving_session SET reminder_pushed_at = #{now}, updated_at = NOW() " +
             "WHERE id = #{id} AND deleted = 0 AND status = 'RECEIVING' AND reminder_pushed_at IS NULL")
     int claimServiceReminder(@Param("id") Long id, @Param("now") LocalDateTime now);

--
Gitblit v1.7.1