From f926e6141482ca1c7ea8de58c06736e7d93abf9f Mon Sep 17 00:00:00 2001
From: 陶杰 <1378534974@qq.com>
Date: 星期一, 13 一月 2025 11:37:53 +0800
Subject: [PATCH] 1.在线客服-点击事件修改

---
 pages/order/order-detail.vue | 1737 +++++++++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 1,265 insertions(+), 472 deletions(-)

diff --git a/pages/order/order-detail.vue b/pages/order/order-detail.vue
index 3d5295b..e1b2d99 100644
--- a/pages/order/order-detail.vue
+++ b/pages/order/order-detail.vue
@@ -1,532 +1,1325 @@
 <script>
 export default {
-  data() {
-    return {
-      id: '',
-      dto: {},
-      type: '',
-      // #ifdef PUB_CUSTOMER
-      type: 'customer',
-      // #endif
-      // #ifdef PUB_PARTNER
-      type: 'partner',
-      // #endif
-    };
-  },
-  onLoad(options) {
-    this.id = options.id || ''
-    if (this.id) {
+	data() {
+		return {
+			id: '',
+			dto: {},
+			showSales: false,
+			submitForm: {},
+			timer: undefined,
+			type: '',
+			// #ifdef PUB_CUSTOMER
+			type: 'customer',
+			// #endif
+			// #ifdef PUB_PARTNER
+			type: 'partner',
+			// #endif
+			salesTypeDef: 0,
+			salesTypeList: [],
+			order_cancel_time: 15,
+			tel: '',
+		};
+	},
+	onUnload() {
+		this.timer && clearTimeout(this.timer)
+	},
+	async onLoad(options) {
+		console.log('options', options)
+		// 获取支付配置
+		await this.getOrderCancelTimeConfig()
 
-      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/${type}/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/${type}/order/item/list`, {
-        params: {
-          id: this.id
-        }
-      })
-      this.$message.hideLoading()
-      if (code === 0 && data) {
-        this.list = data || []
-      }
-    },
-    async buttonClick(buttontype) {
-      switch (buttontype) {
-        case 'refund': {
-          await this.$message.confirm('是否确定申请退款')
-          // 发送请求
-          this.$message.showLoading()
-          const {code} = await this.$http.request('post', '/api/customer/order/refund', {
-            data: {
-              id: this.id,
-              evaluate: res.content
-            }
-          })
-          this.$message.hideLoading()
-          if (code === 0) {
-            this.getDetail()
-          }
-        }
-          break
-        case 'confirm': {
-          await this.$message.confirm('是否确定收货')
-          // 发送请求
-          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()
-          }
+		this.id = options.id || ''
+		if (this.id) {
 
-        }
-          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('支付失败')
-              }
-            })
+			await this.getDetail()
+			await this.getItemList()
+			this.submitForm = {
+				orderId: this.id,
+				// imageList: [],
+				videoList: [],
+				salesType: '',
+				reason: '',
+				// orderItems: [],
+				orderItemId: options.flowerId || '',
+				num: 0,
+				pictureList: []
+			}
+			this.showSales = options.showsales && true || false
 
-          }
+			if (this.dto.statusBackend === 'PENDING' || this.dto.status === 'PENDING') {
 
-        }
-          break
-        case 'evaluate': {
-          const res = await this.$message.confirm('请输入评价信息', {
-            editable: true
-          })
-          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
-        default:
-          break
-      }
-    }
-  },
+
+				this.timer = setInterval(async () => {
+					//倒计时,修改成
+					// var nowdate = new Date().getTime() - 1000 * 60 * 15
+					let res = await this.$http.request('get', `/api/order/time/now`, {
+						params: {}
+					})
+					let serverTime = res.data;
+
+					//倒计时
+					// var nowdate = serverTime - 1000 * 60 * 15
+					var nowdate = serverTime - 1000 * 60 * this.order_cancel_time
+
+					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}`
+						this.dto.bctime = `${parseInt(alltime / 60) < 10 ? '0' : ''}${parseInt(alltime / 60)}:${tt < 10 ? '0' : ''}${tt}`
+
+						change = true
+
+					}
+
+
+					if (change)
+						this.$forceUpdate()
+				}, 1000)
+			}
+
+
+		}
+
+		this.$http.request('get', '/api/code/value', {
+			params: {
+				type: 'after_sale_type'
+			}
+		}).then(res => {
+			var data = res.data;
+
+			let tmpData = data.map(item => ({
+				value: item.value,
+				label: item.label
+			}));
+
+			// 将 '全部' 选项插入到 tmpData 的开头
+			this.salesTypeList = tmpData;
+			this.salesTypeList.unshift({
+				label: '全部',
+				value: ''
+			});
+
+		})
+
+	},
+
+	onShow() {
+		this.getHotLineConfig()
+	},
+
+	methods: {
+
+		async getHotLineConfig() {
+			this.$message.showLoading()
+			const {
+				code,
+				data
+			} = await this.$http.request('get', `/v2/config-param/base/getBaseString`, {
+				params: {
+					paramGroup: "servicehotline",
+					paramKey: "hotline_tel"
+
+				}
+			})
+			this.$message.hideLoading()
+
+			if (code === 0) {
+				// 电话
+				console.log(data)
+				this.tel =data
+			}
+		},
+
+		// 商品评论
+		commentButtonClick() {
+			// 跳转的到评论列表
+			uni.navigateTo({
+				url: '/pages/order/comment/order-comment?orderId=' + this.id
+			})
+		},
+		openbrand(item) {
+			//也要判断一下是否重复进入
+			//判断堆栈,如果是店铺,就直接返回
+			//或者是:从商铺到列表再到详情,再到商铺,这种也不行
+			const pages = getCurrentPages();
+			console.log('toShopping', pages)
+			if (pages && pages.length >= 2) {
+				if (pages[pages.length - 2].route === "sub_pages/customer/shop/shop") {
+					uni.navigateBack()
+					return
+				}
+			}
+			if (pages && pages.length >= 3) {
+				if (pages[pages.length - 3].route === "sub_pages/customer/shop/shop" &&
+					pages[pages.length - 2].route === "sub_pages/customer/trade/list"
+				) {
+					uni.navigateBack({
+						delta: 2
+					})
+					return
+				}
+			}
+
+			if (pages.length >= 10) {
+				//直接强制购物车
+				uni.reLaunch({
+					url: '/sub_pages/customer/shop/shop?id=' + (item.supplierId || '')
+				})
+			} else {
+				uni.navigateTo({
+					url: '/sub_pages/customer/shop/shop?id=' + (item.supplierId || '')
+				})
+			}
+
+		},
+
+		toFlowerDetail(item) {
+			console.log(item)
+			uni.navigateTo({
+				url: `/sub_pages/customer/trade/detail?id=${item.flowerId}`
+			})
+		},
+		salesTypeChange(e) {
+			this.submitForm.salesType = e.value
+		},
+
+		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,
+					// pointGoodsList: [{
+					// 	name: '1',
+					// 	num: 1,
+					// 	description: 'descriptiondescriptiondescriptiondescriptiondescription'
+					// }]
+				}
+				if (this.dto.statusBackend === 'PENDING') {
+					let res = await this.$http.request('get', `/api/order/time/now`, {
+						params: {}
+					})
+					let serverTime = res.data;
+					//先判断要不要字节变成已取消
+					// var nowdate = serverTime - 1000 * 60 * 15
+					var nowdate = serverTime - 1000 * 60 * this.order_cancel_time
+					// var nowdate = new Date().getTime() - 1000 * 60 * 5
+					var diff = new Date(this.dto.createTime).getTime() - nowdate
+
+					if (diff <= 2000 && true) {
+						//超过了5分钟
+						this.dto.statusBackend = 'CANCEL'
+						this.dto.statusBackendStr = '已取消'
+						this.dto.status = 'CANCEL'
+						this.dto.statusStr = '已取消'
+						this.dto.bctime = ''
+						this.$forceUpdate()
+					}
+				}
+
+			}
+		},
+		async callTel() {
+			await this.$message.confirm('是否拨打客服电话')
+			uni.makePhoneCall({
+				phoneNumber: this.tel
+			});
+			// uni.makePhoneCall({
+			// 	phoneNumber: '19288780072'
+			// });
+
+			
+		},
+
+		async getTelNum() {
+			this.$http.request('get', '/api/code/value', {
+				params: {
+					type: 'customer_service_hotline'
+				}
+			}).then(res => {
+				var data = res.data;
+
+				console.log(data)
+
+			})
+		},
+
+		async getOrderCancelTimeConfig() {
+			this.$message.showLoading()
+			const {
+				code,
+				data
+			} = await this.$http.request('get', `/v2/config-param/base/getBaseString`, {
+				params: {
+					paramGroup: "order",
+					paramKey: "order_cancel_time"
+
+				}
+			})
+			this.$message.hideLoading()
+
+			if (code === 0) {
+				console.log(data)
+				this.order_cancel_time =data
+			}
+		},
+
+		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 && tmp.dto && tmp.dto.paymentTrId) {
+						tryCallWx = true
+						wx.openBusinessView({
+							businessType: 'weappOrderConfirm',
+							extraData: {
+								// merchant_id: '',
+								// merchant_trade_no: '',
+								// merchant_id: '1661512517',
+								// merchant_trade_no: tmp.id || '',
+								transaction_id: tmp.dto && tmp.dto.paymentTrId || ''
+							},
+							async success(info) {
+								console.log('info', info)
+								//dosomething
+								// 发送请求
+								if (info.extraData && info.extraData.status === 'fail') {
+									tmp.$message.showToast('支付和确认收货需要是同一微信号,请联系实际支付人登录确认')
+
+								} else if (info.extraData && info.extraData.status === 'cancel') {
+
+								} else {
+									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()
+										tmp.$store.dispatch('getCurrentInfo')
+									}
+
+								}
+
+							},
+							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()
+							this.$store.dispatch('getCurrentInfo')
+							this.$message.showToast('收货成功')
+						}
+					}
+
+				}
+					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)
+								await that.$message.showToast('支付成功')
+								that.getDetail()
+							},
+							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)
+								that.$message.showToast('文件上传失败,请联系管理员')
+							})
+						}
+					}
+				});
+			} else {
+
+				// uni.chooseImage({
+				// 	count: 9, // 最多可以选择的图片张数,默认9
+				// 	sizeType: ['compressed'], //original 原图,compressed 压缩图,默认二者都有
+				// 	sourceType: ['camera', 'album'], //album 从相册选图,camera 使用相机,默认二者都有。如需直接开相机或直接选相册,请只使用一个选项
+				// 	success: function(res) {
+				// 		debugger;
+				// 		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()
+
+				// 			  let filePaths = tempFiles.map(file => file.path);
+				// 			 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)
+				// 				// console.log("文件上传失败,请联系管理员")
+				// 				that.$message.showToast('文件上传失败,请联系管理员')
+
+				// 			})
+				// 		}
+				// 	}
+				// })
+
+				// uni.chooseImage({
+				// 	count: 9, // 最多可以选择的图片张数,默认9
+				// 	sizeType: ['compressed'], //original 原图,compressed 压缩图,默认二者都有
+				// 	sourceType: ['camera', 'album'], //album 从相册选图,camera 使用相机,默认二者都有。如需直接开相机或直接选相册,请只使用一个选项
+				// 	success: async 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()
+
+				// 			let filePaths = tempFiles.map(file => file.path);
+				// 		    const resImages=[]
+				// 			for (let i = 0; i < filePaths.length; i++) {
+				// 				try {
+				// 					const res = await that.$http.upload(filePaths[i]);
+				// 					var pic = res.data && res.data.length > 0 && res.data[0].url || '';
+				// 					if (pic) {
+				// 						// that.submitForm.pictureList.push(pic);
+				// 						resImages.push(pic);
+				// 					}
+				// 				} catch (err) {
+				// 					console.error(err);
+				// 					that.$message.showToast('文件上传失败,请联系管理员');
+				// 				}
+				// 			}
+				// 			if(filePaths.length==resImages.length){
+				// 				// that.submitForm.pictureList = resImages;
+				// 				that.submitForm.pictureList.push(...resImages);
+				// 				  // 隐藏加载提示
+				// 				that.$message.hideLoading();
+				// 				that.$forceUpdate();
+				// 			}else{
+				// 				that.$message.showToast('文件上传失败,请联系管理员');
+				// 			}
+
+				// 		}
+				// 	}
+				// })
+				
+					if(this.submitForm.pictureList?.length>=9){
+						that.$message.confirm('图片最多上传9张!');
+						return
+					}
+
+					uni.chooseImage({
+					count: 9, // 最多可以选择的图片张数,默认9
+					sizeType: ['compressed'], //original 原图,compressed 压缩图,默认二者都有
+					sourceType: ['camera', 'album'], //album 从相册选图,camera 使用相机,默认二者都有。如需直接开相机或直接选相册,请只使用一个选项
+					success: async function(res) {
+						let errMsg = res.errMsg;
+						let tempFiles = res.tempFiles;
+						if (errMsg === 'chooseImage:ok') {
+							// 检查文件大小
+							let oversizedFile = tempFiles.find(file => file.size > 1024 * 1024 * 5);
+							if (oversizedFile) {
+								that.$message.confirm('图片最多支持5M大小,超出大小限制');
+								return;
+							}
+
+							// 显示加载提示
+							that.$message.showLoading();
+
+							console.log("tempFiles")
+							console.log(tempFiles)
+
+							// 获取所有文件的 path 数组
+							let filePaths = tempFiles.map(file => file.path);
+							console.log("filePaths")
+							console.log(filePaths)
+
+							// 创建上传请求的数组
+							const uploadPromises = filePaths.map(path => {
+								return that.$http.upload(path)
+									.then(res => {
+										let pic = res.data && res.data.length > 0 && res.data[0].url || '';
+										return pic;
+									})
+									.catch(err => {
+										console.error(err);
+										return null; // 上传失败时返回 null
+									});
+							});
+
+							// 使用 Promise.all 并发上传
+							try {
+								const resImages = await Promise.all(uploadPromises);
+
+								// 检查上传结果
+								const successfulImages = resImages.filter(pic => pic !== null);
+								that.submitForm.pictureList.push(...successfulImages);
+									that.$message.hideLoading();
+									that.$forceUpdate();
+								if (successfulImages.length !== filePaths.length) {
+									// 部分上传失败
+									that.$message.showToast('部分文件上传失败,请重新尝试!');
+								} 
+							} catch (err) {
+								console.error(err);
+								that.$message.showToast('文件上传失败,请联系管理员');
+							}
+						}
+					}
+				});
+
+			}
+		},
+
+		async submitSales() {
+			// if (this.submitForm.orderItems.length < 1) {
+			// 	this.$message.showToast('未选择需要售后的商品')
+			// 	return
+			// }
+			// if (this.submitForm.orderItems.length < 1) {
+			// 	this.$message.showToast('未选择需要售后的商品')
+			// 	return
+			// }
+			if (isNaN(parseInt(this.submitForm.num)) || this.submitForm.num <= 0 || parseInt(this.submitForm
+				.num) <= 0) {
+				this.$message.showToast('售后数量需要大于0')
+				return
+			}
+			this.submitForm.num = parseInt(this.submitForm.num) || 1
+
+			if (!this.submitForm.salesType) {
+				this.$message.showToast('未填写售后类型')
+				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) {
+				await this.$message.showToast('提交成功')
+				uni.navigateBack()
+				// 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' && '商家已发货,正在通知顺丰小件取货'
-            || dto.status === 'PENDING' && '订单还未支付,立即去支付'
-            || dto.status === 'RECEIVE' && '待签收'
-            || ('订单' + 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 class="supplier-name">
-        <image class="icon-dp" src="/static/common/icon-dp.png"></image>
+	<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)
+				}}
+				</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>
 
