From aa8038c44dc8e2eda1e801b8f44f54d00fd649e3 Mon Sep 17 00:00:00 2001
From: 卢春龙 <lucl@xiaopeng.com>
Date: 星期五, 24 四月 2026 23:53:02 +0800
Subject: [PATCH] Merge branch 'feature_urgency_fix' into 'develop'

---
 src/robotaxi/pages/begin-route/hooks/use-route-manager.ts |   16 +++++++++++++---
 1 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/src/robotaxi/pages/begin-route/hooks/use-route-manager.ts b/src/robotaxi/pages/begin-route/hooks/use-route-manager.ts
index c9806f2..fcd3064 100644
--- a/src/robotaxi/pages/begin-route/hooks/use-route-manager.ts
+++ b/src/robotaxi/pages/begin-route/hooks/use-route-manager.ts
@@ -31,6 +31,16 @@
   setVehicleDirection: () => { }
 };
 
+// 统一解析接口返回方向
+const resolveDirectionValue = (payload: any) => {
+  const rawDirection = payload?.direction;
+  const direction = Number(rawDirection);
+  if (!Number.isFinite(direction)) {
+    return null;
+  }
+  return ((direction % 360) + 360) % 360;
+};
+
 export default function useRouteManager(rawDeps?: Partial<Deps>) {
   const deps = { ...defaultDeps, ...(rawDeps || {}) } as Deps;
   // 路线渲染线集合
@@ -280,9 +290,9 @@
         if (durationSeconds !== null) {
           setRouteDuration(durationSeconds);
         }
-        const dir = Number(res?.direction);
-        if (Number.isFinite(dir)) {
-          deps.setVehicleDirection(((dir % 360) + 360) % 360);
+        const normalizedDirection = resolveDirectionValue(res);
+        if (typeof normalizedDirection === 'number') {
+          deps.setVehicleDirection(normalizedDirection);
         }
       })
       .catch(() => { });

--
Gitblit v1.7.1