From c9ece393fc028ffecca0915d1b9af62d51b5aef6 Mon Sep 17 00:00:00 2001
From: xuxueyang <xuxy@fengyuntec.com>
Date: 星期二, 13 八月 2024 17:21:19 +0800
Subject: [PATCH] 1

---
 pages/order/order-detail.vue |  102 ++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 84 insertions(+), 18 deletions(-)

diff --git a/pages/order/order-detail.vue b/pages/order/order-detail.vue
index 21368d0..8167276 100644
--- a/pages/order/order-detail.vue
+++ b/pages/order/order-detail.vue
@@ -6,6 +6,7 @@
 				dto: {},
 				showSales: false,
 				submitForm: {},
+				timer: undefined,
 				type: '',
 				// #ifdef PUB_CUSTOMER
 				type: 'customer',
@@ -14,6 +15,9 @@
 				type: 'partner',
 				// #endif
 			};
+		},
+		onUnload() {
+			this.timer && clearTimeout(this.timer)
 		},
 		async onLoad(options) {
 			console.log('options', options)
@@ -27,10 +31,51 @@
 					orderId: this.id,
 					imageList: [],
 					videoList: [],
-					reason: [],
+					reason: '',
 					orderItems: []
 				}
 				this.showSales = options.showsales && true || false
+				if (this.dto.statusBackend === 'PENDING') {
+					this.timer = setInterval(() => {
+						//倒计时
+						var nowdate = new Date().getTime() - 1000 * 60 * 5
+						var change = false
+
+						//计算倒计时
+						var diff = new Date(this.dto.createTime).getTime() - nowdate
+						console.log('diff', diff)
+						if (diff <= 2000 && true) {
+							//超过了5分钟
+							this.dto.statusBackend = 'CANCEL'
+							this.dto.statusBackendStr = '已取消'
+							this.dto.status = 'CANCEL'
+							this.dto.statusStr = '已取消'
+
+							this.dto.bctime = ''
+							// console.log('change cancel', this.dto)
+							change = true
+							clearInterval(this.timer)
+							this.timer = undefined
+						} else {
+							//相差
+							var alltime = parseInt(diff / 1000)
+							var tt = 0
+							if (alltime > 60) {
+								tt = alltime - parseInt(alltime / 60) * 60
+							} else {
+								tt = alltime
+							}
+							this.dto.bctime = `0${parseInt(alltime / 60)}:${tt<10?'0':''}${tt}`
+							change = true
+
+						}
+
+
+						if (change)
+							this.$forceUpdate()
+					}, 1000)
+				}
+
 
 			}
 		},
@@ -180,7 +225,7 @@
 							orderId: this.id,
 							imageList: [],
 							videoList: [],
-							reason: [],
+							reason: '',
 							orderItems: [],
 						}
 						this.showSales = true
@@ -285,6 +330,8 @@
 				if (code == 0) {
 					this.$message.showToast('提交成功')
 					this.showSales = false
+					this.$forceUpdate()
+					uni.navigateBack()
 				}
 			},
 		},
@@ -300,10 +347,10 @@
             dto.status === 'SEND' && '商家已发货,正在通知取货'
             || dto.status === 'PENDING' && '订单还未支付,立即去支付'
             || dto.status === 'RECEIVE' && '待签收'
-            || ('订单' + dto.statusStr)
+            || ('订单状态: ' + dto.statusStr)
           }}
 				</view>
-				<view class="desc-gray">支付时间:{{dto.paymentTime}}</view>
+				<view class="desc-gray">支付时间:{{dto.paymentTime || '-'}}</view>
 			</view>
 		</view>
 		<view class="address-container bg-white br-4 m-t-12" v-if="!showSales">
@@ -313,29 +360,37 @@
 				<view class="info">
 					<view class="title">
 						{{ dto.customer }}
-						<view class="tel">{{ dto.customerTel }}</view>
+						<view class="tel">{{ dto.customerTel  || ''}}</view>
 					</view>
-					<view class="content">{{ dto.customerAddress }}</view>
+					<view class="content">{{ dto.customerAddress || ''}}</view>
 				</view>
 			</view>
 		</view>
 		<view class="flower-info m-b-20 m-t-12 br-4" v-for="(item,index) of list" :key="index">
 			<view class="supplier-name ">
 				<image class="icon-dp" src="/static/common/icon-dp.png"></image>
