From c754e1304799c932b1aabe7a85960d29274791b7 Mon Sep 17 00:00:00 2001
From: 陶杰 <1378534974@qq.com>
Date: 星期三, 18 十二月 2024 09:50:28 +0800
Subject: [PATCH] 1.售后图片可以选择多张,并发向服务器请求上传功能,避免响应过长服务器假死

---
 pages/order/order-detail.vue | 1609 ++++++++++++++++++++++++++++++++---------------------------
 1 files changed, 864 insertions(+), 745 deletions(-)

diff --git a/pages/order/order-detail.vue b/pages/order/order-detail.vue
index 4acc628..5008b47 100644
--- a/pages/order/order-detail.vue
+++ b/pages/order/order-detail.vue
@@ -1,271 +1,346 @@
 <script>
-	export default {
-		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: [],
-			};
-		},
-		onUnload() {
-			this.timer && clearTimeout(this.timer)
-		},
-		async onLoad(options) {
-			console.log('options', options)
+export default {
+	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: [],
+		};
+	},
+	onUnload() {
+		this.timer && clearTimeout(this.timer)
+	},
+	async onLoad(options) {
+		console.log('options', options)
 
-			this.id = options.id || ''
-			if (this.id) {
+		this.id = options.id || ''
+		if (this.id) {
 
-				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
+			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') {
+			if (this.dto.statusBackend === 'PENDING' || this.dto.status === 'PENDING') {
 
 
-					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 change = false
+				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 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 = '已取消'
+					//倒计时
+					var nowdate = serverTime - 1000 * 60 * 15
 
-							this.dto.bctime = ''
-							// console.log('change cancel', this.dto)
-							change = true
-							clearInterval(this.timer)
-							this.timer = undefined
+					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 {
-							//相差
-							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
-
+							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)
-				}
-
-
+					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: ''
+			});
+
+		})
+
+	},
+
+	methods: {
+		// 商品评论
+		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 = 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: '19288780072'
+			});
+		},
+
+		async getTelNum() {
 			this.$http.request('get', '/api/code/value', {
 				params: {
-					type: 'after_sale_type'
+					type: 'customer_service_hotline'
 				}
 			}).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: ''
-				});
+				console.log(data)
 
 			})
-
 		},
-		
-		methods: {
-			// 商品评论
-			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
-					}
+
+		async getItemList() {
+			this.$message.showLoading()
+			const {
+				code,
+				data
+			} = await this.$http.request('get', `/api/${this.type}/order/item/list`, {
+				params: {
+					id: this.id
 				}
-				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 = 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()
+			})
+			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()
 					}
-
 				}
-			},
-			async callTel() {
-				await this.$message.confirm('是否拨打客服电话')
-				uni.makePhoneCall({
-					phoneNumber: '19288780072'
-				});
-			},
+					break
+				case 'confirm': {
+					await this.$message.confirm('是否确定收货')
 
-			async getTelNum(){
-				this.$http.request('get', '/api/code/value', {
-					params: {
-						type: 'customer_service_hotline'
+					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
+							}
+						});
 					}
-				}).then(res => {
-					var data = res.data;
 
-					console.log(data)
-					
-				})
-			},
+					// #endif
 
-			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('是否确定申请退款')
+					if (!tryCallWx) {
+
 						// 发送请求
 						this.$message.showLoading()
 						const {
 							code
-						} = await this.$http.request('get', '/api/customer/order/refund', {
+						} = await this.$http.request('get', '/api/customer/order/receive/confirm', {
 							params: {
 								id: this.id,
 							}
@@ -273,289 +348,332 @@
 						this.$message.hideLoading()
 						if (code === 0) {
 							this.getDetail()
+							this.$store.dispatch('getCurrentInfo')
+							this.$message.showToast('收货成功')
 						}
 					}
+
+				}
 					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
-								}
-							});
+				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,
 						}
+					})
 
