From ed6513d69ed4acd982c3596e986dcfe9f5c66d00 Mon Sep 17 00:00:00 2001
From: xuxueyang <xuxy@fengyuntec.com>
Date: 星期二, 27 八月 2024 13:47:11 +0800
Subject: [PATCH] add 微信发货

---
 pages/order/order-detail.vue | 1147 +++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 874 insertions(+), 273 deletions(-)

diff --git a/pages/order/order-detail.vue b/pages/order/order-detail.vue
index 7cdb309..e559343 100644
--- a/pages/order/order-detail.vue
+++ b/pages/order/order-detail.vue
@@ -1,313 +1,914 @@
 <script>
-export default {
-  data() {
-    return {
-      id: '',
-      dto: {}
-    };
-  },
-  onLoad(options) {
-    this.id = options.id || ''
-    if (this.id) {
+	export default {
+		data() {
+			return {
+				id: '',
+				dto: {},
+				showSales: false,
+				submitForm: {},
+				timer: undefined,
+				type: '',
+				// #ifdef PUB_CUSTOMER
+				type: 'customer',
+				// #endif
+				// #ifdef PUB_PARTNER
+				type: 'partner',
+				// #endif
+			};
+		},
+		onUnload() {
+			this.timer && clearTimeout(this.timer)
+		},
+		async onLoad(options) {
+			console.log('options', options)
 
-      this.getDetail()
-      this.getItemList()
-    }
-  },
-  methods: {
-    copyTxt(txt) {
-      uni.setClipboardData({
-        data: txt,//要被复制的内容
-        success: () => {//复制成功的回调函数
-          uni.showToast({//提示
-            title: '复制成功'
-          })
-        }
-      })
-    },
-    async getDetail() {
-      this.$message.showLoading()
-      const {code, data} = this.$http.request('get', '/api/customer/order/list/view', {
-        params: {
-          id: this.id
-        }
-      })
-      this.$message.hideLoading()
-      if (code === 0 && data) {
-        this.dto = {
-          ...this.dto,
-          ...data
-        }
-      }
-    },
-    async getItemList() {
-      this.$message.showLoading()
-      const {code, data} = this.$http.request('get', '/api/customer/order/item/list', {
-        params: {
-          id: this.id
-        }
-      })
-      this.$message.hideLoading()
-      if (code === 0 && data) {
-        this.list = data || []
-      }
-    },
-    buttonClick(buttontype) {
+			this.id = options.id || ''
+			if (this.id) {
 
-    }
-  },
-}
+				await this.getDetail()
+				await this.getItemList()
+				this.submitForm = {
+					orderId: this.id,
+					// imageList: [],
+					videoList: [],
+					reason: '',
+					// orderItems: [],
+					orderItemId: options.flowerId || '',
+					num: 0,
+					pictureList: []
+				}
+				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)
+				}
+
+
+			}
+		},
+		methods: {
+
+			async getDetail() {
+				this.$message.showLoading()
+				const {
+					code,
+					data
+				} = await this.$http.request('get', `/api/${this.type}/order/list/view`, {
+					params: {
+						id: this.id
+					}
+				})
+				this.$message.hideLoading()
+				console.log('getDetail', data)
+				if (code === 0) {
+					this.dto = {
+						...this.dto,
+						...data
+					}
+				}
+			},
+			async callTel() {
+				await this.$message.confirm('是否拨打客服电话')
+				uni.makePhoneCall({
+					phoneNumber: '15974805814'
+				});
+			},
+			async getItemList() {
+				this.$message.showLoading()
+				const {
+					code,
+					data
+				} = await this.$http.request('get', `/api/${this.type}/order/item/list`, {
+					params: {
+						id: this.id
+					}
+				})
+				this.$message.hideLoading()
+				console.log('getItemList', data)
+				if (code === 0) {
+					this.list = data || []
+					console.log('data', this.list)
+				}
+			},
+			async buttonClick(buttontype) {
+				switch (buttontype) {
+					case 'refund': {
+						await this.$message.confirm('是否确定申请退款')
+						// 发送请求
+						this.$message.showLoading()
+						const {
+							code
+						} = await this.$http.request('get', '/api/customer/order/refund', {
+							params: {
+								id: this.id,
+							}
+						})
+						this.$message.hideLoading()
+						if (code === 0) {
+							this.getDetail()
+						}
+					}
+					break
+					case 'confirm': {
+						await this.$message.confirm('是否确定收货')
+
+						var tryCallWx = false
+						// #ifdef MP
+						let tmp = this
+						if (wx.openBusinessView&&false) {
+							tryCallWx = true
+							wx.openBusinessView({
+								businessType: 'weappOrderConfirm',
+								extraData: {
+									merchant_id: '1230000109',
+									merchant_trade_no: '1234323JKHDFE1243252',
+									transaction_id: '420123123123123123123'
+								},
+								success() {
+									//dosomething
+									// 发送请求
+									tmp.$message.showLoading()
+									const {
+										code
+									} = await tmp.$http.request('get', '/api/customer/order/receive/confirm', {
+										params: {
+											id: tmp.id,
+										}
+									})
+									tmp.$message.hideLoading()
+									if (code === 0) {
+										tmp.getDetail()
+									}
+								},
+								fail(e) {
+									//dosomething
+									console.log('error fail', e)
+									tmp.$message.showToast('收货失败')
+								},
+								complete() {
+									//dosomething
+								}
+							});
+						}
+
+						// #endif
+
+						if (!tryCallWx) {
+
+							// 发送请求
+							this.$message.showLoading()
+							const {
+								code
+							} = await this.$http.request('get', '/api/customer/order/receive/confirm', {
+								params: {
+									id: this.id,
+								}
+							})
+							this.$message.hideLoading()
+							if (code === 0) {
+								this.getDetail()
+							}
+						}
+
+					}
+					break
+					case 'payAgain': {
+						await this.$message.confirm('是否确定重新支付')
+						// 发送请求
+						this.$message.showLoading()
+						const {
+							code,
+							data
+						} = await this.$http.request('get', '/api/customer/order/payAgain', {
+							params: {
+								id: this.id,
+							}
+						})
+						this.$message.hideLoading()
+						if (code === 0) {
+							//微信接口
+							let that = this
+							wx.requestPayment({
+								...data,
+								async success(res) {
+									console.log('pay success', res)
+									that.$message.showToast('支付成功')
+									setTimeout(() => {
+										that.getDetail()
+									}, 200)
+								},
+								fail(err) {
+									console.error('pay fail', err)
+									that.$message.showToast('支付失败')
+								}
+							})
+
+						}
+
+					}
+					break
+					case 'evaluate': {
+						const res = await this.$message.confirm('', {
+							editable: true,
+							title: '请输入评价信息'
+						})
+						if (res.content && res.confirm) {
+							// 发送请求
+							this.$message.showLoading()
+							const {
+								code
+							} = await this.$http.request('post', '/api/customer/order/evaluate', {
+								data: {
+									id: this.id,
+									evaluate: res.content
+								}
+							})
+							this.$message.hideLoading()
+							if (code === 0) {
+								this.getDetail()
+							}
+						}
+					}
+					break
+					// case 'sales': {
+					// 	//新增售后单
+					// 	//去新的页面加上这些选择?
+					// 	this.submitForm = {
+					// 		orderId: this.id,
+					// 		imageList: [],
+					// 		videoList: [],
+					// 		reason: '',
+					// 		orderItems: [],
+					// 	}
+					// 	this.showSales = true
+
+					// }
+					default:
+						break
+				}
+			},
+			changeSalesOrderItem(dto) {
+				if (this.submitForm.orderItems.indexOf(dto.id) < 0) {
+					this.submitForm.orderItems.push(dto.id)
+				} else {
+					this.submitForm.orderItems.splice(this.submitForm.orderItems.indexOf(dto.id), 1)
+				}
+			},
+			deleteCheckImage(key, index) {
+				this.submitForm[key].splice(index, 1)
+				this.$forceUpdate()
+			},
+			uploadIcon(key) {
+				console.log('that dto key', key)
+				const that = this
+				if (key === 'video') {
+					uni.chooseVideo({
+						maxDuration: 30,
+						sourceType: ['camera', 'album'],
+						success: function(res) {
+							if (res.size > 1024 * 1024 * 50) {
+								that.$message.confirm('视频最多支持50M大小,超出大小限制')
+								return
+							}
+							if (res.tempFilePath) {
+								console.log('res.tempFilePath', res.tempFilePath)
+								that.$message.showLoading()
+								that.$http.upload(res.tempFilePath).then(async res => {
+									var pic = res.data && res.data.length > 0 && res.data[
+											0]
+										.url || ''
+									that.$message.hideLoading()
+									that.submitForm.videoList.push(pic || '')
+
+									that.$forceUpdate()
+								}).catch(res => {
+									that.$message.hideLoading()
+									console.error(res)
+								})
+							}
+						}
+					});
+				} else {
+
+					uni.chooseImage({
+						count: 1, // 最多可以选择的图片张数,默认9
+						sizeType: ['compressed'], //original 原图,compressed 压缩图,默认二者都有
+						sourceType: ['camera', 'album'], //album 从相册选图,camera 使用相机,默认二者都有。如需直接开相机或直接选相册,请只使用一个选项
+						success: function(res) {
+							let errMsg = res.errMsg
+							let tempFiles = res.tempFiles
+							if (errMsg === 'chooseImage:ok') {
+								// console.log(tempFiles[0])
+								if (tempFiles[0].size > 1024 * 1024 * 5) {
+									that.$message.confirm('图片最多支持5M大小,超出大小限制')
+									return
+								}
+								that.$message.showLoading()
+								that.$http.upload(tempFiles[0].path).then(async res => {
+									console.log('res1', res)
+									var pic = res.data && res.data.length > 0 && res.data[
+											0]
+										.url || ''
+									that.$message.hideLoading()
+									that.submitForm.pictureList.push(pic)
+
+									that.$forceUpdate()
+								}).catch(res => {
+									that.$message.hideLoading()
+									console.error(res)
+								})
+							}
+						}
+					})
+				}
+			},
+
+			async submitSales() {
+				// if (this.submitForm.orderItems.length < 1) {
+				// 	this.$message.showToast('未选择需要售后的商品')
+				// 	return
+				// }
+				// if (this.submitForm.orderItems.length < 1) {
+				// 	this.$message.showToast('未选择需要售后的商品')
+				// 	return
+				// }
+				if (isNaN(parseFloat(this.submitForm.num)) || this.submitForm.num <= 0) {
+					this.$message.showToast('售后数量需要大于0')
+					return
+				}
+				if (!this.submitForm.reason) {
+					this.$message.showToast('未填写理由')
+					return
+				}
+				if (!this.submitForm.pictureList || this.submitForm.pictureList.length < 1) {
+					this.$message.showToast('未上传图片')
+					return
+				}
+				await this.$message.confirm('确定申请售后吗')
+				this.$message.showLoading()
+				const {
+					code,
+					data
+				} = await this.$http.request('post', '/api/customer/sales/add', {
+					data: {
+						...this.submitForm
+					}
+				})
+				this.$message.hideLoading()
+				if (code == 0) {
+					this.$message.showToast('提交成功')
+					this.showSales = false
+					this.$forceUpdate()
+					setTimeout(() => {
+						uni.navigateBack()
+					}, 1200)
+				}
+			},
+		},
+	}
 </script>
 
 <template>
