From 13c960a2b6bb54797bdbd03aa3184af507d94a9b Mon Sep 17 00:00:00 2001
From: 卢春龙 <lucl@xiaopeng.com>
Date: 星期一, 20 四月 2026 10:42:28 +0800
Subject: [PATCH] Merge branch 'feature_pr_fix' into 'develop'

---
 src/robotaxi/pages/begin-route/index.tsx |   72 +++++++++++++++++++----------------
 1 files changed, 39 insertions(+), 33 deletions(-)

diff --git a/src/robotaxi/pages/begin-route/index.tsx b/src/robotaxi/pages/begin-route/index.tsx
index 88447bc..95989f3 100644
--- a/src/robotaxi/pages/begin-route/index.tsx
+++ b/src/robotaxi/pages/begin-route/index.tsx
@@ -110,7 +110,7 @@
     4: { showPickup: true, showDropoff: false, showCar: true, showRoute: true, showWalking: false, viewport: 'route', translateCar: true },
     5: { showPickup: true, showDropoff: false, showCar: true, showRoute: false, showWalking: false, viewport: 'car_user', translateCar: true },
     6: { showPickup: false, showDropoff: true, showCar: true, showRoute: true, showWalking: false, viewport: 'route', translateCar: true },
-    7: { showPickup: false, showDropoff: true, showCar: true, showRoute: false, showWalking: false, viewport: 'dropoff', translateCar: false },
+    7: { showPickup: false, showDropoff: true, showCar: true, showRoute: false, showWalking: false, viewport: 'car_user', translateCar: true },
     8: { showPickup: true, showDropoff: true, showCar: false, showRoute: true, showWalking: false, viewport: 'order_detail', translateCar: false },
     9: { showPickup: true, showDropoff: true, showCar: false, showRoute: true, showWalking: false, viewport: 'order_detail', translateCar: false },
     10: { showPickup: true, showDropoff: false, showCar: false, showRoute: false, showWalking: false, viewport: 'pickup', translateCar: false },
@@ -144,38 +144,6 @@
     lastVehiclePointRef,
     lastVehicleUpdateAtRef
   } = vehicleState; // 车辆状态解构
-  const markerState = useMapMarkers({
-    tripStatus,
-    statusRule,
-    isAndroid,
-    startSite,
-    endSite,
-    vehicleLocation,
-    vehicleDirection,
-    vehicleMarkerId
-  }); // 地图标记状态容器
-  const {
-    markers,
-    tripStatus6MarkerRefreshedRef
-  } = markerState; // 标记状态解构
-  const {
-    waitingRadarStyle,
-    waitingRadarVisible,
-    carCalloutStyle,
-    carCalloutVisible,
-    arriveCalloutStyle,
-    arriveCalloutVisible,
-    handleRegionChange: handleAndroidOverlayRegionChange
-  } = useAndroidOverlays({
-    shouldShowWaitingRadar,
-    isAndroid,
-    tripStatus,
-    startSite,
-    endSite,
-    vehicleLocation,
-    longitude,
-    latitude
-  }); // Android 覆盖物状态编排
   const routeState = useRouteManager({
     isAndroid,
     tripStatus,
@@ -239,6 +207,43 @@
     toOrigin,
     getLocationInfo
   } = viewportState; // 视口状态解构
+  const arrivedMarkerReady = tripStatus !== 7 || typeof vehicleDirection === 'number';
+  const arrivedTooltipReady = tripStatus !== 7 || (arrivedMarkerReady && mapScale >= 20);
+  const markerState = useMapMarkers({
+    tripStatus,
+    statusRule,
+    isAndroid,
+    startSite,
+    endSite,
+    vehicleLocation,
+    vehicleDirection,
+    vehicleMarkerId,
+    arrivedMarkerReady,
+    arrivedTooltipReady
+  }); // 地图标记状态容器
+  const {
+    markers,
+    tripStatus6MarkerRefreshedRef
+  } = markerState; // 标记状态解构
+  const {
+    waitingRadarStyle,
+    waitingRadarVisible,
+    carCalloutStyle,
+    carCalloutVisible,
+    arriveCalloutStyle,
+    arriveCalloutVisible,
+    handleRegionChange: handleAndroidOverlayRegionChange
+  } = useAndroidOverlays({
+    shouldShowWaitingRadar,
+    isAndroid,
+    tripStatus,
+    mapScale,
+    startSite,
+    endSite,
+    vehicleLocation,
+    longitude,
+    latitude
+  }); // Android 覆盖物状态编排
   const isCheckedEnter = useRef(false); // 是否已检查页面进入状态
   const { checkDistanceAndCityReady } = useOrderDistanceConfig({
     endSite,
@@ -458,6 +463,7 @@
     carCalloutStyle,
     arriveCalloutVisible,
     arriveCalloutStyle,
+    arrivedTooltipReady,
     routeDistance,
     routeDuration,
     customCalloutIconSrc,

--
Gitblit v1.7.1