-						// #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('收货成功')
+					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 'payAgain': {
-						await this.$message.confirm('是否确定重新支付')
+				case 'evaluate': {
+					const res = await this.$message.confirm('', {
+						editable: true,
+						title: '请输入评价信息'
+					})
+					if (res.content && res.confirm) {
 						// 发送请求
 						this.$message.showLoading()
 						const {
-							code,
-							data
-						} = await this.$http.request('get', '/api/customer/order/payAgain', {
-							params: {
+							code
+						} = await this.$http.request('post', '/api/customer/order/evaluate', {
+							data: {
 								id: this.id,
+								evaluate: res.content
 							}
 						})
-
 						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()
-							}
+							this.getDetail()
 						}
 					}
+				}
 					break
-					// case 'sales': {
-					// 	//新增售后单
-					// 	//去新的页面加上这些选择?
-					// 	this.submitForm = {
-					// 		orderId: this.id,
-					// 		imageList: [],
-					// 		videoList: [],
-					// 		reason: '',
-					// 		orderItems: [],
-					// 	}
-					// 	this.showSales = true
+				// 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)
-								})
-							}
+				// }
+				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
 						}
-					});
-				} else {
+						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: 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)
+					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.$forceUpdate()
-								}).catch(res => {
-									that.$message.hideLoading()
-									console.error(res)
-								})
+							// 显示加载提示
+							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)
-				}
-			},
+				});
+
+			}
 		},
-	}
+
+		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>
@@ -564,13 +682,13 @@
 			<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.status === 'SEND' && '商家已发货,正在通知取货'
+					|| dto.status === 'PENDING' && '订单还未支付,立即去支付'
+					|| dto.status === 'RECEIVE' && '待签收'
+					|| ('订单状态: ' + 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">
@@ -580,19 +698,19 @@
 				<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 v-for="(item,index) of list" :key="index">
+		<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;">
+				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|| '' }} > 
+						{{ item.supplierName || '' }} >
 					</view>
 				</view>
 				<!-- submitForm.orderItemId:{{submitForm.orderItemId}} -->
@@ -603,18 +721,19 @@
 					<!-- :checked="submitForm.orderItems.indexOf(item.id)>=0" -->
 
 					<!-- <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>
+					<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 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  || '-' }}
+									{{ item.warehouseLocationCode || dto.warehouseLocationCode || '-' }}
 								</view>
 							</view>
 
@@ -665,35 +784,35 @@
 				<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="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="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="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="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="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="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="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="form-item" v-if="dto.transferTime && (dto.status === 'REFUND')">
 				<view class="label">转账时间:</view>
 				<view class="value">{{ dto.transferTime || '-' }}</view>
 			</view>
@@ -758,8 +877,8 @@
 			</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">
+			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)">
@@ -767,7 +886,7 @@
 						<view class="flex1">
 							<view class=" flex">
 								<view class="title">
-									{{ item.name || ''}}
+									{{ item.name || '' }}
 								</view>
 							</view>
 							<view class="each-list" style="display: contents;">
@@ -852,11 +971,11 @@
 					<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">
+			<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 class="t-red text-center" @click.stop="deleteCheckImage('pictureList', index)">删除</view>
 				</view>
 			</view>
 			<view class="form-item">
@@ -867,11 +986,11 @@
 					<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">
+			<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 class="t-red text-center" @click.stop="deleteCheckImage('videoList', index)">删除</view>
 				</view>
 			</view>
 		</view>
@@ -883,12 +1002,12 @@
 		<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 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 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 class="button button-1" @click="buttonClick('evaluate')" v-if="dto.status === 'EVALUATE'"> 评价
 			</view>
 			<!-- ||dto.status=='COMPLETED' -->
 			<!-- 在外面申请了,里面不允许了 -->
@@ -913,237 +1032,237 @@
 </template>
 
 <style lang="scss" scoped>