-  <view class="order-detail-page">
-    <view class="top-tip flex m-b-20">
-      <image src="//static/common/icon-order-status-SEND.png" class="icon-car m-r-6 img100"></image>
-      <view>
-        <view>{{
-            dto.status === 'SEND' && '商家已发货,正在通知顺丰小件取货'
+	<view class="order-detail-page">
+		<view class="top-tip flex " v-if="!showSales">
+			<image src="/static/common/icon-order-status-SEND.png" class="icon-car m-r-6 img100"></image>
+			<view>
+				<view>{{
+            dto.status === 'SEND' && '商家已发货,正在通知取货'
             || dto.status === 'PENDING' && '订单还未支付,立即去支付'
             || dto.status === 'RECEIVE' && '待签收'
-            || ('订单' + dto.statusStr)
+            || ('订单状态: ' + dto.statusStr)
           }}
-        </view>
-        <!--        <view>{{dto.paymentTime}}</view>-->
-      </view>
-    </view>
-    <view class="m-b-20 address-container">
-      <view class="flex">
-        <view class="icon-loc">
-          <image src="/static/common/icon-loc.png" class="image"></image>
-        </view>
-        <view class="info">
-          <view class="title">
-            {{ dto.customer }}
-            <view class="tel">{{ dto.customerTel }}</view>
-          </view>
-          <view class="content">{{ dto.customerAddress }}</view>
-        </view>
-      </view>
-    </view>
-    <view class="flower-info m-b-20" v-for="(item,index) of list" :key="index">
+				</view>
+				<view class="desc-gray">支付时间:{{dto.paymentTime || '-'}}</view>
+			</view>
+		</view>
+		<view class="address-container bg-white br-4 m-t-12" v-if="!showSales">
+			<view class="flex">
+				<image src="/static/common/icon-loc.png" class="image  m-r-10"></image>
 
-    </view>
-    <view class="info-container">
-      <view class="form-item">
-        <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">
-        <view class="label">下单日期:</view>
-        <view class="value">{{ dto.paymentTime || '-' }}</view>
-      </view>
-      <view class="form-item" v-if="dto.cancelTime&&(dto.status==='CANCEL')">
-        <view class="label">取消时间:</view>
-        <view class="value">{{ dto.cancelTime || '-' }}</view>
-      </view>
-      <view class="form-item" v-if="dto.evaluateTime&&(dto.status==='COMPLETED')">
-        <view class="label">评价时间:</view>
-        <view class="value">{{ dto.evaluateTime || '-' }}</view>
-      </view>
-      <view class="form-item" v-if="(dto.status==='REFUND')">
-        <view class="label">退款金额:</view>
-        <view class="value">{{ dto.refundAmount || '-' }}</view>
-      </view>
-      <view class="form-item" v-if="dto.refundNo&&(dto.status==='REFUND')">
-        <view class="label">退款单号:</view>
-        <view class="value">{{ dto.refundNo || '-' }}</view>
-      </view>
-      <view class="form-item" v-if="dto.refundTime&&(dto.status==='REFUND')">
-        <view class="label">退款时间:</view>
-        <view class="value">{{ dto.refundTime || '-' }}</view>
-      </view>
-      <view class="form-item" v-if="dto.receiveTime&&(dto.status==='EVALUATE')">
-        <view class="label">收货时间:</view>
-        <view class="value">{{ dto.receiveTime || '-' }}</view>
-      </view>
-      <view class="form-item" v-if="dto.completeTime&&(dto.status==='COMPLETED')">
-        <view class="label">完成时间:</view>
-        <view class="value">{{ dto.completeTime || '-' }}</view>
-      </view>
-      <view class="form-item" v-if="dto.transferTime&&(dto.status==='REFUND')">
-        <view class="label">转账时间:</view>
-        <view class="value">{{ dto.transferTime || '-' }}</view>
-      </view>
-      <view class="line">
-      </view>
-      <view class="form-item">
-        <view class="label">特殊需求:</view>
-        <view class="value">{{ dto.specialNeeds || '-' }}</view>
-      </view>
-      <view class="form-item">
-        <view class="label">买家留言:</view>
-        <view class="value">{{ dto.remarks || '-' }}</view>
-      </view>
-    </view>
-    <view class="info-container">
-      <view class="form-item">
-        <view class="label">订单金额:</view>
-        <view class="value">{{ dto.totalAmount || '-' }}</view>
-      </view>
-      <view class="form-item">
-        <view class="label">支付金额:</view>
-        <view class="value">{{ dto.paymentAmount || '-' }}</view>
-      </view>
-      <view class="form-item">
-        <view class="label">商品金额:</view>
-        <view class="value">{{ dto.flowerAmount || '-' }}</view>
-      </view>
-      <view class="form-item">
-        <view class="label">运费:</view>
-        <view class="value">{{ dto.transportFee || '-' }}</view>
-      </view>
+				<view class="info">
+					<view class="title">
+						{{ dto.customer }}
+						<view class="tel">{{ dto.customerTel  || ''}}</view>
+					</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 || ''}}
+			</view>
+			<view class="flex m-t-12">
+				<radio v-if="showSales" disabled :checked="submitForm.orderItemId == item.id"></radio>
+				<!-- @click="changeSalesOrderItem(item)" -->
+				<!-- :checked="submitForm.orderItems.indexOf(item.id)>=0" -->
 
