From 0eefb76e7d6641796d61c3a5e5586bb0c5c0dd94 Mon Sep 17 00:00:00 2001 From: yvan.ni Date: Wed, 23 Aug 2023 11:13:05 +0800 Subject: [PATCH] 超出优惠促销商品限购的优化 --- packageE/pages/cart/cart2/cart2.js | 43 ++++++++++++++++++++++++++++--------------- pages/goods/goodsInfo/goodsInfo.js | 112 ++++++++++++++++++++++++++++++++-------------------------------------------------------------------------------- 2 files changed, 60 insertions(+), 95 deletions(-) diff --git a/packageE/pages/cart/cart2/cart2.js b/packageE/pages/cart/cart2/cart2.js index 99a33ec..da8eb09 100644 --- a/packageE/pages/cart/cart2/cart2.js +++ b/packageE/pages/cart/cart2/cart2.js @@ -4975,6 +4975,7 @@ Page({ //--赠品的时候,阶梯促销会右重复的情况,还有组合购的时候拆分出去的 -- if (check_map[txt] && goods.prom_type != 10) { getApp().confirmBox(goods.goods_name + "计算金额错误,请重新刷新"); + th.setData({ submit: 0 }) return false; } else { check_map[txt] = 1; @@ -4990,36 +4991,47 @@ Page({ if(mo_num>goods.goods_num){ getApp().confirmBox(goods.goods_name + "的未达到起订数量"); th.data.is_summit_ing = 0; + th.setData({ submit: 0 }) return false; } if(steep>1 && (goods.goods_num-mo_num)%steep!=0 ){ getApp().confirmBox(goods.goods_name + "的购买的数量不是起订量的倍数"); th.data.is_summit_ing = 0; + th.setData({ submit: 0 }) return false; } //-- 要判断一下优惠促销的商品的限购 -- if(goods.prom_type==3){ - - var pro_gd_limit_num=1; - - //-- 获取会员之前优惠促销商品买了多少件 -- - var pro_by_num=0; - var lrs= { - store_id: os.stoid,user_id: getApp().globalData.user_id, - goods_id: goods.goods_id, prom_type: 3, - prom_id: goods.prom_id, isnew:1 - }; - var gd_limit_rs=await getApp().promiseGet('/api/weshop/ordergoods/getUserBuyGoodsNum',{data:lrs}); - - if(gd_limit_rs && gd_limit_rs.data.code==0){ - pro_by_num=gd_limit_rs.data.data.promgoodsbuynum + var pro_gd_limit_num=0; + var p_limit_rs= await getApp().request.promisePost('/api/weshop/promgoods/getPromGoodsLimitNum',{ + data:{ + store_id:os.stoid,goods_id:goods.goods_id,prom_id:goods.prom_id,prom_type:3 + } + }) + if(p_limit_rs && p_limit_rs.data.code==0){ + pro_gd_limit_num=p_limit_rs.data.data } + //-- 如果有商品限购的时候 -- + if(pro_gd_limit_num>0){ + //-- 获取会员之前优惠促销商品买了多少件 -- + var pro_by_num=0; + var lrs= { + store_id: os.stoid,user_id: getApp().globalData.user_id, + goods_id: goods.goods_id, prom_type: 3, + prom_id: goods.prom_id, isnew:1 + }; + var gd_limit_rs=await getApp().promiseGet('/api/weshop/ordergoods/getUserBuyGoodsNum',{data:lrs}); + if(gd_limit_rs && gd_limit_rs.data.code==0){ + pro_by_num=gd_limit_rs.data.data.promgoodsbuynum + } - if(pro_gd_limit_num>0 && pro_gd_limit_num0 && pro_gd_limit_num= fir_act.limit_num){ is_yh_out_limit=1; } - } - // var more_arr = []; - // //减价 - // if (fir_act.money > 0){ - // - // more_arr.push({ - // text:'减价' + fir_act.money + '元', - // is_fir:1 - // }); - // } - // if (fir_act.sale > 0) { - // more_arr.push({ - // text:'打' + fir_act.sale + '折', - // is_fir:1 - // }); - // } - // if (fir_act.past == 1) { - // more_arr.push({ - // text:'包邮', - // is_fir:1 - // }); - // } - // if (fir_act.intValue > 0){ - // more_arr.push({ - // text:'送' + fir_act.intValue + '积分', - // is_fir:1 - // }); - // } - // if (fir_act.couponId > 0) { - // more_arr.push({ - // text:'送' + fir_act.couponMoney + '元优惠券', - // is_quan:1 - // }); - // } - // - // if (fir_act.gift_id) { - // var is_more_gf = fir_act.gift_id.split(',') - // if (is_more_gf.length > 1) { - // more_arr.push({ - // text:'送赠品', - // is_gift:1, - // prom_id:fir_act.prom_id - // }); - // } else { - // more_arr.push({ - // text:'送' + fir_act.goods_name + ' x' + fir_act.zp_num, - // is_gift:1, - // prom_id:fir_act.prom_id - // }); - // } - // } - // if (fir_act.lb_id){ - // more_arr.push({ - // text:'送' + fir_act.lbtitle, - // lb_id:fir_act.lb_id - // }); - // } - // if (fir_act.zxlb_id){ - // more_arr.push({ - // text:'送' + fir_act.zxlbtitle, - // zxlb_id:fir_act.zxlb_id - // }); - // } - // if (fir_act.monthgiftbag_id){ - // more_arr.push({ - // text:'送' + fir_act.monthgiftbag_title, - // monthgiftbag_id:fir_act.monthgiftbag_id - // }); - // } - var more_arr=ut.format_yh_act(fir_act); - //-- 开始组装数据 -- - th.add_cx_prom_group({ - id: fir_act.prom_id, - condition: fir_act.condition + (fir_act.prom_type == 1 ? '件' : '元'), - limit: '每人' + (fir_act.limit_num ? '限参与' + fir_act.limit_num + '次' : '参与不限次'), - more: more_arr, + + //如果是有限购的时候 + if (fir_act.gd_limit_num>0 && !is_yh_out_limit){ + var lrs= { + store_id: os.stoid, + user_id: user_id, + goods_id: gid, prom_type: 3, - promGoodsListsDtos:r_data.promGoodsLists, - is_yh_out_limit:is_yh_out_limit - }); - //} + prom_id: fir_act.prom_id, isnew:1 + }; + var gd_limit_rs=await getApp().promiseGet('/api/weshop/ordergoods/getUserBuyGoodsNum',{data:lrs}); + var pro_by_num=0; + if(gd_limit_rs && gd_limit_rs.data.code==0){ + pro_by_num=gd_limit_rs.data.data.promgoodsbuynum + } + if(pro_by_num >= fir_act.gd_limit_num){ + is_yh_out_limit=1; + } + } + //-- 如果超出限购,就不显示了 -- + if(!is_yh_out_limit) { + var more_arr = ut.format_yh_act(fir_act); + //-- 开始组装数据 -- + th.add_cx_prom_group({ + id: fir_act.prom_id, + condition: fir_act.condition + (fir_act.prom_type == 1 ? '件' : '元'), + limit: '每人' + (fir_act.limit_num ? '限参与' + fir_act.limit_num + '次' : '参与不限次'), + more: more_arr, + prom_type: 3, + promGoodsListsDtos: r_data.promGoodsLists, + is_yh_out_limit: is_yh_out_limit + }); + } } -- libgit2 0.21.4