| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037 | <template><view class="box"> <view class="cont">	 <view class="itemBox flex">		 <image v-if="ImgUrl" :src="ImgUrl" class="itemIMg"/>		 <image v-else  class="itemIMg"  src="../../static/timg/noimg.png" mode=""></image>		 <view class="itemRight">		 	<view class="itemName">{{orderData.data.sheetContent}}</view>							<view class="priceBox">				<view class="price" v-if="type==1">¥{{sheetQRCodeList[0].itemRealMoney}}</view>				<view class="price" v-if="type==2">¥{{shData.itemRealMoney}}</view>						</view>					 </view>	 </view>	 <view class="goodsBox">	 			 <view class="goodsline flex" v-if="type==1">		 		 <view class="goodsLeft">退款份数</view>		 		 <view class="goodRight" >					 <view class="numJsbox">					 	<view class="numJj" @click="calculation(1)">-</view>					 	<view class="goodsnum">					 	 <input @input="goodsnumBlur" type="number" value="" v-model="goodsnum" class="goodsnumInput"/>					 	</view>					 	<view class="numJj" @click="calculation(2)">+</view>					 </view>				 </view>		 </view>		 <view class="goodsline flex" v-if="type==2">		 		 <view class="goodsLeft">退款份数</view>		 		 <view class="goodRight" style="color: #666666;">		 				1份	 		 		 </view>		 </view>		 		  <view class="goodsline flex" >			  <view class="tkPrice">				  <view class="tkPrice1">退款金额</view>				  <view class="tkPrice2">实际退款金额以到账金额为准</view>			  </view>			  <view class="tkPriceNum">¥{{totalPrice}}</view>		  </view>	 	 <view class="goodsline flex" >	 	 		 <view class="goodsLeft">退款方式</view>	 	 		 <view class="goodRight" style="font-size: 28rpx;font-weight: 500;color: #222222;">原路退回</view>	 	 </view>	 </view>	 <view class="goodsBox">				 <view class="goodsline flex" v-if="type==2">				 <view class="goodsLeft">商品是否已使用 <span class="xinghao">*</span></view>				 <view class="goodRight " >					 <picker @change="bindPickerChange" :value="index" :range="array">						 <view class="ckLine" v-if="index==''">							 <span>请选择</span>							 <image src="../../static/timg/icon_arrow_right.png" mode="" class="jtIcon"></image>						 </view >						 <view v-else class="ckLine xuanzhong" ><span>{{array[index]}}</span> 						   <image src="../../static/img2/hjt.png" mode="" class="hjtIcon"></image>						 </view>											 </picker>									 </view>		 </view>		 <view class="goodsline flex" >		 	 		 <view class="goodsLeft">退款原因 <span class="xinghao">*</span></view>		 	 		 <view class="goodRight ckLine" @click="reasonS">		 				 <span v-if="!refundReasonTxt">请至少选择一项</span>		 				 <span style="color: #222222;" v-if="refundReasonTxt">{{refundReasonTxt}}</span>		 				 <image src="../../static/timg/icon_arrow_right.png" mode="" class="jtIcon"></image>		 			 </view>		 </view>	 	<view class="tkSm" style="padding-top: 8rpx;">退款说明</view>		<view>			<textarea class="tktextarea" v-model="content" name="" placeholder="请输入退款说明" id="" cols="30" rows="10"></textarea>		    <view class="textareaNum">{{content.length}}/500</view>		</view>		<!-- 图片 -->		<view class="secondView" v-if="type==2">			<view class="tkSm">退款凭证</view>			<view class="imgBox">				<view :class="{img4:(imgindex+1)%4==0}" class="imgLine" v-for="(img,imgindex) in imgArr">					<image :src="img" mode="aspectFit" class="itemImg"></image>					<image src="../../static/img/icon_del_red.png" mode="aspectFit" class="delImg" @click="delimg(imgindex)">					</image>				</view>				<view class="img4" @click="uploadImg">					<image src="../../static/img/btn_pic.png" mode="" class="itemImg"></image>				</view>			</view>		</view>			 </view>	  </view> <view  class="gaodu"></view> <view class="bottomBox">	 <view class="bottomMS">申请退款后不可取消,钱款预期1-3个自然日到账</view>	 <view class="bottom">	 	 <view class="bleft">	 		 <span>退款金额</span>	 		 <span style="color: #EC0F0A;padding-left: 6rpx;">¥</span>	 		 <span style="font-weight: 500;font-size: 34rpx;color: #EC0F0A;">{{totalPrice}}</span>	 	 </view>	 	 <view class="Btn commonBtn" @click="submitFn">提交</view>	 </view> </view>  <view class="reasonBox" v-if="reasonShow">	 <view class="reasonCont">		 <view class="reasonTop">			 <view  class="chahao"></view>			 <view class="tkTitle">请选择退款原因</view>				 <image @click="qdTkclose" class="chahao" src="../../static/img2/chahao.png" mode=""></image>		 </view>		 <view class="reasonContLineBox">			 <view v-for="(item,index) in refundReasonList" class="jiekouLIne">				 <view class="reasonContLineTitle">{{item.reason}}</view>				 <view class="reasonContLine" v-for="(i,ix) in item.two" @click="ckLy(i)">					 <view class="reasonContLineTxt">{{i.reason}}</view>					 <view class="reasonContLineCk" v-if="refundReasonID!=i.id"></view>					 <image class="reasonContLineCkImg" src="../../static/timg/icon_checked@2x.png" mode="" v-if="refundReasonID==i.id"></image>				 				 				 </view>			 </view>		 </view>		 <view style="height: 200rpx;"></view>		 <view class="reasonBottom">			 <view class="reasonBottomBtn" @click="qdTkclose">确定</view>		 </view>	 </view> </view> </view></template><script>	export default {		components: {					},				data() {			return {				themeColor:'',				ext:'',				goodsnum:1,				itemDefault:'',				totalPrice:'',				sheetDetail:[],				userInfo:'',				carInfo:'',				customerInfo:'',				textareaNum:0,				reasonShow:false,				imgArr: [],				array:['未使用','已使用'],				index: '',				orderData:'',				type:'',				id:'',				refundReasonList:'',				sheetQRCodeList:'',				maxNum:0,				refundReasonID:'',				refundReasonTxt:'',				hType:'',				content:'',				couponCodeArr:[],				goodsType:'',				couponCount:1,				shData:'',				couponIds:'',				ImgUrl:'',			}		},		onLoad(opt) {			this.ext = this.$common.getExtStoreId();			this.themeColor = uni.getStorageSync("themeColor");			this.orderData = uni.getStorageSync("orderData");			this.type=opt.type						this.id=opt.id;			if(this.type==1){				this.getsheetQRCode()				this.sheetRefundReason()			}else{				this.shData=uni.getStorageSync("shData")				this.totalPrice=this.shData.itemRealMoney			}			if(this.orderData.openSheetDetail[0].ImgUrl){				   var arr=this.orderData.openSheetDetail[0].ImgUrl.split(",")				   this.ImgUrl=arr[0]								   			}		},		onShow() {					},		methods: {			ckLy(item){				this.refundReasonID=item.id				this.refundReasonTxt=item.reason			},			getsheetQRCode(){				this.$http('openOrderManagement/sheetQRCodeList', {					 type:1,							 sheetID: this.id,				}, 'GET').then(res => {				     this.sheetQRCodeList=res.data					 //this.totalPrice= this.sheetQRCodeList[0].itemRealMoney					/* var Price=0					 this.sheetQRCodeList.forEach((item,index)=>{										 	Price+=item.itemRealMoney					 													 })					 this.totalPrice= Price */					 this.maxNum=this.sheetQRCodeList.length					 this.goodsnum=this.maxNum					 this.couponCodeArr=[]					 this.couponCodeArr.push( this.sheetQRCodeList[0].id)					 this.queryPrice(this.goodsnum)				})			},			sheetRefundReason(){				var params={					type:1				}				this.$http('openOrderManagement/sheetRefundReason', params,'GET').then(res => {					this.refundReasonList=res.data				   				}) 			},			sheetRefundReason2(){				if(this.goodsType==1){					var params={type:3}				}				if(this.goodsType==2){					var params={type:2}				}								this.$http('openOrderManagement/sheetRefundReason', params,'GET').then(res => {					this.refundReasonList=res.data					this.reasonShow=true;								}) 			},			bindPickerChange(e){			  console.log(e)				  this.index=e.detail.value			  if(this.index==0){				  this.goodsType=1			  }			  if(this.index==1){			  	this.goodsType=2			  }			  this.refundReasonTxt=''			},			reasonS(){				if(this.type==1){					this.reasonShow=true;				}else{					if(this.goodsType){						this.sheetRefundReason2()					}else{						uni.showToast({							title: '请先选择是否使用',							icon: 'none',							duration: 3000						});					}				}							},						qdTkclose(){				this.reasonShow=false;			},			queryPrice(num){				uni.showLoading({					title: '加载中'				})				this.$http('openOrderManagement/querySheetRefundCode', {					count:num,sheetID:this.id				},'GET').then(res => {					uni.hideLoading();					if(res.code==0){						this.totalPrice=res.data.total						this.couponIds=res.data.couponIds					}else{						uni.showToast({							title: res.msg,							icon: 'none',							duration: 3000						});				    }				})			},			goodsnumBlur(){				if(this.goodsnum>this.maxNum){					uni.showToast({						title: '超过退款份数',						icon: 'none',						duration: 3000					});					this.$nextTick(() => {						this.goodsnum=this.maxNum						this.queryPrice(this.goodsnum)					})																			}//				/* if(this.goodsnum<1){					uni.showToast({						title: '退款份数不能小于1',						icon: 'none',						duration: 3000					});					this.$nextTick(() => {						this.goodsnum=1						this.queryPrice(this.goodsnum)					})									} */				else{					if(this.goodsnum){						this.queryPrice(this.goodsnum)					}									}							},			calculation(type){				if(type==1){					if(this.goodsnum>1){						this.goodsnum--						this.queryPrice(this.goodsnum)						var Price=0						this.couponCodeArr=[]						 this.sheetQRCodeList.forEach((item,index)=>{							 if( index < this.goodsnum){								 Price+=item.itemRealMoney								 this.couponCodeArr.push(item.id)							 }						 })						// this.totalPrice=Price					}				}else{					if(this.goodsnum<this.maxNum){						this.goodsnum++						this.queryPrice(this.goodsnum)						var Price=0						this.couponCodeArr=[]						 this.sheetQRCodeList.forEach((item,index)=>{							 if( index < this.goodsnum){								 Price+=item.itemRealMoney								 this.couponCodeArr.push(item.id)							 }						 })						 //this.totalPrice=Price					}										}			},			addSheetRefund(){				if(this.type==1){					var params={						hType:this.type,						couponID:this.couponIds,						money:this.totalPrice,						refundReasonID:this.refundReasonID,						sheetID:this.orderData.data.id,						sheetCode:this.orderData.data.code,						content:this.content,						goodsType:this.goodsType,						couponCount:this.goodsnum,					}				}				if(this.type==2){					var params={						hType:this.type,						couponID:this.shData.id,						money:this.totalPrice,						refundReasonID:this.refundReasonID,						sheetID:this.orderData.data.id,						sheetCode:this.orderData.data.code,						content:this.content,						goodsType:this.goodsType,						couponCount:this.couponCount,						imgUrl:this.imgArr.join(',')					}				}				console.log(params)				//return false				uni.showLoading({					title: '加载中'				})				this.$http('openOrderManagement/addSheetRefund', params,'POST').then(res => {					uni.hideLoading();					if(res.code==0){						uni.redirectTo({								url:'refundDetail?id='+res.data.id						})						/* uni.navigateTo({						 	url:'refundDetail?id='+res.data.id						 }) */					}else{						uni.showToast({							title: res.msg,							icon: 'none',							duration: 3000						});				}				})			},			submitFn(){				if(this.goodsnum<1){					uni.showToast({						title: '退款份数不能小于1',						icon: 'none',						duration: 3000					});					return false				}				if(this.refundReasonTxt==''){					uni.showToast({						title: '请选择退款原因',						icon: 'none',						duration: 3000					});					return false				}				var that=this;				uni.showModal({				    title: '申请退款',				    content: '退款申请一旦提交。将不能撤销,是否确认继续退款?',					confirmText:'确认',					cancelText:'取消',				    success: function (res) {				        if (res.confirm) {							that.addSheetRefund()				           // console.log('用户点击确定');						 /* uni.navigateTo({						  	url:'refundDetail'						  }) */				        } else if (res.cancel) {				           						   				        }				    }				});												/* var params={									}				uni.showLoading({					title: '加载中'				})								this.$http('openMallOrder/submitOrder', params,'POST').then(res => {					uni.hideLoading();					if(res.code==0){						this.orderData=res.data						this.unifiedPay(res.data)					}else{						uni.showToast({							title: res.msg,							icon: 'none',							duration: 3000						});					}								}) */			},			unifiedPay(res){				this.$http('openMallOrder/unifiedPay', {					sheetId:res.id				},'POST').then(res => {					this.isgo=true;					if(res.code==0){												this.requestPayment(res.data)					}else{						uni.showToast({							title: res.msg,							icon: 'none',							duration: 3000						});					}				 })			},			uploadImg() {							var that = this;				var length = this.imgArr.length;				var num = 5;				if (length > 4) {					uni.showToast({						title: '最多上传5张',						icon: 'none',						duration: 2000,					});					return false;				}				uni.chooseImage({					sourceType: ['album', 'camera'],					count: num - length,					sizeType:['compressed'],					success: (chooseImageRes) => {						const tempFilePaths = chooseImageRes.tempFilePaths;						/* uni.uploadFile({				            url: that.$request.baseUrl+'accompany/SuperCheckSheet/uploadFile', //仅为示例,非真实的接口地址				            filePath: tempFilePaths[0],				            name: 'file',				            formData: {				                'user': 'test'				            },				            success: (uploadFileRes) => {				                console.log(JSON.parse(uploadFileRes.data).data );								that.imgArr=that.imgArr.concat(JSON.parse(uploadFileRes.data).data) ;												            }				        }); */						tempFilePaths.forEach(v => {							console.log(that.$request.baseUrl + 'tuhuUploadFile');							uni.uploadFile({								url: that.$request.baseUrl + 'tuhuUploadFile',								filePath: v,								name: 'file',								formData: {									'user': 'test'								},											success: (uploadFileRes) => {												console.log(JSON.parse(uploadFileRes.data).data);									that.imgArr = that.imgArr.concat(JSON.parse(										uploadFileRes.data).data);									console.log('imgArr--',that.imgArr);								}							});						})						/* that.$http('accompany/SuperCheckSheet/uploadFile', tempFilePaths[0], 'POST').then(res => {													}) */					}				});			},			delimg(index) {				this.imgArr.splice(index, 1)			},			requestPayment(res){				var payInfo=res;				//console.log(payInfo)				//console.log(String(Date.now()))				var that=this;				uni.requestPayment({					provider: 'wxpay',					//timeStamp: String(Date.now()),					timeStamp: payInfo.timeStamp,					nonceStr: payInfo.nonceStr,					package:payInfo.package,					signType: payInfo.signType,					paySign: payInfo.paySign,					appid:payInfo.appId,					    success: function (res) {				        console.log('success:' + JSON.stringify(res));						 uni.showToast({							 title: '支付成功',							 icon:'none',							 duration: 2000						 });						 uni.navigateTo({						 	url:'paySuccess?type=1&orderType=1'						 })																    },				    fail: function (err) {					  console.log(err)				      uni.showToast({						 title: '支付失败',						 icon:'none',						 duration: 2000				      });					  uni.navigateTo({					  	url:'paySuccess?type=2&orderType=1'					  })					  }					 				}); 			},														}	}</script><style scoped lang="less">.box {	width: 100vw;	min-height: 100vh;	background: #F4F4F4;}.reasonTop{	display: flex;justify-content: space-between;	padding: 32rpx 42rpx;}.chahao{	width: 21rpx;height: 21rpx;	padding-top: 10rpx;	padding-left: 10rpx;	padding-right: 10rpx;	padding-bottom: 10rpx;}.tkTitle{	font-weight: 500;	font-size: 28rpx;	color: #222222;	line-height: 40rpx;}.reasonBox{	position: fixed;	left: 0;	top: 0;	height: 100vh;	width: 750rpx;	background: rgba(0, 0, 0, 0.5);	z-index: 11;}.reasonCont{	height: 70vh;	width: 750rpx;	background: #FFFFFF;	border-radius: 28rpx 28rpx 0rpx 0rpx;	position: absolute;	left: 0;	bottom: 0;}.reasonContLine{	display: flex;justify-content: space-between;		padding: 20rpx 0;}.reasonContLineTitle{	font-weight: 500;	font-size: 28rpx;	color: #222222;	padding-bottom: 15rpx;}.reasonContLineTxt{	font-weight: 400;	font-size: 28rpx;	color: #222222;	line-height: 40rpx;}.reasonContLineCk{	width: 28rpx;	height: 28rpx;	border: 2rpx solid #9A9A9A;	border-radius: 16rpx;	margin-top: 6rpx;}.reasonContLineCkImg{	width: 32rpx;margin-top: 6rpx;	height: 32rpx;}.reasonContLineBox{	padding: 0 33rpx;	height: calc(70vh - 270rpx);	overflow-y: scroll;}.ckLine{	display: flex;color: #9A9A9A;	font-size: 28rpx;}.xinghao{	color: #EC0F0A;}.jtIcon{	width: 12rpx;height: 20rpx;	margin-top: 8rpx;	margin-left: 10rpx;}.hjtIcon{	width: 10rpx;height: 20rpx;	margin-top: 8rpx;	margin-left: 10rpx;}.tkPrice1{	font-size: 26rpx;	color: #222222;}.tkPrice2{	font-size: 24rpx;	color: #9A9A9A;	padding-top: 8rpx;}.tkPriceNum{	font-size: 26rpx;	color: #EC0F0A;	line-height: 50rpx;}.textareaNum{	padding-bottom: 18rpx;	font-size: 24rpx;}.tkSm{	font-size: 28rpx;	color: #222222;	padding-top: 18rpx;}.tktextarea{	font-size: 28rpx;	background: #F7F7F7;	border-radius: 14rpx;	margin-top: 20rpx;	width: 610rpx;padding: 22rpx;	margin-bottom: 10rpx;	line-height: 30rpx;	height: 180rpx;}.textareaNum{	font-size: 24rpx;	color: #9A9A9A;	display: flex;justify-content: flex-end;}.cont{	padding: 20rpx 24rpx;}.itemBox{	background: #FFFFFF;	border-radius: 16rpx;padding: 24rpx;}.itemIMg{	width: 128rpx;	height: 128rpx;border-radius: 10rpx;}.flex{	display: flex;}.itemRight{	width: 450rpx;padding-left: 24rpx;}.itemName{	font-weight: 500;	font-size: 28rpx;	color: #222222;	line-height: 40rpx;}.buyType{	padding: 0 8rpx;text-align: center;	height: 32rpx;line-height: 34rpx;	border-radius: 5rpx;	border: 1px solid #FF0035;font-size: 22rpx;color: #FF0035;margin-top: 10rpx;}.priceBox{	display: flex;justify-content: space-between;padding-top: 40rpx;}.price{	font-size: 28rpx;	color: #222222;	line-height: 50rpx;}.itemNum{	font-size: 34rpx;line-height: 50rpx;	color: #686868;}.itemnotes{	font-size: 24rpx;padding-top: 12rpx;	color: #FFC107;}.mealBox{	background: #FFFFFF;	padding: 20rpx 24rpx;	margin-top: 20rpx;	font-size: 26rpx;	color: #666666;	    border-radius: 16rpx;}.fwlcTitle{	color: #333333;font-size: 30rpx;font-weight: 500;	padding-bottom: 20rpx;}.mealTop{	display: flex;	justify-content: space-between;	height: 72rpx;	line-height: 72rpx;	font-weight: 500;	font-size: 26rpx;	color: #222222;	font-size: 26rpx;	padding: 0 20rpx;}.mealNum{	text-align: center;	width: 120rpx;}.mealexpire{	text-align: center;	width: 120rpx;}.mealName{	width: 460rpx;}.mealTop2{	display: flex;	justify-content: space-between;	height: 72rpx;	line-height: 72rpx;	font-weight: 500;	font-size: 26rpx;	color: #222222;	font-size: 26rpx;	padding: 0 20rpx;	background: #FFF6DB;}.mealXj{	background: #FFFCF3;}.xjLine{	display: flex;	font-weight: 500;	font-size: 26rpx;	color: #222222;	padding: 20rpx 20rpx;}.xjyd{	width: 8rpx;	height: 8rpx;	background: #FABF1B;	border-radius: 50rpx;	margin-top: 12rpx;	margin-right: 10rpx;}.mealMs{	background: #FFFFFF;	padding: 20rpx;	font-weight: 400;	font-size: 24rpx;	color: #9A9A9A;	line-height: 38rpx;}.goodsBox{	padding:18rpx 24rpx;font-size: 28rpx;color: #222222;background: #FFFFFF;margin-top: 20rpx;border-radius: 16rpx;}.goodsline{	justify-content: space-between;	padding: 18rpx 0;}.bottom{		display: flex;	justify-content: space-between;	width: 100%;	padding:30rpx 0 10rpx 0;}.reasonBottom{	position: absolute;	left: 0;bottom: 0;	padding: 30rpx 0;	padding-bottom: constant(safe-area-inset-bottom);	padding-bottom: env(safe-area-inset-bottom); 	width: 100%;	background: #FFFFFF;	box-shadow: 0rpx -2rpx 16rpx 0rpx rgba(153, 153, 153, 0.2);	}.reasonBottomBtn{	width: 661rpx;	height: 86rpx;	background: #EC0F0A;	border-radius: 43rpx;	line-height: 86rpx;	text-align: center;	font-size: 32rpx;	color: #FFFFFF;	margin: 0 auto;}.bottomBox{	position: fixed;	left: 0;bottom: 0;	padding-bottom: constant(safe-area-inset-bottom);	padding-bottom: env(safe-area-inset-bottom); 	width: 100%;	background: #FFFFFF;	box-shadow: 0rpx -2rpx 16rpx 0rpx rgba(153, 153, 153, 0.2);}.bottomMS{	font-size: 24rpx;	color: #706F77;	padding-top: 20rpx;padding-left: 32rpx;}.bleft{	font-weight: 500;	font-size: 26rpx;	color: #222222;	line-height: 86rpx;	padding-left: 32rpx;}.Btn{	width: 400rpx;	height: 86rpx;text-align: center;	line-height: 86rpx;	background: #FCD903;	border-radius: 43rpx;	font-size: 32rpx;	color: #110B01;	margin-right: 36rpx;}.mealBox img{	width: 100%;}.mealBox image{	width: 100%;}.numJsbox{	display: flex;overflow: hidden;}.buyCont{	position: absolute;	left: 0;	bottom: 0;	width: 750rpx;	height: 688rpx;	background: #FFFFFF;	border-radius: 26rpx 26rpx 0px 0px;}.buyNumBox{	padding: 30rpx;    padding-top: 10rpx;	padding-bottom: 70rpx;}.buyContCh{	position: absolute;	top: 53rpx;	right: 36rpx;	width: 36rpx;	height: 36rpx;}.goodsnum{	width: 50rpx;	height: 44rpx;	background: #F4F5F7;	line-height: 44rpx;	text-align: center;	font-weight: 500;	color: #333333;	font-size: 24rpx;	margin: 0 4rpx;	border-left:1px solid #dddddd;	border-right:1px solid #dddddd;}.goodsnumInput{	width: 50rpx;	height: 44rpx;	background: #FFFFFF;	line-height: 44rpx;	text-align: center;	font-weight: 500;	color: #333333;	font-size: 24rpx;}.numJj{	width: 50rpx;	height: 44rpx;	background: #ffffff;	border-radius: 0px 6rpx 6rpx 0px;		text-align: center;	line-height: 44rpx;	font-size: 32rpx;	color: #999999;}.numJsbox{	border: 1px solid #dddddd;	border-radius: 6rpx;}.imgBox {		display: flex;		flex-wrap: wrap;		padding-top: 15rpx;			}	.imgLine {		position: relative;		margin-right: 20.6rpx;	}	.img4{		margin-right: 0rpx;	}	.itemImg {		width: 150rpx;		height: 150rpx;		margin-bottom: 20rpx;	}	.delImg {		width: 32rpx;		height: 32rpx;		position: absolute;		right: 0rpx;		top: 0rpx;	}.gaodu{	height: 200rpx;	padding-bottom: constant(safe-area-inset-bottom);	padding-bottom: env(safe-area-inset-bottom); }.jiekouLIne{	padding-bottom: 36rpx;}.xuanzhong{	    color: #222222;}</style>
 |