-        {{ item.supplierName }}
-      </view>
-      <view class="flex">
-        <image class="flower-img img100 m-r-6"
-               :src="item.flowerCover" @click="previewImg(item.flowerCover)">
-        </image>
-        <view class="flex1">
-          <view class=" flex">
-            <view class="title">{{ item.flowerName }}<span class="level">{{ item.flowerLevelStr }}</span></view>
-            <!--            <view class="m-l-a m-r-0">-->
-            <!--              {{item.flowerCategory || '-'}}-->
-            <!--            </view>-->
-          </view>
-          <view class="each-list">
-            <view class="each-item">
-              <view class="label">颜色</view>
-              <view class="value">{{ item.flowerColor || '-' }}</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 v-for="(item, index) of list" :key="index">
+			<view class="flower-info m-b-20 m-t-12 br-4"
+				v-if="!showSales || showSales && (submitForm.orderItemId == item.id)">
+				<view class="supplier-name ">
+					<view @click.stop="openbrand(item)" style="display: inline-block;">
+						<image class="icon-dp br-4" src="/static/common/icon-dp.png"></image>
+						{{ item.supplierName || '' }} >
+					</view>
+				</view>
+				<!-- submitForm.orderItemId:{{submitForm.orderItemId}} -->
+				<!-- itemId:{{item.id}} -->
+				<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>
-            <view class="each-item">
-              <view class="label">规格</view>
-              <view class="value">{{ item.flowerUnit || '-' }}</view>
-            </view>
+					<!-- <image class="flower-img img100 br-4 m-r-6" :src="item.flowerCover" @click="previewImg(item.flowerCover)"></image> -->
+					<image class="flower-img img100 br-4 m-r-6" :src="item.flowerCover" @click="toFlowerDetail(item)">
+					</image>
+					<view class="flex1" @click.stop="toFlowerDetail(item)">
+						<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="each-item">
-              <view class="label">数量</view>
-              <view class="value">{{ item.num || 0 }}</view>
+							<view class="each-item">
+								<view class="label">颜色</view>
+								<view class="value">{{ item.flowerColor || '-' }}</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="each-item">
+								<view class="label">规格</view>
+								<view class="value">{{ item.flowerUnit || '-' }}</view>
+							</view>
 