-				{{ item.supplierName }}
+				{{ item.supplierName || ''}}
 			</view>
 			<view class="flex m-t-12">
-				<radio v-if="showSales" :checked="submitForm.orderItems.indexOf(item.id)>=0" @click="changeSalesOrderItem(item)"></radio>
+				<radio v-if="showSales" :checked="submitForm.orderItems.indexOf(item.id)>=0"
+					@click="changeSalesOrderItem(item)"></radio>
 
-				<image class="flower-img img100 br-4 m-r-6" :src="item.flowerCover" @click="previewImg(item.flowerCover)">
+				<image class="flower-img img100 br-4 m-r-6" :src="item.flowerCover"
+					@click="previewImg(item.flowerCover)">
 				</image>
 				<view class="flex1">
 					<view class=" flex">
-						<view class="title"><span class="level">{{ item.flowerCategory }}</span><span
-								class="level">{{ item.flowerLevelStr }}</span>{{ item.flowerName }}
+						<view class="title"><span class="level">{{ item.flowerCategory || ''}}</span><span
+								class="level">{{ item.flowerLevelStr || ''}}</span>{{ item.flowerName || ''}}
 						</view>
 					</view>
 					<view class="each-list">
+						<view class="each-item">
+							<view class="label">货位号</view>
+							<view class="value">{{ item.warehouseLocationCode || dto.warehouseLocationCode  || '-' }}
+							</view>
+						</view>
+
 						<view class="each-item">
 							<view class="label">颜色</view>
 							<view class="value">{{ item.flowerColor || '-' }}</view>
@@ -369,6 +424,12 @@
 				<view class="label">订单编号:</view>
 				<view class="value">{{ dto.orderNo || '-' }}</view>
 				<view class="button m-l-a m-r-0" @click="copyTxt(dto.orderNo)">复制
+				</view>
+			</view>
+			<view class="form-item" v-if="dto.deliveryNo">
+				<view class="label">快递单号:</view>
+				<view class="value">{{ dto.deliveryNo || '-' }}</view>
+				<view class="button m-l-a m-r-0" @click="copyTxt(dto.deliveryNo)">复制
 				</view>
 			</view>
 			<view class="form-item">
@@ -446,12 +507,16 @@
 			<view class="flex m-t-12">
 				<view class="flex1 w-fit m-auto icon-view" @click.stop="callTel">
 					<image src="/static/common/icon-call.png" class="icon icon-call m-r-10  img100"></image>
-					15974805814
+					拨打15974805814
 				</view>
-				<view class="flex1 w-fit m-auto icon-view" open-type="contact">
-					<image src="/static/common/icon-wx.png" class="icon icon-call  m-r-10 img100"></image>
-					在线客服
+				<view class="flex1 w-fit m-auto icon-view flex flex-wrap-normal" open-type="contact">
+					<image src="/static/common/icon-wx.png" class="icon icon-call m-t-2  m-r-10 img100"></image>
+
+					<button open-type="contact" class="component-button-contact" @handleContact="handleContact">
+						联系在线客服
+					</button>
 				</view>
+
 
 			</view>
 		</view>
@@ -507,12 +572,13 @@
 			</view>
 			<view class="button button-1" @click="buttonClick('confirm')" v-if="dto.status ==='RECEIVE'"> 确认收货
 			</view>
-			<view class="button button-1" @click="buttonClick('payAgain')" v-if=" dto.status === 'PENDING'"> 重新支付
+			<view class="button button-1" @click="buttonClick('payAgain')" v-if=" dto.status === 'PENDING'"> 重新支付<span
+					v-if="dto.bctime">({{dto.bctime}})</span>
 			</view>
 			<view class="button button-1" @click="buttonClick('evaluate')" v-if=" dto.status === 'EVALUATE'"> 评价
 			</view>
-			<view class="button button-1" @click="buttonClick('sales')"
-				v-if=" dto.status === 'EVALUATE'||dto.status=='COMPLETED'"> 申请售后
+			<!-- ||dto.status=='COMPLETED' -->
+			<view class="button button-1" @click="buttonClick('sales')" v-if=" dto.status === 'RECEIVE'"> 申请售后
 			</view>
 		</view>
 		<view v-if="showSales">

--
Gitblit v1.9.3