From d0c80654e66fc2d62c236c0349ddf2ce54f3b543 Mon Sep 17 00:00:00 2001 From: banche Date: Mon, 21 Mar 2022 18:41:19 +0800 Subject: [PATCH] fix提示框 --- packageA/pages/goodsInfo/goodsInfo.js | 74 ++++++++++++++++++++++++++++++++++++++++++++++++-------------------------- 1 file changed, 48 insertions(+), 26 deletions(-) diff --git a/packageA/pages/goodsInfo/goodsInfo.js b/packageA/pages/goodsInfo/goodsInfo.js index ce05df8..8b786da 100644 --- a/packageA/pages/goodsInfo/goodsInfo.js +++ b/packageA/pages/goodsInfo/goodsInfo.js @@ -877,10 +877,21 @@ Page({ var redisNum = 0; await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/1/" + prom_id, {}).then(res => { if (res.data.code == 0) { - redisNum = res.data.data; + redisNum = !res.data.data ? 0 : res.data.data; }; }); + // 获取购物车同款数量 判断是否超库存 + var cartGoodsNum = 0; + await getApp().request.promiseGet("/api/weshop/cartService/page?store_id="+os.stoid+"&user_id="+oo.user_id+"&service_id="+th.data.data.id+"&pick_id="+th.data.sto_sele_id, + { }).then(res => { + if (res.data.data.pageData.length > 0) { + const tmpObj = res.data.data.pageData[0]; + cartGoodsNum = !tmpObj.goods_num ? 0 : tmpObj.goods_num; + } + + }); + // 有库存的情况下,走秒杀活动流程 否则 走正常购买流程 // 没有库存,已抢光的情况下,走正常购买流程 if(redisNum > 0 && !this.data.is_normal) { @@ -888,36 +899,40 @@ Page({ var t = th.data.goodsInputNum; if (t > redisNum) { - wx.showModal({ + wx.showToast({ title: '超出活动库存', + icon: 'none' }); // 开启限购 if (th.data.sele_g.viplimited > 0) { + let num = th.data.sele_g.viplimited - gd_buy_num; - if (num > redisNum) { - th.setData({goodsInputNum: redisNum}); + if (action !="buy") { + // 购物车 + if (num > redisNum) { + th.setData({goodsInputNum: redisNum - cartGoodsNum}); + } else { + th.setData({goodsInputNum: num - cartGoodsNum}); + } } else { - th.setData({goodsInputNum: num}); + // 立即购买 + if (num > redisNum) { + th.setData({goodsInputNum: redisNum}); + } else { + th.setData({goodsInputNum: num}); + } } + + } else { th.setData({goodsInputNum: redisNum}); } - return false; } - // 获取购物车同款数量 判断是否超库存 - var cartGoodsNum = 0; - await getApp().request.promiseGet("/api/weshop/cartService/page?store_id="+os.stoid+"&user_id="+oo.user_id+"&service_id="+th.data.data.id+"&pick_id="+th.data.sto_sele_id, - { }).then(res => { - if (res.data.data.pageData.length > 0) { - const tmpObj = res.data.data.pageData[0]; - cartGoodsNum = !tmpObj.goods_num ? 0 : tmpObj.goods_num; - } - - }); + // 跳过<立即购买> 购物车 if (action !="buy") { @@ -929,8 +944,9 @@ Page({ if (th.data.sele_g.viplimited > 0) { if (maxNum + gd_buy_num > th.data.sele_g.buy_limit) { - wx.showModal({ + wx.showToast({ title: '超出活动限购数量', + icon: 'none' }); // 可购买数量 @@ -942,8 +958,9 @@ Page({ } if (maxNum > redisNum) { - wx.showModal({ + wx.showToast({ title: '超出活动库存', + icon: 'none' }); // 可购买数量 let num = redisNum - cartGoodsNum; @@ -952,14 +969,14 @@ Page({ } } else { - // 以下为立即购买 // 是否开启个人限购 if (th.data.sele_g.viplimited > 0) { if (t + gd_buy_num > th.data.sele_g.viplimited) { - wx.showModal({ + wx.showToast({ title: '超出活动限购数量', + icon: 'none' }); let num = th.data.sele_g.viplimited - gd_buy_num; @@ -973,6 +990,7 @@ Page({ }; + } }; @@ -1210,9 +1228,10 @@ Page({ }); if (t > redis_num) { - wx.showModal({ + wx.showToast({ // title: '超出商品活动库存', title: '超出活动库存', + icon: 'none', }); th.setData({goodsInputNum: redis_num}) return false; @@ -1231,8 +1250,9 @@ Page({ var num = th.data.sele_g.goods_num - gd_buy_num; if(num < 0) num = 0; if(t > num) { - wx.showModal({ + wx.showToast({ title: '超出活动库存', + icon: 'none', }); th.setData({goodsInputNum: num}) @@ -1242,8 +1262,9 @@ Page({ } else { if ((t + gd_buy_num> th.data.sele_g.viplimited) && (t<=th.data.sele_g.goods_num)) { - wx.showModal({ + wx.showToast({ title: '超出活动限购数量', + icon: 'none', }); var num = th.data.sele_g.viplimited - gd_buy_num; @@ -1285,7 +1306,6 @@ Page({ // e = th.data.def_pick_store.CanOutQty; } } - th.setData({goodsInputNum: t}); @@ -1321,10 +1341,12 @@ Page({ return false; } - var ind = t.currentTarget.dataset.ind; + var ind = t.currentTarget.dataset.ind; + this.setData({ openSpecModal: !0, - openSpecModal_ind: ind, + openSpecModal_ind: ind, + goodsInputNum: 1, }); }, -- libgit2 0.21.4