From 891b5db055a1d27c6bda2e9700aa57f8bacd7cd2 Mon Sep 17 00:00:00 2001
From: xuxueyang <xuxy@fengyuntec.com>
Date: 星期四, 15 八月 2024 09:58:44 +0800
Subject: [PATCH] add 部分ui

---
 pages/order/order-detail.vue |   63 +++++++++++++++++++++++++++++--
 1 files changed, 59 insertions(+), 4 deletions(-)

diff --git a/pages/order/order-detail.vue b/pages/order/order-detail.vue
index cec0d14..9cac196 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)
@@ -31,6 +35,47 @@
 					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)
+				}
+
 
 			}
 		},
@@ -271,6 +316,14 @@
 					this.$message.showToast('未选择需要售后的商品')
 					return
 				}
+				if (!this.submitForm.reason) {
+					this.$message.showToast('未填写理由')
+					return
+				}
+				if (!this.submitForm.imageList || this.submitForm.imageList.length < 1) {
+					this.$message.showToast('未上传图片')
+					return
+				}
 				await this.$message.confirm('确定申请售后吗')
 				this.$message.showLoading()
 				const {
@@ -286,7 +339,9 @@
 					this.$message.showToast('提交成功')
 					this.showSales = false
 					this.$forceUpdate()
-					uni.navigateBack()
+					setTimeout(() => {
+						uni.navigateBack()
+					}, 1200)
 				}
 			},
 		},
@@ -527,13 +582,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>
 			<!-- ||dto.status=='COMPLETED' -->
-			<view class="button button-1" @click="buttonClick('sales')"			
-				v-if=" dto.status === 'RECEIVE'"> 申请售后
+			<view class="button button-1" @click="buttonClick('sales')" v-if=" dto.status === 'RECEIVE'"> 申请售后
 			</view>
 		</view>
 		<view v-if="showSales">

--
Gitblit v1.9.3