-    </view>
+				<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>
+					</view>
+					<view class="each-list">
+						<view class="each-item">
+							<view class="label">货位号</view>
+							<view class="value">{{ item.warehouseLocationCode || dto.warehouseLocationCode  || '-' }}
+							</view>
+						</view>
 
-    <view class="info-container">
-      <view>
-        <image src="/static/common/icon-kf.png" class="icon-kf m-l-15 img100"></image>
-        我的客服
-      </view>
-      <view class="flex">
-        <view class="flex1 w-fit m-auto">
-          <image src="/static/common/icon-call.png" class="icon-call  img100"></image>
-          15974805814
-        </view>
-        <view class="flex1 w-fit m-auto">
-          <image src="/static/common/icon-wx.png" class="icon-call  img100"></image>
-          在线客服
-        </view>
+						<view class="each-item">
+							<view class="label">颜色</view>
+							<view class="value">{{ item.flowerColor || '-' }}</view>
 
-      </view>
-    </view>
-    <view class="button-space"></view>
-    <view class="buttons-bottom">
-      <view class="button button-1" @click="buttonClick('refund')">申请退款</view>
-    </view>
-  </view>
+						</view>
+						<view class="each-item">
+							<view class="label">规格</view>
+							<view class="value">{{ item.flowerUnit || '-' }}</view>
+						</view>
+
+						<view class="each-item">
+							<view class="label">数量</view>
+							<view class="value">{{ item.num || 0 }}</view>
+
+						</view>
+						<view class="each-item">
+							<view class="label">售价</view>
+							<view class="value">¥{{ item.price || '-' }}</view>
+						</view>
+						<view class="each-item">
+							<view class="label">总金额</view>
+							<view class="value t-red">¥{{ item.total || '-' }}</view>
+						</view>
+					</view>
+				</view>
+			</view>
+
+		</view>
+		<view class="info-container bg-white br-4" v-if="!showSales">
+			<view class="form-item">
+				<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">
+				<view class="label">下单日期:</view>
+				<view class="value">{{ dto.paymentTime || '-' }}</view>
+			</view>
+			<view class="form-item" v-if="dto.cancelTime&&(dto.status==='CANCEL'||dto.status==='REFUND')">
+				<view class="label">取消时间:</view>
+				<view class="value">{{ dto.cancelTime || '-' }}</view>
+			</view>
+			<view class="form-item" v-if="dto.evaluateTime&&(dto.status==='COMPLETED')">
+				<view class="label">评价时间:</view>
+				<view class="value">{{ dto.evaluateTime || '-' }}</view>
+			</view>
+			<view class="form-item" v-if="(dto.status==='REFUND')">
+				<view class="label">退款金额:</view>
+				<view class="value">{{ dto.refundAmount || '-' }}</view>
+			</view>
+			<view class="form-item" v-if="dto.refundNo&&(dto.status==='REFUND')">
+				<view class="label">退款单号:</view>
+				<view class="value">{{ dto.refundNo || '-' }}</view>
+			</view>
+			<view class="form-item" v-if="dto.refundTime&&(dto.status==='REFUND')">
+				<view class="label">退款时间:</view>
+				<view class="value">{{ dto.refundTime || '-' }}</view>
+			</view>
+			<view class="form-item" v-if="dto.receiveTime&&(dto.status==='EVALUATE')">
+				<view class="label">收货时间:</view>
+				<view class="value">{{ dto.receiveTime || '-' }}</view>
+			</view>
+			<view class="form-item" v-if="dto.completeTime&&(dto.status==='COMPLETED')">
+				<view class="label">完成时间:</view>
+				<view class="value">{{ dto.completeTime || '-' }}</view>
+			</view>
+			<view class="form-item" v-if="dto.transferTime&&(dto.status==='REFUND')">
+				<view class="label">转账时间:</view>
+				<view class="value">{{ dto.transferTime || '-' }}</view>
+			</view>
+			<view class="line">
+			</view>
+			<view class="form-item">
+				<view class="label">特殊需求:</view>
+				<view class="value">{{ dto.specialNeedsStr || '-' }}</view>
+			</view>
+			<view class="form-item">
+				<view class="label">买家留言:</view>
+				<view class="value">{{ dto.remarks || '-' }}</view>
+			</view>
+		</view>
+		<view class="info-container bg-white br-4 m-t-12" v-if="!showSales">
+			<view class="form-item">
+				<view class="label">订单金额:</view>
+				<view class="value">{{ dto.totalAmount || '-' }}</view>
+			</view>
+			<view class="form-item">
+				<view class="label">支付金额:</view>
+				<view class="value">{{ dto.paymentAmount || '-' }}</view>
+			</view>
+			<view class="form-item">
+				<view class="label">商品金额:</view>
+				<view class="value">{{ dto.flowerAmount || '-' }}</view>
+			</view>
+			<view class="form-item">
+				<view class="label">运费:</view>
+				<view class="value">{{ dto.transportFee || '-' }}</view>
+			</view>
+
+		</view>
+
+		<view class="info-container bg-white br-4 m-t-12" v-if="!showSales">
+			<view class="icon-view">
+				<image src="/static/common/icon-kf.png" class="icon-kf m-r-10 img100 icon"></image>
+				我的客服
+			</view>
+			<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
+				</view>
+				<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>
+
+		<view class="info-container form bg-white br-4 m-t-12" v-if="showSales">
+			<!-- 表单更新 -->
+			<view class="form-item">
+				<view class="form-item-label require">
+					售后数量
+				</view>
+				<view class="form-item-value">
+					<input v-model="submitForm.num" clearable placeholder="请输入售后数量" type="number"
+						class="form-input"></input>
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="form-item-label require">
+					理由
+				</view>
+				<view class="form-item-value">
+					<input v-model="submitForm.reason" clearable placeholder="请输入理由" class="form-input"></input>
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="form-item-label require">
+					图片
+				</view>
+				<view class="form-item-value m-l-a m-r-0">
+					<view class="t-red" @click="uploadIcon('image')">上传</view>
+				</view>
+			</view>
+			<view class="flex p20" v-if="submitForm.pictureList&&submitForm.pictureList.length>0">
+				<view class="m-t-12 m-r-10 " v-for="(timg,index) of submitForm.pictureList" :key="index">
+					<image class="check-img" :src="timg" @click.stop="previewImg(timg)">
+					</image>
+					<view class="t-red text-center" @click.stop="deleteCheckImage('pictureList',index)">删除</view>
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="form-item-label">
+					视频
+				</view>
+				<view class="form-item-value m-l-a m-r-0">
+					<view class="t-red" @click="uploadIcon('video')">上传</view>
+				</view>
+			</view>
+			<view class="flex p20" v-if="submitForm.videoList&&submitForm.videoList.length>0">
+				<view class="m-t-12 m-r-10 " v-for="(timg,index) of submitForm.videoList" :key="index">
+					<video :src="timg" style="display: block;margin: 0 auto;"></video>
+
+					<view class="t-red text-center" @click.stop="deleteCheckImage('videoList',index)">删除</view>
+				</view>
+			</view>
+		</view>
+
+		<!-- #ifdef PUB_CUSTOMER -->
+
+
+		<view class="button-space"></view>
+		<view class="buttons-bottom flex" v-if="!showSales">
+			<view class="button button-1" @click="buttonClick('refund')" v-if="dto.couldRefund">申请退款
+			</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'"> 重新支付<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> -->
+		</view>
+		<view v-if="showSales">
+			<view style="min-height:200rpx">
+			</view>
+			<view class="bottom-price flex">
+				<view class="button-green-1 m-l-a m-r-0" style="min-width: 240rpx" @click="submitSales">
+					提交售后申请
+					<!-- ({{submitForm.orderItems&&submitForm.orderItems.length||0}}) -->
+				</view>
+			</view>
+		</view>
+		<!-- #endif -->
+		<!--
+      <view class="button button-1" @click = "buttonClick('payAgain')" > 查询退款 < /view>-->
+
+	</view>
 </template>
 
 <style lang="scss" scoped>
