224 lines
		
	
	
		
			4.8 KiB
		
	
	
	
		
			Vue
		
	
	
	
			
		
		
	
	
			224 lines
		
	
	
		
			4.8 KiB
		
	
	
	
		
			Vue
		
	
	
	
| <template>
 | ||
| 	<view>
 | ||
| 		<u-popup :show="addShow"
 | ||
| 			           closeable
 | ||
| 			           :round="10"
 | ||
| 			           mode="center"
 | ||
| 			           @close="closeTap">
 | ||
| 					    <view class="height-auto">
 | ||
| 							<view style="padding: 0 40rpx;">
 | ||
| 								<view>{{'购买数量'}}</view>
 | ||
| 								<view class="sum-view">
 | ||
| 									<input class="inputs" v-model="form.carryNum" placeholder="" />
 | ||
| 								</view>
 | ||
| 							</view>
 | ||
| 							<view class="buttons">
 | ||
| 								<view class="btn" @click="closeTap">{{'取消'}}</view>
 | ||
| 								<view class="btn" style="border-right: none;color: #005BAC;" @click="pickSubmit">{{'确定'}}</view>
 | ||
| 							</view>
 | ||
| 						</view>
 | ||
| 					   </u-popup>
 | ||
| 		<view class="goods">
 | ||
| 			<view class="pick-up" v-for="item in dataList">
 | ||
| 				<view class="banner">
 | ||
| 					<image :src="item.pickCover">
 | ||
| 						
 | ||
| 					</image>
 | ||
| 					<view class="sum">
 | ||
| 						{{'数量'}}:{{item.usableQuantity}}
 | ||
| 					</view>
 | ||
| 				</view>
 | ||
| 				<view class="time" v-if="item.receiveTime">{{'截止时间'}}:{{item.receiveTime}}</view>
 | ||
| 				<view class="button" v-if="item.pickFlag==0" @click="pickSubmitShow(item)">
 | ||
| 					{{'申请提货'}}
 | ||
| 				</view>
 | ||
| 			</view>
 | ||
| 		</view>
 | ||
| 	</view>
 | ||
| </template>
 | ||
| 
 | ||
| <script>
 | ||
| 	import * as apis from '@/config/index.js'
 | ||
| 	export default {
 | ||
| 		data() {
 | ||
| 			return {
 | ||
| 				addShow:false,
 | ||
| 				form: {carryNum:''},
 | ||
| 				query:{
 | ||
| 					pageNum:1,
 | ||
| 					pageSize:50,
 | ||
| 				},
 | ||
| 				rules: {
 | ||
| 					carryNum: [
 | ||
| 						{required: true, message: '请输入', trigger: "blur"},
 | ||
| 					],
 | ||
| 				},
 | ||
| 				dataList:[]
 | ||
| 			}
 | ||
| 		},
 | ||
| 		mounted() {
 | ||
| 			this.getUserPickUpList()
 | ||
| 		},
 | ||
| 		onNavigationBarButtonTap(e) {
 | ||
| 			uni.navigateTo({
 | ||
| 				url:"/pages/pickupList/index"
 | ||
| 			})
 | ||
| 		},
 | ||
| 		methods: {
 | ||
| 			
 | ||
| 			closeTap(){
 | ||
| 				this.addShow = false
 | ||
| 			},
 | ||
| 			 pickSubmit() {
 | ||
| 			            if(this.form.carryNum<1){
 | ||
| 							uni.showToast({
 | ||
| 								title:'提货数量不能小于1',
 | ||
| 								icon:"none",
 | ||
| 							})
 | ||
| 			                return
 | ||
| 			            }
 | ||
| 						if(this.carryGoodsItem.baseQuantity>1){
 | ||
| 							if(this.form.carryNum%this.carryGoodsItem.baseQuantity !== 0){
 | ||
| 								uni.showToast({
 | ||
| 									title:'提货数量必须是'+this.carryGoodsItem.baseQuantity+'的基数',
 | ||
| 									icon:"none",
 | ||
| 								})
 | ||
| 								return
 | ||
| 							}						
 | ||
| 						}
 | ||
| 						if(this.form.carryNum > this.carryGoodsItem.usableQuantity){
 | ||
| 								uni.showToast({
 | ||
| 									title:'提货数量大于可提数量',
 | ||
| 									icon:"none",
 | ||
| 								})
 | ||
| 			                return
 | ||
| 			            }
 | ||
| 			            this.addShow = false;
 | ||
| 						
 | ||
| 					
 | ||
| 						 uni.navigateTo({ 
 | ||
| 							 url: '/pages/thOrder/index?pkId='+ this.carryGoodsItem.pkId 
 | ||
| 							 +'&num='+this.form.carryNum ,
 | ||
| 							 })
 | ||
| 			        },
 | ||
| 				pickSubmitShow(item) {
 | ||
| 			          if(item.pickFlag==1){
 | ||
| 						// 跳转到支付
 | ||
| 						uni.navigateTo({
 | ||
| 							 url: '/pages/thOrder/index?pkId='+ item.pkId
 | ||
| 							 +'&num='+this.form.carryNum ,
 | ||
| 							 })
 | ||
| 			              return
 | ||
| 			          }
 | ||
| 						this.form.carryNum = item.baseQuantity
 | ||
| 						this.form.carryNum1 = item.baseQuantity
 | ||
| 						this.form.usableQuantity = item.usableQuantity
 | ||
| 			            this.addShow = true;
 | ||
| 						  this.carryGoodsItem = item;
 | ||
| 			            // this.$refs['form'].validate(valid => {
 | ||
| 			            //     if (!valid) {
 | ||
| 			            //         return false
 | ||
| 			            //     }else{
 | ||
| 			            //         console.error("11")
 | ||
| 			            //     }
 | ||
| 			            // })
 | ||
| 			        },
 | ||
| 			getUserPickUpList(){
 | ||
| 				apis.pickList(this.query).then((res)=>{
 | ||
| 					 this.dataList = res.data
 | ||
| 				})
 | ||
| 			}
 | ||
| 		}
 | ||
| 	}
 | ||