-    </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'||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.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="each-item">
+								<view class="label">数量</view>
+								<view class="value">{{ item.num || 0 }}</view>
 
-    </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 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>
+		</view>
 
-      </view>
-    </view>
-    <view class="button-space"></view>
-    <view class="buttons-bottom flex">
-      <view class="button button-1"
-            @click="buttonClick('refund')" v-if="dto.status ==='CANCEL'">申请退款
-      </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>
-      <view class="button button-1" @click="buttonClick('evaluate')"
-            v-if=" dto.status === 'EVALUATE'"> 评价
-      </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.createTime || '-' }}</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 flex">
+				<view class="label">商品金额:</view>
+				<view class="value m-l-a m-r-0 text-right">+{{ dto.flowerAmount || '0' }}</view>
+			</view>
+			<view class="form-item flex">
+				<view class="label">运费:</view>
+				<view class="value  m-l-a m-r-0 text-right">+{{ dto.transportFee || '0' }}</view>
+			</view>
+			<view class="form-item flex">
+				<view class="label">打包费:</view>
+				<view class="value  m-l-a m-r-0 text-right">+{{ dto.packingFee || '0' }}</view>
+			</view>
+			<view class="form-item flex t-red">
+				<view class="label">优惠:</view>
+				<view class="value  m-l-a m-r-0 text-right">-{{ dto.memberCouponAmount || '0' }}</view>
+			</view>
+			<view class="form-item flex t-red">
+				<view class="label">实际支付:</view>
+				<view class="value  m-l-a m-r-0 text-right">¥{{ dto.paymentAmount || '0' }}</view>
+			</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.memberDiscountTypeStr || '-' }}</view>
+			</view>
+			<view class="form-item">
+				<view class="label">优惠金额(每扎):</view>
+				<view class="value">¥{{ dto.memberDiscountAmount || '-' }}</view>
+			</view>
+			<view class="form-item">
+				<view class="label">优惠券:</view>
+				<view class="value">{{ dto.memberCouponName || '-' }}</view>
+			</view> -->
+			<!-- 	<view class="form-item">
+				<view class="label">优惠金额:</view>
+				<view class="value">{{ dto.memberCouponAmount || '-' }}</view>
+			</view> -->
+		</view>
+		<view class="info-container bg-white br-4 m-t-12"
+			v-if="!showSales && dto.pointGoodsList && dto.pointGoodsList.length > 0">
+			<view v-for="(item, j) of dto.pointGoodsList" :key="j" class="m-b-12">
+				<view class="flower-info  br-4">
+					<view class="flex flex-wrap-normal">
+						<image class="flower-img img100 br-4 m-r-6" :src="item.cover" @click="previewImg(item.cover)">
+						</image>
+						<view class="flex1">
+							<view class=" flex">
+								<view class="title">
+									{{ item.name || '' }}
+								</view>
+							</view>
+							<view class="each-list" style="display: contents;">
+								<view class="each-item">
+									<view class="label">数量</view>
+									<view class="value">{{ item.num || 0 }}</view>
+
+								</view>
+								<view class="each-item" style="min-width: unset;max-width: unset;">
+									<view class="label" style="min-width: 55rpx;">描述</view>
+									<view class="value" style="word-break: break-all;text-align: left;">
+										{{ item.description || '-' }}
+									</view>
+								</view>
+							</view>
+						</view>
+					</view>
+
+				</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>
+					{{ tel || '' }}
+				</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">
+					<um-dropdown @change="salesTypeChange" :defaultIndex="salesTypeDef" rangeKey="label"
+						:optionList="salesTypeList" placeholder="售后类型"></um-dropdown>
+				</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>
+	</view>
 </template>
 
 <style lang="scss" scoped>
 .order-detail-page {
-  background: #F7F7F7;
-  padding: 30rpx;
+	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;
 
-    .supplier-name {
-      border-bottom: 2rpx solid #EEEEEE;
-      font-weight: 600;
-      font-size: 28rpx;
-      color: #000000;
-      line-height: 40rpx;
-    }
+				.tel {
+					display: inline-block;
+					margin-left: 20rpx;
+				}
+			}
 