-.order-detail-page {
-  background: #F7F7F7;
-  padding: 30rpx;
+	.order-detail-page {
+		background: #F7F7F7;
+		padding: 30rpx;
 
-  .info-container {
-    .button-space {
-      min-height: 140rpx;
-    }
+		.check-img {
+			width: 96rpx;
+			height: 96rpx;
+			border-radius: 4rpx;
+			border: 2rpx dashed #CECECE;
+		}
 
-    .icon-kf {
-      width: 44rpx;
-      height: 44rpx;
-    }
+		.bottom-price {
+			position: fixed;
+			background-color: #ffffff;
+			left: 0rpx;
+			padding: 20rpx;
+			padding-bottom: 40rpx;
+			right: 0rpx;
+			bottom: 0rpx;
 
-    .icon-call {
-      width: 32rpx;
-      height: 32rpx;
-    }
+			.button-green-1 {
+				min-width: 400rpx;
+				padding-left: 20rpx;
+				padding-right: 20rpx;
+			}
+		}
 
-    .buttons-bottom {
-      position: fixed;
-      left: 0;
-      bottom: 0;
-      right: 0;
-      height: 120rpx;
+		.button-space {
+			min-height: 140rpx;
+		}
 
-      .button {
-        border-radius: 42rpx;
-        border: 2rpx solid #CECECE;
-        font-weight: 400;
-        font-size: 28rpx;
-        color: #999999;
-        text-align: center;
-        line-height: 76rpx;
-      }
+		.buttons-bottom {
+			position: fixed;
+			left: 0;
+			bottom: 0;
+			right: 0;
+			height: 120rpx;
+			background-color: #FFFFFF;
+			box-shadow: 0 2rpx 30rpx rgba(0, 0, 0, .3);
 
-      .button-1 {
+			.button {
+				border-radius: 42rpx;
+				border: 2rpx solid #CECECE;
+				font-weight: 400;
+				font-size: 30rpx;
+				color: #999999;
+				text-align: center;
+				line-height: 60rpx;
+				height: 60rpx;
+				padding: 10rpx 30rpx;
+				background-color: #FFFFFF;
+				margin: 0 auto;
+				display: inline-block;
+				vertical-align: middle;
+				margin-top: 20rpx;
+				min-width: 120rpx;
+			}
 
-      }
-    }
-  }
+			.button-1 {}
+		}
 
-  .info-container {
-    padding: 28rpx;
+		.info-container {
 
-    .form-item {
-      font-weight: 400;
-      font-size: 28rpx;
-      color: #666666;
-      line-height: 40rpx;
-      display: flex;
 
-      .label {
-        min-height: 140rpx;
-      }
+			.icon-kf {
+				width: 44rpx;
+				height: 44rpx;
+			}
 
-      .value {
+			.icon-call {
+				width: 32rpx;
+				height: 32rpx;
+			}
 
-      }
-    }
+			.icon-view {
+				line-height: 40rpx;
 
-    .line {
-      height: 2rpx solid #EEEEEE;
-    }
-  }
+				.icon {
+					display: inline-block;
+					vertical-align: middle;
+				}
+			}
 
-  .top-tip {
-    .icon-car {
-      width: 52rpx;
-      height: 52rpx;
-    }
-  }
+		}
 
-  .address-container {
-    padding: 28rpx;
+		.info-container {
+			padding: 28rpx;
 
-    .icon-loc {
-      width: 48rpx;
-      height: 48rpx;
-      background: #20613D;
-      border-radius: 50%;
+			.form-item {
+				font-weight: 400;
+				font-size: 28rpx;
+				color: #666666;
+				line-height: 60rpx;
+				display: flex;
 
-      .image {
-        margin-top: 8rpx;
-        margin-left: 8rpx;
-        width: 32rpx;
-        height: 32rpx;
-      }
-    }
+				.label {
+					min-width: 140rpx;
+					margin-right: 20rpx;
+				}
 
-    .info {
-      .title {
-        font-weight: 600;
-        font-size: 32rpx;
-        color: #000000;
-        line-height: 44rpx;
+				.value {
+					word-break: break-all;
+				}
+			}
 
-        .tel {
-          display: inline-block;
-          margin-left: 20rpx;
-        }
-      }
+			.line {
+				height: 2rpx solid #EEEEEE;
+			}
+		}
 
-      .content {
-        font-weight: 400;
-        font-size: 28rpx;
-        color: #000000;
-        line-height: 40rpx;
-      }
+		.top-tip {
+			.icon-car {
+				width: 52rpx;
+				height: 52rpx;
+			}
+		}
 
-    }
-  }
+		.address-container {
+			padding: 28rpx;
 
-  .flower-info {
-    padding: 28rpx;
+			.image {
+				// background-color: #20613D;
+				border-radius: 50%;
+				margin-top: 8rpx;
+				margin-left: 8rpx;
+				width: 32rpx;
+				height: 32rpx;
+				// padding: 8rpx;
+			}
 
-    background: #FFFFFF;
-    border-radius: 8rpx;
-  }
+			.info {
+				.title {
+					font-weight: 600;
+					font-size: 32rpx;
+					color: #000000;
+					line-height: 44rpx;
 
-}
-</style>
+					.tel {
+						display: inline-block;
+						margin-left: 20rpx;
+					}
+				}
+
+				.content {
+					font-weight: 400;
+					font-size: 28rpx;
+					color: #000000;
+					line-height: 40rpx;
+				}
+
+			}
+		}
+
+		.flower-info {
+			padding: 28rpx;
+
+			background: #FFFFFF;
+			border-radius: 8rpx;
+
+			.supplier-name {
+				border-bottom: 2rpx solid #EEEEEE;
+				font-weight: 600;
+				font-size: 28rpx;
+				color: #000000;
+				padding-bottom: 10rpx;
+				line-height: 40rpx;
+
+				.icon-dp {
+					width: 27rpx;
+					height: 27rpx;
+					display: inline-block;
+					vertical-align: middle;
+				}
+			}
+
+			.title {
+				font-weight: 600;
+				font-size: 28rpx;
+				color: #000000;
+				line-height: 40rpx;
+
+				.level {
+					font-weight: 400;
+					font-size: 28rpx;
+					color: #20613D;
+					line-height: 40rpx;
+					margin-right: 20rpx;
+				}
+			}
+
+			.flower-img {
+				width: 128rpx;
+				height: 118rpx;
+				min-width: 128rpx;
+				min-height: 118rpx;
+			}
+
+			.each-list {
+				display: flex;
+				flex-wrap: wrap;
+				margin-top: 6rpx;
+
+				.each-item {
+					min-width: 30%;
+					max-width: 40%;
+					text-align: center;
+					margin-left: 0rpx;
+					margin-right: auto;
+					display: flex;
+
+					.label {
+						font-weight: 400;
+						font-size: 24rpx;
+						color: #666666;
+						text-align: left;
+						padding-right: 10rpx;
+					}
+
+					.label::after {
+						content: ": "
+					}
+
+					.value {
+						font-weight: 400;
+						font-size: 24rpx;
+						color: #666666;
+					}
+				}
+			}
+
+		}
+
+	}
+</style>
\ No newline at end of file

--
Gitblit v1.9.3