diff --git a/pages/newOrder/confirmOrder.vue b/pages/newOrder/confirmOrder.vue index 157f9e8..d0bc594 100644 --- a/pages/newOrder/confirmOrder.vue +++ b/pages/newOrder/confirmOrder.vue @@ -913,7 +913,8 @@ needPreFamiliarize: [] } uni.reLaunch({ - url: '/pages_order/order/orderList' + // url: '/pages_order/order/orderList' + url: '/pages_order/order/payOrderSuccessful' }); }, fail: (err) => { @@ -921,7 +922,7 @@ console.log('支付失败', err) this.$modal.showToast('支付失败') uni.reLaunch({ - url: '/pages_order/order/' + url: '/pages_order/order/orderList' }); }, complete: () => { diff --git a/pages_order/order/orderDetail.vue b/pages_order/order/orderDetail.vue index 01f5623..b437141 100644 --- a/pages_order/order/orderDetail.vue +++ b/pages_order/order/orderDetail.vue @@ -25,13 +25,13 @@ - + 取消订单 去付款 - + 修改订单 @@ -341,6 +341,30 @@ uni.navigateTo({ url: `/pages_order/order/orderModify?orderId=${this.orderId}` }); + }, + + // 判断服务日期是否在24小时内 + isServiceDateWithin24Hours() { + if (!this.detail.orderServiceList || this.detail.orderServiceList.length === 0) { + return false; + } + + // 获取最早的服务日期 + const earliestServiceDate = this.detail.orderServiceList + .map(service => service.serviceDate) + .sort((a, b) => dayjs(a).valueOf() - dayjs(b).valueOf())[0]; + + if (!earliestServiceDate) { + return false; + } + + // 计算时间差 + const now = dayjs(); + const serviceDate = dayjs(earliestServiceDate); + const hoursDiff = serviceDate.diff(now, 'hour'); + + // 如果服务日期距离现在小于24小时,返回true + return hoursDiff < 24 && hoursDiff >= 0; } } } diff --git a/pages_order/order/orderList.vue b/pages_order/order/orderList.vue index ba2bc59..f9f740d 100644 --- a/pages_order/order/orderList.vue +++ b/pages_order/order/orderList.vue @@ -59,20 +59,20 @@ - - - 取消订单 - - - 查看详情 - - - 去付款 - - - 修改订单 - + + + 取消订单 + + + 查看详情 + + + 去付款 + + + 修改订单 + @@ -157,6 +157,7 @@ getOrderServiceText, getProductNameText } from '@/utils/serviceTime.js' + import dayjs from '@/utils/lib/dayjs.min.js' export default { components: { Kefu, @@ -448,6 +449,30 @@ }); }, + // 判断服务日期是否在24小时内 + isServiceDateWithin24Hours(order) { + if (!order.orderServiceList || order.orderServiceList.length === 0) { + return false; + } + + // 获取最早的服务日期 + const earliestServiceDate = order.orderServiceList + .map(service => service.serviceDate) + .sort((a, b) => dayjs(a).valueOf() - dayjs(b).valueOf())[0]; + + if (!earliestServiceDate) { + return false; + } + + // 计算时间差 + const now = dayjs(); + const serviceDate = dayjs(earliestServiceDate); + const hoursDiff = serviceDate.diff(now, 'hour'); + + // 如果服务日期距离现在小于24小时,返回true + return hoursDiff < 24 && hoursDiff >= 0; + }, + }, onLoad() { // 页面加载时获取订单列表