|
@@ -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:"请选择商品",
|