| </script>
 | ||
| 
 | ||
| <style lang="scss">
 | ||
| 	.inputs{
 | ||
| 		padding-left: 30rpx ;
 | ||
| 		padding-top: 8rpx;
 | ||
| 		text-align: center;
 | ||
| 		width: 360rpx;
 | ||
| 	}
 | ||
| 	.buttons{
 | ||
| 		display: flex;
 | ||
| 		justify-content: space-between;
 | ||
| 		
 | ||
| 		border-top: 1rpx solid #ddd;
 | ||
| 	}
 | ||
| 	.btn{
 | ||
| 		width: 330rpx;
 | ||
| 		height: 88rpx;
 | ||
| 		// background: #DDDDDD;
 | ||
| 		line-height: 88rpx;
 | ||
| 		border-right: 1px solid #ddd;
 | ||
| 		text-align: center;
 | ||
| 	}
 | ||
| 	.sum-view{
 | ||
| 		width: 440rpx;
 | ||
| 		height: 64rpx;
 | ||
| 		background: #FFFFFF;
 | ||
| 		border: 1rpx solid #DDDDDD;
 | ||
| 		border-radius: 32rpx;
 | ||
| 		line-height: 64rpx;
 | ||
| 		margin: 30rpx auto;
 | ||
| 	}
 | ||
| 	.height-auto{
 | ||
| 		
 | ||
| 		padding: 40rpx 0;
 | ||
| 		width: 525rpx;
 | ||
| 		height: 220rpx;
 | ||
| 		background: #FFFFFF;
 | ||
| 		border-radius: 25rpx;
 | ||
| 	}
 | ||
| 	.button{
 | ||
| 		width: 182rpx;
 | ||
| 		height: 52rpx;
 | ||
| 		background: #005BAC;
 | ||
| 		border-radius: 26rpx;
 | ||
| 		text-align: center;
 | ||
| 		line-height: 52rpx;
 | ||
| 		color: #fff;
 | ||
| 		font-size: 24rpx;
 | ||
| 		margin: 30rpx auto auto auto;
 | ||
| 	}
 | ||
| 	.time{
 | ||
| 		color: #999;
 | ||
| 		font-size: 24rpx;
 | ||
| 		margin-top: 20rpx;
 | ||
| 	}
 | ||
| 	.banner{
 | ||
| 		position: relative;
 | ||
| 		image{
 | ||
| 			width: 295rpx;
 | ||
| 			height: 180rpx;
 | ||
| 			position: relative;
 | ||
| 		}
 | ||
| 	}
 | ||
| 	.sum{
 | ||
| 		position: absolute;
 | ||
| 		right: 15rpx;
 | ||
| 		z-index: 1;
 | ||
| 		bottom: 20rpx;
 | ||
| 		color: #fff;
 | ||
| 		font-size: 20rpx;
 | ||
| 	}
 | ||
| 	page{
 | ||
| 		background-color: #f2f2f2;
 | ||
| 	}
 | ||
| 	.goods{
 | ||
| 		display: flex;
 | ||
| 		flex-wrap: wrap;
 | ||
| 		padding: 30rpx 0;
 | ||
| 	}
 | ||
| 	.pick-up{
 | ||
| 		// width: 330rpx;
 | ||
| 		// height: 413rpx;
 | ||
| 		background: #FFFFFF;
 | ||
| 		box-shadow: 0px 5rpx 5rpx 0px rgba(0,0,0,0.05);
 | ||
| 		border-radius: 15rpx;
 | ||
| 		margin-left: 30rpx;
 | ||
| 		padding: 20rpx;
 | ||
| 		margin-bottom: 30rpx;
 | ||
| 	}
 | ||
| </style>
 |