From 45d90d1e7ba86286e998d1ac4d2cba8e98cd059b Mon Sep 17 00:00:00 2001
From: wlzboy <66905212@qq.com>
Date: 星期一, 12 一月 2026 20:52:30 +0800
Subject: [PATCH] feat: 优化内存

---
 ruoyi-system/src/main/java/com/ruoyi/system/utils/TaskStatusValidator.java |   24 +++++++++++++++++++++---
 1 files changed, 21 insertions(+), 3 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/utils/TaskStatusValidator.java b/ruoyi-system/src/main/java/com/ruoyi/system/utils/TaskStatusValidator.java
index b62b5d6..ef6c915 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/utils/TaskStatusValidator.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/utils/TaskStatusValidator.java
@@ -18,17 +18,35 @@
     private static final Map<TaskStatus, Set<TaskStatus>> ALLOWED_TRANSITIONS = new HashMap<>();
     
     static {
-        // PENDING -> IN_PROGRESS, CANCELLED
+        // PENDING -> DEPARTING, CANCELLED
         Set<TaskStatus> pendingTransitions = new HashSet<>();
-        pendingTransitions.add(TaskStatus.IN_PROGRESS);
+        pendingTransitions.add(TaskStatus.DEPARTING);
         pendingTransitions.add(TaskStatus.CANCELLED);
         ALLOWED_TRANSITIONS.put(TaskStatus.PENDING, pendingTransitions);
         
-        // IN_PROGRESS -> COMPLETED, CANCELLED, PENDING
+        // DEPARTING -> ARRIVED, CANCELLED
+        Set<TaskStatus> departingTransitions = new HashSet<>();
+        departingTransitions.add(TaskStatus.ARRIVED);
+        departingTransitions.add(TaskStatus.CANCELLED);
+        ALLOWED_TRANSITIONS.put(TaskStatus.DEPARTING, departingTransitions);
+        
+        // ARRIVED -> RETURNING
+        Set<TaskStatus> arrivedTransitions = new HashSet<>();
+        arrivedTransitions.add(TaskStatus.RETURNING);
+        ALLOWED_TRANSITIONS.put(TaskStatus.ARRIVED, arrivedTransitions);
+        
+        // RETURNING -> COMPLETED
+        Set<TaskStatus> returningTransitions = new HashSet<>();
+        returningTransitions.add(TaskStatus.COMPLETED);
+        ALLOWED_TRANSITIONS.put(TaskStatus.RETURNING, returningTransitions);
+        
+        // IN_PROGRESS -> COMPLETED, CANCELLED, PENDING, ARRIVED, RETURNING (鍏煎鏃ф暟鎹�)
         Set<TaskStatus> inProgressTransitions = new HashSet<>();
         inProgressTransitions.add(TaskStatus.COMPLETED);
         inProgressTransitions.add(TaskStatus.CANCELLED);
         inProgressTransitions.add(TaskStatus.PENDING);
+        inProgressTransitions.add(TaskStatus.ARRIVED);
+        inProgressTransitions.add(TaskStatus.RETURNING);
         ALLOWED_TRANSITIONS.put(TaskStatus.IN_PROGRESS, inProgressTransitions);
         
         // COMPLETED -> 涓嶅厑璁镐换浣曠姸鎬佸彉鏇�

--
Gitblit v1.9.1