-	.order-detail-page {
-		background: #F7F7F7;
-		padding: 30rpx;
+.order-detail-page {
+	background: #F7F7F7;
+	padding: 30rpx;
 
-		.check-img {
-			width: 96rpx;
-			height: 96rpx;
-			border-radius: 4rpx;
-			border: 2rpx dashed #CECECE;
+	.check-img {
+		width: 96rpx;
+		height: 96rpx;
+		border-radius: 4rpx;
+		border: 2rpx dashed #CECECE;
+	}
+
+	.bottom-price {
+		position: fixed;
+		background-color: #ffffff;
+		left: 0rpx;
+		padding: 20rpx;
+		padding-bottom: 40rpx;
+		right: 0rpx;
+		bottom: 0rpx;
+
+		.button-green-1 {
+			min-width: 400rpx;
+			padding-left: 20rpx;
+			padding-right: 20rpx;
 		}
+	}
 
-		.bottom-price {
-			position: fixed;
-			background-color: #ffffff;
-			left: 0rpx;
-			padding: 20rpx;
-			padding-bottom: 40rpx;
-			right: 0rpx;
-			bottom: 0rpx;
+	.button-space {
+		min-height: 140rpx;
+	}
 
-			.button-green-1 {
-				min-width: 400rpx;
-				padding-left: 20rpx;
-				padding-right: 20rpx;
-			}
-		}
+	.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-space {
-			min-height: 140rpx;
-		}
-
-		.buttons-bottom {
-			position: fixed;
-			left: 0;
-			bottom: 0;
-			right: 0;
-			height: 120rpx;
+		.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;
-			box-shadow: 0 2rpx 30rpx rgba(0, 0, 0, .3);
+			margin: 0 auto;
+			display: inline-block;
+			vertical-align: middle;
+			margin-top: 20rpx;
+			min-width: 120rpx;
+		}
 
-			.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;
+		.button-1 {}
+	}
+
+	.info-container {
+
+
+		.icon-kf {
+			width: 44rpx;
+			height: 44rpx;
+		}
+
+		.icon-call {
+			width: 32rpx;
+			height: 32rpx;
+		}
+
+		.icon-view {
+			line-height: 40rpx;
+
+			.icon {
 				display: inline-block;
 				vertical-align: middle;
-				margin-top: 20rpx;
-				min-width: 120rpx;
 			}
-
-			.button-1 {}
-		}
-
-		.info-container {
-
-
-			.icon-kf {
-				width: 44rpx;
-				height: 44rpx;
-			}
-
-			.icon-call {
-				width: 32rpx;
-				height: 32rpx;
-			}
-
-			.icon-view {
-				line-height: 40rpx;
-
-				.icon {
-					display: inline-block;
-					vertical-align: middle;
-				}
-			}
-
-		}
-
-		.info-container {
-			padding: 28rpx;
-
-			.form-item {
-				font-weight: 400;
-				font-size: 28rpx;
-				color: #666666;
-				line-height: 60rpx;
-				display: flex;
-
-				.label {
-					min-width: 140rpx;
-					margin-right: 20rpx;
-				}
-
-				.value {
-					word-break: break-all;
-				}
-			}
-
-			.line {
-				height: 2rpx solid #EEEEEE;
-			}
-		}
-
-		.top-tip {
-			.icon-car {
-				width: 52rpx;
-				height: 52rpx;
-			}
-		}
-
-		.address-container {
-			padding: 28rpx;
-
-			.image {
-				// background-color: #20613D;
-				border-radius: 50%;
-				margin-top: 8rpx;
-				margin-left: 8rpx;
-				width: 32rpx;
-				height: 32rpx;
-				// padding: 8rpx;
-			}
-
-			.info {
-				.title {
-					font-weight: 600;
-					font-size: 32rpx;
-					color: #000000;
-					line-height: 44rpx;
-
-					.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;
-					}
-				}
-			}
-
 		}
 
 	}
+
+	.info-container {
+		padding: 28rpx;
+
+		.form-item {
+			font-weight: 400;
+			font-size: 28rpx;
+			color: #666666;
+			line-height: 60rpx;
+			display: flex;
+
+			.label {
+				min-width: 140rpx;
+				margin-right: 20rpx;
+			}
+
+			.value {
+				word-break: break-all;
+			}
+		}
+
+		.line {
+			height: 2rpx solid #EEEEEE;
+		}
+	}
+
+	.top-tip {
+		.icon-car {
+			width: 52rpx;
+			height: 52rpx;
+		}
+	}
+
+	.address-container {
+		padding: 28rpx;
+
+		.image {
+			// background-color: #20613D;
+			border-radius: 50%;
+			margin-top: 8rpx;
+			margin-left: 8rpx;
+			width: 32rpx;
+			height: 32rpx;
+			// padding: 8rpx;
+		}
+
+		.info {
+			.title {
+				font-weight: 600;
+				font-size: 32rpx;
+				color: #000000;
+				line-height: 44rpx;
+
+				.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