liaof
2026-07-29 9bb614b1af3efe06a459a7596dc56d97a6277deb
Merge branch 'fix-0726-toby' into 'feature_v2.4.0_ui'

[ai-coding] auto commit for merge request (何宏文)

See merge request robotaxi1/xp-robotaxi-miniprogram!194
3个文件已修改
27 ■■■■■ 已修改文件
src/robotaxi/pages/begin-route/components/calling-car-modules/trip-status-header.tsx 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/robotaxi/pages/begin-route/components/css-folder/evaluate-popup.less 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/robotaxi/pages/begin-route/hooks/use-order-cancel.ts 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/robotaxi/pages/begin-route/components/calling-car-modules/trip-status-header.tsx
@@ -6,7 +6,7 @@
type QueueStatus = {
  currentPosition: number;
  estimatedWaitTime: number;
  estimatedWaitTime: number | null;
  status: number;
  totalCount: number;
} | null;
@@ -50,6 +50,8 @@
    ? { value: 1, unit: '分钟' as const }
    : durationDisplay; // 剩余时间小于 1 分钟时按 1 分钟展示,不展示秒
  const inServiceDurationDisplay = normalizedDurationDisplay; // 行程中沿用统一的归一化时长
  // 排队接口返回实时预计等待分钟数;无有效值时回退下单时的初始预估。
  const displayedWaitMinutes = queueStatus?.estimatedWaitTime ?? waitMinutes;
  useEffect(() => {
    if (tripStatus !== TripStatus.CallingCar || !orderId) {
@@ -68,13 +70,17 @@
          return;
        }
        const queueData = res?.data ?? res;
        const rawEstimatedWaitTime = queueData?.estimatedWaitTime;
        const estimatedWaitTime = rawEstimatedWaitTime === null || rawEstimatedWaitTime === undefined || rawEstimatedWaitTime === ''
          ? null
          : Number(rawEstimatedWaitTime);
        if (
          Number(queueData?.currentPosition) > 0 &&
          Number(queueData?.totalCount) > 0
        ) {
          setQueueStatus({
            currentPosition: Number(queueData.currentPosition),
            estimatedWaitTime: Number(queueData.estimatedWaitTime) || 0,
            estimatedWaitTime: typeof estimatedWaitTime === 'number' && Number.isFinite(estimatedWaitTime) && estimatedWaitTime >= 0 ? estimatedWaitTime : null,
            status: Number(queueData.status) || 0,
            totalCount: Number(queueData.totalCount)
          });
@@ -147,7 +153,7 @@
          <View className='calling-car-content'>
            <View className='calling-car-content-main'>
              <View className='calling-car-content-title calling-car-content-title--strong'>
                预计{waitMinutes}分钟内有车应答
                预计{displayedWaitMinutes ?? '-'}分钟内有车应答
              </View>
              <View className='calling-car-content-desc'>
                正全力为您叫车中...
@@ -161,7 +167,7 @@
            </View>
            <View
              className='calling-car-cancel-btn'
              onClick={() => handleOpenCancelPopup?.({ durationDisplay, waitMinutes })}
              onClick={() => handleOpenCancelPopup?.({ durationDisplay, waitMinutes: displayedWaitMinutes })}
            >
              取消行程
            </View>
src/robotaxi/pages/begin-route/components/css-folder/evaluate-popup.less
@@ -16,13 +16,14 @@
    }
    .evaluate-content {
        height: 1336px;
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        background: #F1F5FA;
        border-radius: 60px 60px 0 0;
        padding: 64px 0 88px 0;
        padding: 64px 0 0 0;
        .evaluate-rating-switcher,
        .content-box {
@@ -134,6 +135,8 @@
            margin-top: 40px;
            padding: 0 49px;
            min-height: 420px;
            box-sizing: border-box;
            padding-bottom: 224px;
            .evaluate-problem-type {
@@ -326,8 +329,12 @@
        }
        &-confirm {
            position: absolute;
            left: 49px;
            right: 49px;
            bottom: 80px;
            height: 104px;
            margin: 40px 49px 0;
            margin: 0;
            display: flex;
            justify-content: center;
            align-items: center;
src/robotaxi/pages/begin-route/hooks/use-order-cancel.ts
@@ -176,7 +176,7 @@
   */
  const handleOpenCancelPopupByTripStatus = (status: TripStatus, displayInfo?: any) => {
    const waitMinutes = Number(displayInfo?.waitMinutes);
    if (status === TripStatus.VehicleApproaching && Number.isFinite(waitMinutes)) {
    if ([TripStatus.CallingCar, TripStatus.VehicleApproaching].includes(status) && Number.isFinite(waitMinutes)) {
      deps.setCancelPopupWaitMinutes(waitMinutes);
    } else {
      deps.setCancelPopupWaitMinutes(null);