From 65a168daedae1abbd34c2c10df96ab4372648e53 Mon Sep 17 00:00:00 2001
From: ISFP_T <68358856@qq.com>
Date: Fri, 28 Nov 2025 11:52:37 +0800
Subject: [PATCH] =?UTF-8?q?fix:=E4=BF=AE=E5=A4=8D=E8=AE=A2=E5=8D=95?=
=?UTF-8?q?=E8=AF=A6=E6=83=85=E9=A1=B5=E5=BF=AB=E9=80=92=E5=BD=92=E8=BF=98?=
=?UTF-8?q?=E6=8C=89=E9=92=AE=E5=B1=95=E7=A4=BAbug?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pages/order/detail.vue | 62 ++++++++++++++++++++++++++++++++++--------
1 file changed, 50 insertions(+), 12 deletions(-)
diff --git a/pages/order/detail.vue b/pages/order/detail.vue
index da670a5..8809860 100644
--- a/pages/order/detail.vue
+++ b/pages/order/detail.vue
@@ -75,13 +75,20 @@
{{ $t('user.customerService') }}
-
- {{ formatCountdown(countdownRemaining) }}{{ $t('order.canExpressReturn') }}
-
-
- {{ $t('order.pauseBilling') }}
-
-
+
+
+
+ {{ formatCountdown(countdownRemaining) }}{{ $t('order.canExpressReturn') }}
+
+
+ {{ $t('order.pauseBilling') }}
+
+
+ {{ $t('order.quickReturn') }}
+
+
+
+
{{ $t('order.quickReturn') }}
@@ -150,7 +157,8 @@
isWithdrawn: false,
positionName: '',
returnPosition: '',
- expressReturnStart: null
+ expressReturnStart: null,
+ isSupportExpressReturn: 'yes'
},
timer: null,
statusCheckTimer: null,
@@ -216,7 +224,7 @@
},
onShow() {
this.isPageActive = true
- if (this.orderInfo.orderStatus === 'in_used') {
+ if (this.orderInfo.orderStatus === 'in_used' && this.orderInfo.isSupportExpressReturn !== 'no') {
this.startExpressCountdown()
}
},
@@ -325,8 +333,10 @@
// 快速归还
quickReturn() {
- // 刷新订单状态,检查是否已归还
- this.checkReturnStatus()
+ // 跳转到搜索页面查询周围设备
+ uni.navigateTo({
+ url: '/pages/search/index'
+ })
},
// 再次租借
@@ -438,6 +448,14 @@
// 启动快递归还倒计时
startExpressCountdown() {
+ // 如果不支持快递归还,直接返回
+ if (this.orderInfo.isSupportExpressReturn === 'no') {
+ console.log('订单不支持快递归还,不启动倒计时')
+ this.showExpressAction = false
+ this.countdownRemaining = 0
+ return
+ }
+
this.clearExpressCountdown()
this.recomputeExpressCountdownFromStartTime()
if (this.showExpressAction) return
@@ -450,6 +468,13 @@
this.clearExpressCountdown()
return
}
+ // 再次检查是否支持快递归还
+ if (this.orderInfo.isSupportExpressReturn === 'no') {
+ this.clearExpressCountdown()
+ this.showExpressAction = false
+ this.countdownRemaining = 0
+ return
+ }
this.recomputeExpressCountdownFromStartTime()
if (this.showExpressAction) {
this.clearExpressCountdown()
@@ -500,6 +525,13 @@
// 重新计算倒计时
recomputeExpressCountdownFromStartTime() {
+ // 如果不支持快递归还,直接返回
+ if (this.orderInfo.isSupportExpressReturn === 'no') {
+ this.showExpressAction = false
+ this.countdownRemaining = 0
+ return
+ }
+
if (this.orderInfo.orderStatus !== 'in_used') {
this.showExpressAction = false
this.countdownRemaining = 0
@@ -578,7 +610,10 @@
if (this.orderInfo.orderStatus === 'in_used') {
this.startTimer()
this.startStatusCheckTimer()
- this.startExpressCountdown()
+ // 只有支持快递归还时才启动倒计时
+ if (this.orderInfo.isSupportExpressReturn !== 'no') {
+ this.startExpressCountdown()
+ }
uni.setStorageSync('activeOrderId', this.orderInfo.orderId)
@@ -640,6 +675,9 @@
// 保存快递归还开始时间(小时为单位)
this.orderInfo.expressReturnStart = orderData.expressReturnStart || null
+ // 保存是否支持快递归还
+ this.orderInfo.isSupportExpressReturn = orderData.isSupportExpressReturn || 'yes'
+
// 如果有有效的 expressReturnStart,立即更新倒计时阈值(小时转秒)
if (this.orderInfo.expressReturnStart && typeof this.orderInfo.expressReturnStart === 'number' && this.orderInfo.expressReturnStart > 0) {
this.expressThresholdSeconds = this.orderInfo.expressReturnStart * 3600