-    .title {
-      font-weight: 600;
-      font-size: 28rpx;
-      color: #000000;
-      line-height: 40rpx;
+			.content {
+				font-weight: 400;
+				font-size: 28rpx;
+				color: #000000;
+				line-height: 40rpx;
+			}
 
-      .level {
-        font-weight: 400;
-        font-size: 28rpx;
-        color: #20613D;
-        line-height: 40rpx;
-        margin-left: 20rpx;
-      }
-    }
+		}
+	}
 
-    .flower-img {
-      width: 128rpx;
-      height: 118rpx;
-      min-width: 128rpx;
-      min-height: 118rpx;
-    }
+	.flower-info {
+		padding: 28rpx;
 
-    .each-list {
-      display: flex;
-      flex-wrap: wrap;
-      margin-top: 6rpx;
+		background: #FFFFFF;
+		border-radius: 8rpx;
 
-      .each-item {
-        min-width: 30%;
-        max-width: 40%;
-        text-align: center;
-        margin-left: 0rpx;
-        margin-right: auto;
-        display: flex;
+		.supplier-name {
+			border-bottom: 2rpx solid #EEEEEE;
+			font-weight: 600;
+			font-size: 28rpx;
+			color: #000000;
+			padding-bottom: 10rpx;
+			line-height: 40rpx;
 
-        .label {
-          font-weight: 400;
-          font-size: 24rpx;
-          color: #666666;
-          text-align: left;
-          padding-right: 10rpx;
-        }
+			.icon-dp {
+				width: 27rpx;
+				height: 27rpx;
+				display: inline-block;
+				vertical-align: middle;
+			}
+		}
 
-        .label::after {
-          content: ": "
-        }
+		.title {
+			font-weight: 600;
+			font-size: 28rpx;
+			color: #000000;
+			line-height: 40rpx;
 
-        .value {
-          font-weight: 400;
-          font-size: 24rpx;
-          color: #666666;
-        }
-      }
-    }
+			.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>
+</style>
\ No newline at end of file

--
Gitblit v1.9.3