diff --git a/pages/order/complain/complain.vue b/pages/order/complain/complain.vue index 32248e2..ab0b314 100644 --- a/pages/order/complain/complain.vue +++ b/pages/order/complain/complain.vue @@ -159,6 +159,10 @@ function loadData(orderSn: string) { order.value = result.order orderGoodsList.value = result.orderItems if (store.state.isShowToast) uni.hideLoading() + if (result?.order?.orderStatus === 'CANCELLED') { + uni.showToast({ title: '订单已取消,无法发起投诉', icon: 'none' }) + setTimeout(() => { uni.navigateBack() }, 1500) + } }) } diff --git a/pages/order/orderDetail.vue b/pages/order/orderDetail.vue index 6fdb1e8..b24df14 100644 --- a/pages/order/orderDetail.vue +++ b/pages/order/orderDetail.vue @@ -80,9 +80,14 @@ 自提点地址: {{ order.storeAddressPath }} - + 联系方式: - {{ order.storeAddressMobile }} + + {{ order.storeAddressMobile }} + + + + @@ -118,8 +123,8 @@ ¥{{unitPrice(sku.goodsPrice) }} - - {{refundPriceList(sku.isRefund)}} ({{unitPrice(sku.refundPrice, "¥") }}) + + {{refundPriceList(sku.isRefund)}} ({{unitPrice(resolveRefundPrice(sku), "¥") }}) @@ -550,6 +555,16 @@ function refundPriceList(status: string) { } } +function resolveRefundPrice(sku: any) { + if (sku?.refundPrice && Number(sku.refundPrice) > 0) { + return sku.refundPrice + } + if (sku?.isRefund === 'ALL_REFUND' && sku?.flowPrice) { + return sku.flowPrice + } + return sku?.refundPrice || 0 +} + function handleCallPhone() { if (order.value.storeAddressMobile) { callPhone(order.value.storeAddressMobile) @@ -644,6 +659,7 @@ function isGiftItem(sku: any) { } function canShowSkuAfterSale(sku: any) { + if (order.value?.orderStatus === 'CANCELLED') return false if (isGiftItem(sku)) return false if (isECouponOrder.value) return false if (!order.value?.sn || Number(order.value.flowPrice) === 0) return false @@ -968,6 +984,19 @@ page, flex:10; } + .contact-phone-value { + display: flex; + flex-direction: row; + align-items: center; + + .phone-icon-wrap { + margin-left: 12rpx; + display: inline-flex; + align-items: center; + justify-content: center; + } + } + .order-sn-value { display: flex; flex-direction: row;