From decd02709b7ef82502b6f574823720b41df4132b Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期二, 24 三月 2026 16:49:42 +0800
Subject: [PATCH] refactor: add station reroute shared types

---
 src/main/java/com/zy/core/utils/StationOperateProcessUtils.java |   39 +++++++++++++++++++++++++++++++++++++++
 1 files changed, 39 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/zy/core/utils/StationOperateProcessUtils.java b/src/main/java/com/zy/core/utils/StationOperateProcessUtils.java
index 40e4e19..706c497 100644
--- a/src/main/java/com/zy/core/utils/StationOperateProcessUtils.java
+++ b/src/main/java/com/zy/core/utils/StationOperateProcessUtils.java
@@ -1940,6 +1940,45 @@
         return pathLenFactor;
     }
 
+    enum RerouteSceneType {
+        RUN_BLOCK_REROUTE,
+        IDLE_RECOVER,
+        OUT_ORDER,
+        WATCH_CIRCLE
+    }
+
+    static final class RerouteDecision {
+        private final boolean skip;
+        private final String skipReason;
+        private final Integer targetStationId;
+
+        private RerouteDecision(boolean skip, String skipReason, Integer targetStationId) {
+            this.skip = skip;
+            this.skipReason = skipReason;
+            this.targetStationId = targetStationId;
+        }
+
+        static RerouteDecision skip(String reason) {
+            return new RerouteDecision(true, reason, null);
+        }
+
+        static RerouteDecision proceed(Integer targetStationId) {
+            return new RerouteDecision(false, null, targetStationId);
+        }
+
+        boolean skip() {
+            return skip;
+        }
+
+        String skipReason() {
+            return skipReason;
+        }
+
+        Integer targetStationId() {
+            return targetStationId;
+        }
+    }
+
     private static class OutOrderDispatchDecision {
         private final Integer targetStationId;
         private final boolean circle;

--
Gitblit v1.9.1