From e4b10d06dcad7214e5852415eede1083a0ec9bda Mon Sep 17 00:00:00 2001
From: xuxueyang <xuxy@fengyuntec.com>
Date: 星期三, 14 八月 2024 10:02:23 +0800
Subject: [PATCH] 售后理由、图片必填

---
 pages/order/order-detail.vue |   93 ++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 81 insertions(+), 12 deletions(-)

diff --git a/pages/order/order-detail.vue b/pages/order/order-detail.vue
index bad6c50..cd9ad89 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
@@ -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 {
@@ -285,6 +338,8 @@
 				if (code == 0) {
 					this.$message.showToast('提交成功')
 					this.showSales = false
+					this.$forceUpdate()
+					uni.navigateBack()
 				}
 			},
 		},
@@ -325,9 +380,11 @@
 				{{ 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">
@@ -338,9 +395,10 @@
 					<view class="each-list">
 						<view class="each-item">
 							<view class="label">货位号</view>
-							<view class="value">{{ item.warehouseLocationCode || dto.warehouseLocationCode  || '-' }}</view>
+							<view class="value">{{ item.warehouseLocationCode || dto.warehouseLocationCode  || '-' }}
+							</view>
 						</view>
-				 
+
 						<view class="each-item">
 							<view class="label">颜色</view>
 							<view class="value">{{ item.flowerColor || '-' }}</view>
@@ -374,6 +432,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">
@@ -453,10 +517,14 @@
 					<image src="/static/common/icon-call.png" class="icon icon-call m-r-10  img100"></image>
 					拨打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>
@@ -512,12 +580,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