lilei 4 rokov pred
rodič
commit
109fb6333d
1 zmenil súbory, kde vykonal 40 pridanie a 17 odobranie
  1. 40 17
      pages/cart/cart.vue

+ 40 - 17
pages/cart/cart.vue

@@ -104,6 +104,13 @@
 				<u-button size="mini" :custom-style="toOrderButton" type="error" @click="delGoods">删除</u-button>
 			</view>
 		</view>
+		<!-- 弹框提示 -->
+		<u-popup v-model="showMsg" border-radius="15" closeable mode="center" width="500rpx">
+			<view style="padding: 40rpx;line-height: 40rpx;font-size: 28rpx;">
+				<view style="text-align: center;font-size: 32rpx;margin-bottom: 20rpx;">提示</view>
+				<view v-for="item in msgContent" :key="item.id">{{item.message}}</view>
+			</view>
+		</u-popup>
 	</view>
 </template>
 <script>
@@ -119,7 +126,9 @@
 				checkAll: false,// 全选
 				isEdit: false, // 是否编辑模式
 				cartList: [], // 商品列表
-				loading: false
+				loading: false,
+				showMsg: false,
+				msgContent: []
 			};
 		},
 		computed: {
@@ -195,22 +204,11 @@
 				})
 				return goods
 			},
-			// 判断当前分类下的商品总和是否满足规则
-			hasZgjindu(item){
-				let ret = 0
-				let goldLimit = item.goldLimit
-				item.shoppingCartGoodsList.map(good=>{
-					ret = ret + good.goods.sellGold * good.buyQty
-				})
-				console.log(ret , goldLimit)
-				return !this.isEdit ? ret >= goldLimit : true
-			},
 			// 设置每个分类下的商品选中状态
 			setClsGoodStatus(item,checked){
-				console.log(checked)
 				item.shoppingCartGoodsList.map(good=>{
 					// 已下架,已删除,已销完的不选
-					if((good.goods.inventoryQty==0||good.goods.state == 0||good.goods.delFlage == 0) && !this.isEdit){
+					if((good.goods.inventoryQty==0||good.goods.state == 0) && !this.isEdit){
 						good.checked = false
 					}else{
 						good.checked = checked
@@ -289,15 +287,40 @@
 				this.checkAll = true
 				this.checkAllChange()
 			},
+			// 判断当前分类下的商品总和是否满足规则
+			hasZgjindu(){
+				let result = []
+				let list = this.cartList.filter(item=>item.total>0)
+				for(let i=0;i<list.length;i++){
+					let item = list[i]
+					let ret = 0
+					item.shoppingCartGoodsList.map(good=>{
+						if(good.checked){
+							ret = ret + good.goods.sellGold * good.buyQty
+						}
+					})
+					result.push({id:item.goodsTypeNo,val:ret >= item.goldLimit,message:`[${item.name}]的商品合计满${item.goldLimit}乐豆才可购买`})
+				}
+				
+				console.log(result.filter(item=>!item.val))
+				return result.filter(item=>!item.val)
+			},
 			// 立即下单
 			toOrder(){
 				let goods = this.getCheckGoods(1)
 				if(this.userData.currentGold >= this.totalPrice){
 					if(goods.length){
-						this.$u.vuex("vuex_toOrderList",goods)
-						uni.redirectTo({
-							url:"/pages/toOrder/index"
-						})
+						// 判断是否满足规则
+						let a = this.hasZgjindu()
+						if(a.length==0){
+							this.$u.vuex("vuex_toOrderList",goods)
+							uni.redirectTo({
+								url:"/pages/toOrder/index"
+							})
+						}else{
+							this.showMsg = true
+							this.msgContent = a
+						}
 					}else{
 						uni.showToast({
 							title:"请选择商品",