diff --git a/packageA/pages/goodsInfo/goodsInfo.wxss b/packageA/pages/goodsInfo/goodsInfo.wxss index 938bc20..6c3850d 100644 --- a/packageA/pages/goodsInfo/goodsInfo.wxss +++ b/packageA/pages/goodsInfo/goodsInfo.wxss @@ -2425,7 +2425,7 @@ margin: auto; */ } .shop_name{ margin-right: 10rpx; - max-width: 375rpx; + max-width: 370rpx; } .address{ /* width: 100%; diff --git a/packageC/pages/presell/cart/cart.js b/packageC/pages/presell/cart/cart.js index 0af57e2..ffb3797 100644 --- a/packageC/pages/presell/cart/cart.js +++ b/packageC/pages/presell/cart/cart.js @@ -2763,6 +2763,14 @@ Page({ } }) + if(!presellList || !presellList.length){ + var content = good.goods_name + '未找到预售活动,请取消订单'; + th.toast(content); + th.setData({ paying: 0 }); + return false; + } + + if (presellList) { if (good.goods_num > presellList.presell_sumqty - presellList.buy_goodnum) { @@ -2777,6 +2785,29 @@ Page({ return false; } + var fres=await getApp().request.promiseGet("/api/weshop/marketing/marketingPresellForm/get/"+os.stoid+"/"+presell_id, {}); + //接口调用成功的时候 + if(fres && fres.data.code==0 && fres.data.data){ + //如果有指定门店的时候 + if(fres.data.data.pick_up_lists){ + var idx0=fres.data.data.pick_up_lists.findIndex(function (e){ + return e.pickup_id==order.pickup_id; + }) + if(idx0<0){ + getApp().confirmBox(good.goods_name+"预售活动的门店不可售"); + th.setData({ paying: 0 }); + return false; + } + } + + }else{ + var content = good.goods_name + '未找到预售活动,请取消订单'; + th.toast(content); + th.setData({ paying: 0 }); + return false; + } + + } } diff --git a/packageC/pages/presell/goodsInfo/goodsInfo.js b/packageC/pages/presell/goodsInfo/goodsInfo.js index e80cc7c..9712e6b 100644 --- a/packageC/pages/presell/goodsInfo/goodsInfo.js +++ b/packageC/pages/presell/goodsInfo/goodsInfo.js @@ -878,6 +878,7 @@ Page({ sele_g: t.data.data, userInfo: getApp().globalData.userInfo, }); + ee.init(gid); //获取门店 ee.get_sto(); @@ -1912,6 +1913,7 @@ Page({ //---------拿出门店分类和门店------------ get_sto(e) { var th = this, is_normal = e; + var that=th; if (e == 1) { th.setData({ is_normal: 1 }) @@ -1921,6 +1923,8 @@ Page({ var timer_get = setInterval(function () { if (th.data.is_get_local_ok == 0) return false; + if (!th.data.fir_def_store) return false; + var dd = null, i = getApp().request; if (!th.data.sele_g) return false; @@ -1968,44 +1972,107 @@ Page({ }).then(res => { var e = res; + //确保门店的数量要>0时,才进行计算 if (e.data.code == 0 && e.data.data && e.data.data.pageData && e.data.data.pageData.length > 0) { - //如果有开启距离的功能,没有设置默认门店,要用最近的门店作为默认门店 - if (dd.lat && (!th.data.def_pick_store || JSON.stringify(th.data.def_pick_store) == '{}') && th.data.bconfig && th.data.bconfig.is_sort_storage) { - th.setData({ - def_pick_store: e.data.data.pageData[0], - sto_sele_name: e.data.data.pageData[0].pickup_name, - sto_sele_id: e.data.data.pageData[0].pickup_id, - sto_sele_distr: e.data.data.pageData[0].distr_type - }); - th.data.fir_def_store = e.data.data.pageData[0]; - } - //-- 如果有默认选择门店的时候,要把默认门店放在第一位,修改不要配送方式的判断 -- - if (th.data.def_pick_store && JSON.stringify(th.data.def_pick_store) != '{}') { - for (var k = 0; k < e.data.data.pageData.length; k++) { - if (e.data.data.pageData[k].pickup_id == th.data.def_pick_store.pickup_id) { - e.data.data.pageData.splice(k, 1); //删除 - break; + + //指定门店判断, 不是普通购买的时候,秒杀的时候,秒杀有指定门店 + var pickup_ids=th.data.presellForm.pick_up_lists + //-- 如果有指定门店的时候 -- + if(pickup_ids){ + + var ok_arr=[]; + for (let i in e.data.data.pageData) { + let ite = e.data.data.pageData[i]; + //-- 查找一下门店有没有在 -- + var idx=pickup_ids.findIndex(function (e){ + return e.pickup_id==ite.pickup_id; + }) + if(idx>-1){ + ok_arr.push(ite) + } + } + + //判断会员的默认的门店是不是匹配指定的门店 + if (th.data.def_pick_store && JSON.stringify(th.data.def_pick_store) != '{}'){ + //-- 查找一下门店有没有在 -- + var idx1=pickup_ids.findIndex(function (e){ + return e.pickup_id==th.data.def_pick_store.pickup_id; + }) + + if(idx1<0){ + //如果是秒杀的指定门店,就要设置秒杀的 + th.data.def_pick_store.is_no_dis_act=1; + }else{ + th.data.def_pick_store.is_no_dis_act=0; } + + that.setData({ + def_pick_store: th.data.def_pick_store + }) + + } + e.data.data.pageData=ok_arr; //数组重新赋值 + e.data.data.total=ok_arr.length; //数组的长度 + } + else{ + //-- 多规格指定门店优化 -- + if (th.data.def_pick_store && JSON.stringify(th.data.def_pick_store) != '{}'){ + th.data.def_pick_store.is_no_dis_act=0; + that.setData({ + def_pick_store: th.data.def_pick_store + }) } - e.data.data.pageData.splice(0, 0, th.data.def_pick_store); //添加 } + //确保门店的数量要>0时,才进行计算 + if(e.data.data.pageData.length > 0) { - th.setData({ all_pick_list: e.data.data.pageData }); - //--获取线下库存,而且不是新的门店规则, 同时是普通购买的时候,或者同时不能是活动,秒杀,拼团,积分购 预售-- - if(!getApp().is_virtual(th.data.sele_g) && !th.data.sele_g.whsle_id - && th.data.sales_rules >= 2 && !th.data.is_newsales_rules && ([1,2,4,6,8,9].indexOf(th.data.prom_type)==-1 || is_normal == 1)) { - setTimeout(function () { - th.deal_pickup_dline(e); - }, 800) - } else { - setTimeout(function () { - th.deal_pickup(e); //--普通门店排版-- - }, 800) + //如果有开启距离的功能,没有设置默认门店,要用最近的门店作为默认门店 + if (dd.lat && (!th.data.def_pick_store || JSON.stringify(th.data.def_pick_store) == '{}') && th.data.bconfig && th.data.bconfig.is_sort_storage) { + th.setData({ + def_pick_store: e.data.data.pageData[0], + sto_sele_name: e.data.data.pageData[0].pickup_name, + sto_sele_id: e.data.data.pageData[0].pickup_id, + sto_sele_distr: e.data.data.pageData[0].distr_type + }); + th.data.fir_def_store = e.data.data.pageData[0]; + } + + //-- 如果有默认选择门店的时候,要把默认门店放在第一位,修改不要配送方式的判断 -- + if (th.data.def_pick_store && JSON.stringify(th.data.def_pick_store) != '{}') { + for (var k = 0; k < e.data.data.pageData.length; k++) { + if (e.data.data.pageData[k].pickup_id == th.data.def_pick_store.pickup_id) { + e.data.data.pageData.splice(k, 1); //删除 + break; + } + } + e.data.data.pageData.splice(0, 0, th.data.def_pick_store); //添加 + } + + + th.setData({all_pick_list: e.data.data.pageData}); + + //--获取线下库存,而且不是新的门店规则, 同时是普通购买的时候,或者同时不能是活动,秒杀,拼团,积分购 预售-- + if (!getApp().is_virtual(th.data.sele_g) && !th.data.sele_g.whsle_id + && th.data.sales_rules >= 2 && !th.data.is_newsales_rules && ([1, 2, 4, 6, 8, 9].indexOf(th.data.prom_type) == -1 || is_normal == 1)) { + setTimeout(function () { + th.deal_pickup_dline(e); + }, 800) + } else { + setTimeout(function () { + th.deal_pickup(e); //--普通门店排版-- + }, 800) + } } + else{ + wx.hideLoading(); + } + } + else{ + wx.hideLoading(); } }) }, 200) diff --git a/packageC/pages/presell/goodsInfo/goodsInfo.wxml b/packageC/pages/presell/goodsInfo/goodsInfo.wxml index 8c239d1..71b9393 100644 --- a/packageC/pages/presell/goodsInfo/goodsInfo.wxml +++ b/packageC/pages/presell/goodsInfo/goodsInfo.wxml @@ -192,7 +192,10 @@ - (配送不匹配2) + (配送不匹配) + + + (该店不可售) (库存不足) @@ -629,7 +632,8 @@ (库存不足) - (配送不匹配1) + (配送不匹配) + (该店不可售) (库存不足) @@ -671,9 +675,13 @@ - + 门店的不匹配 + + 该门店不可售 + + @@ -855,7 +863,10 @@ - {{item.pickup_name}} + {{item.pickup_name}} + (配送不匹配) + (该点不可售) + @@ -881,7 +892,10 @@ - {{item.pickup_name}} + {{item.pickup_name}} + (配送不匹配) + (该点不可售) + @@ -909,7 +923,10 @@ - {{item.pickup_name}} + {{item.pickup_name}} + (配送不匹配) + (该点不可售) + diff --git a/packageC/pages/presell/goodsInfo/goodsInfo.wxss b/packageC/pages/presell/goodsInfo/goodsInfo.wxss index 600205b..c1d6105 100644 --- a/packageC/pages/presell/goodsInfo/goodsInfo.wxss +++ b/packageC/pages/presell/goodsInfo/goodsInfo.wxss @@ -3016,4 +3016,6 @@ button.custom-service::after{ border: 2rpx solid rgb(238, 238, 238); padding-left: 30rpx; } - +.c-red22{ + color: #d60021 +} diff --git a/packageE/pages/cart/cart2/cart2.js b/packageE/pages/cart/cart2/cart2.js index 64912a4..5c2c16f 100644 --- a/packageE/pages/cart/cart2/cart2.js +++ b/packageE/pages/cart/cart2/cart2.js @@ -2333,6 +2333,7 @@ Page({ if (get_data.gift_id && parseInt(get_data.zp_mode) != 1 && get_data.zp_num * item_map.bs <= get_data.limit_num-other_gift && get_data.zp_num * item_map.bs <= get_data.gift_storecount + && get_data.zp_num>get_data.must_num //增加一个超量 ) { item_map.gift_id = get_data.gift_id; @@ -2371,7 +2372,17 @@ Page({ var can_zp_num = 0; for (let iy in get_data.giftsinfo) { let item = get_data.giftsinfo[iy]; - can_zp_num += parseInt(item.gift_storecount) > parseInt(item.limit_num) ? parseInt(item.limit_num) : parseInt(item.gift_storecount); + + var c_zp=0; + if(parseInt(item.limit_num)>0){ + c_zp= parseInt(item.gift_storecount) > parseInt(item.can_num) ? parseInt(item.can_num) : parseInt(item.gift_storecount); + }else{ + c_zp= parseInt(item.gift_storecount); + } + + if(c_zp<0) c_zp=0; + can_zp_num +=c_zp; + } var t_zp_num = parseInt(get_data.zp_num) * parseInt(get_data.bs); @@ -4711,6 +4722,8 @@ Page({ var order_prom_list_cart = th.data.order_prom_list_cart; + //优惠商品限购的优化 + var yh_lm_map={}; //--组装推送数据-- for (var i = 0; i < order_prom_list_cart.length; i++) { var t_item = order_prom_list_cart[i]; @@ -4877,8 +4890,6 @@ Page({ var check_map = {}; let groupchat_ids=[] - - //-------------让商品添加到商品列表-------------------- for (var k = 0; k < t_item.goods.length; k++) { @@ -4975,6 +4986,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; @@ -4986,18 +4998,65 @@ Page({ var mo_num=getApp().get_limit_qty(g_item,act.length); var steep=getApp().get_limit_qty(g_item,act.length,1); - if ([0,3,5,7,10].indexOf(goods.prom_type)>-1){ + //赠品要排除之外,不进行判断 + if ([0,3,5,7,10].indexOf(goods.prom_type)>-1 && !goods.is_gift){ 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=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 + } + + var m_ky=goods.goods_id+'|'+goods.prom_id; + + var more_num=yh_lm_map[m_ky]?yh_lm_map[m_ky]:0; + + if(pro_gd_limit_num0 && discount.can_num < all_limit_num) { wx.showToast({ title: "超出赠品限购", icon: 'none', @@ -7253,6 +7314,16 @@ Page({ var all_num = 0; for (let i in giftsinfo) { let item = giftsinfo[i]; + if(item.must_num>0 ){ + if(!item.selected){ + ut.m_toast("必送的赠品没有选中"); + return false; + } + if(item.goods_num - + - - {{items.goods_name}} + + {{items.goods_name}} + {{items.goodsinfo.goods_color}}{{items.goodsinfo.goods_color?"/":''}}{{items.goodsinfo.goods_spec}} 规格1 + (超量不足) + 必选{{items.must_num}}件 + diff --git a/packageE/pages/cart/cart2/cart2.wxss b/packageE/pages/cart/cart2/cart2.wxss index 9ce89dd..049b700 100644 --- a/packageE/pages/cart/cart2/cart2.wxss +++ b/packageE/pages/cart/cart2/cart2.wxss @@ -130,7 +130,13 @@ page { margin-bottom: 16rpx; font-size: 28rpx; color: #333; - +} +.goods-name2 { + height: 74rpx; + line-height: 40rpx; + margin-bottom: 16rpx; + font-size: 28rpx; + color: #333; } .goods-color { @@ -1228,6 +1234,10 @@ margin-left: 20rpx; margin-top: 6rpx; } +.c-red { + color: #f23030;vertical-align: top;position: relative;top: 3rpx;font-size: 21rpx;margin-left: 2rpx; +} + diff --git a/pages/cart/cart/cart.js b/pages/cart/cart/cart.js index 4269c3e..2d25077 100644 --- a/pages/cart/cart/cart.js +++ b/pages/cart/cart/cart.js @@ -4165,7 +4165,15 @@ Page({ var a_limit_num = 0; for (let iy in discount.giftsinfo) { let item = discount.giftsinfo[iy]; - can_zp_num += parseInt(item.gift_storecount) > parseInt(item.limit_num) ? parseInt(item.limit_num) : parseInt(item.gift_storecount); + + var c_zp=0; + if(parseInt(item.limit_num)>0){ + c_zp= parseInt(item.gift_storecount) > parseInt(item.can_num) ? parseInt(item.can_num) : parseInt(item.gift_storecount); + }else{ + c_zp= parseInt(item.gift_storecount); + } + if(c_zp<0) c_zp=0; + can_zp_num +=c_zp; } var t_zp_num = parseInt(discount.zp_num) * parseInt(discount.bs); @@ -4487,7 +4495,14 @@ Page({ var a_limit_num = 0; for (let iy in discount.giftsinfo) { let item = discount.giftsinfo[iy]; - can_zp_num += parseInt(item.gift_storecount) > parseInt(item.limit_num) ? parseInt(item.limit_num) : parseInt(item.gift_storecount); + var c_zp=0; + if(parseInt(item.limit_num)>0) { + c_zp= parseInt(item.gift_storecount) > parseInt(item.can_num) ? parseInt(item.can_num) : parseInt(item.gift_storecount); + }else{ + c_zp= parseInt(item.gift_storecount) + } + if(c_zp<0) c_zp=0; + can_zp_num +=c_zp; } var t_zp_num = parseInt(discount.zp_num) * parseInt(discount.bs); diff --git a/pages/goods/goodsInfo/goodsInfo.js b/pages/goods/goodsInfo/goodsInfo.js index 0a5aa9d..7562ebd 100644 --- a/pages/goods/goodsInfo/goodsInfo.js +++ b/pages/goods/goodsInfo/goodsInfo.js @@ -7786,88 +7786,40 @@ Page({ if(th.data.user_pre_buynum >= 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 + }); + } } diff --git a/pages/user/order_detail/order_detail.js b/pages/user/order_detail/order_detail.js index ea0302f..cff2a9e 100644 --- a/pages/user/order_detail/order_detail.js +++ b/pages/user/order_detail/order_detail.js @@ -465,7 +465,7 @@ Page({ } //-- 要进行判断指定门店的判断优化,先做普通商品 -- - if([0,3,5,7,10].indexOf(parseInt(good.prom_type))>-1 && gg.pick_group_ids){ + if([0,3,5,7,10].indexOf(parseInt(good.prom_type))>-1 && gg.pick_group_ids && !good.is_gift){ var idx0=gg.pick_up_lists.findIndex(function (e){ return e.pickup_id==order.pickup_id; }) @@ -607,6 +607,13 @@ Page({ } }) + if(!presellList || !presellList.length){ + var content = good.goods_name + '未找到预售活动,请取消订单'; + th.toast(content); + th.setData({ paying: 0 }); + return false; + } + if (presellList) { if (good.goods_num > presellList.presell_sumqty - presellList.buy_goodnum) { var content = good.goods_name + '购买数量超出商品库存,请取消订单'; @@ -622,6 +629,28 @@ Page({ return false; } + var fres=await getApp().request.promiseGet("/api/weshop/marketing/marketingPresellForm/get/"+os.stoid+"/"+presell_id, {}); + //接口调用成功的时候 + if(fres && fres.data.code==0 && fres.data.data){ + //如果有指定门店的时候 + if(fres.data.data.pick_up_lists){ + var idx0=fres.data.data.pick_up_lists.findIndex(function (e){ + return e.pickup_id==order.pickup_id; + }) + if(idx0<0){ + getApp().confirmBox(good.goods_name+"预售活动的门店不可售"); + th.setData({ paying: 0 }); + return false; + } + } + + }else{ + var content = good.goods_name + '未找到预售活动,请取消订单'; + th.toast(content); + th.setData({ paying: 0 }); + return false; + } + } } @@ -641,7 +670,19 @@ Page({ var content = good.goods_name + '未找到活动,请取消订单重新购买'; th.toast(content); p_ok = 0; + }else if(r_data.promGoodsLists && good.prom_type == 3){ + var fir_act = r_data.promGoodsLists[0]; + //如果是有限购的时候 + if (fir_act.gd_limit_num>0){ + if(promgoodsbuynum+good.goods_num > fir_act.gd_limit_num){ + var content = good.goods_name + '超出优惠促销活动商品限购,请取消订单重新购买'; + th.toast(content) + p_ok = 0; + } + } + } + if (!r_data.ladderLists && good.prom_type == 10) { var content = good.goods_name + '未找到活动,请取消订单重新购买'; th.toast(content); diff --git a/pages/user/order_list/order_list.js b/pages/user/order_list/order_list.js index 4a9c977..4df4dac 100644 --- a/pages/user/order_list/order_list.js +++ b/pages/user/order_list/order_list.js @@ -780,7 +780,7 @@ Page({ //-- 要进行判断指定门店的判断优化,先做普通商品 -- - if([0,3,5,7,10].indexOf(parseInt(good.prom_type))>-1 && gg.pick_group_ids){ + if([0,3,5,7,10].indexOf(parseInt(good.prom_type))>-1 && gg.pick_group_ids && !good.is_gift){ var idx0=gg.pick_up_lists.findIndex(function (e){ return e.pickup_id==order.pickup_id; }) @@ -922,10 +922,15 @@ Page({ } }) - - if (presellList) { + if(!presellList || !presellList.length){ + var content = good.goods_name + '未找到预售活动,请取消订单'; + th.toast(content); + th.setData({ paying: 0 }); + return false; + } + if (presellList) { if (good.goods_num > presellList.presell_sumqty - presellList.buy_goodnum) { var content = good.goods_name + '购买数量超出商品库存,请取消订单'; th.toast(content); @@ -940,6 +945,28 @@ Page({ return false; } + var fres=await getApp().request.promiseGet("/api/weshop/marketing/marketingPresellForm/get/"+os.stoid+"/"+presell_id, {}); + //接口调用成功的时候 + if(fres && fres.data.code==0 && fres.data.data){ + + //如果有指定门店的时候 + if(fres.data.data.pick_up_lists){ + var idx0=fres.data.data.pick_up_lists.findIndex(function (e){ + return e.pickup_id==order.pickup_id; + }) + if(idx0<0){ + getApp().confirmBox(good.goods_name+"预售活动的门店不可售"); + th.setData({ paying: 0 }); + return false; + } + } + + }else{ + var content = good.goods_name + '未找到预售活动,请取消订单'; + th.toast(content); + th.setData({ paying: 0 }); + return false; + } } } @@ -955,16 +982,32 @@ Page({ th.toast(content) p_ok = 0; } + if (!r_data.promGoodsLists && good.prom_type == 3) { var content = good.goods_name + '未找到活动,请取消订单重新购买'; th.toast(content); p_ok = 0; + }else if(r_data.promGoodsLists && good.prom_type == 3){ + var fir_act = r_data.promGoodsLists[0]; + //如果是有限购的时候 + if (fir_act.gd_limit_num>0){ + if(promgoodsbuynum+good.goods_num > fir_act.gd_limit_num){ + var content = good.goods_name + '超出优惠促销活动商品限购,请取消订单重新购买'; + th.toast(content) + p_ok = 0; + } + } + } + if (!r_data.ladderLists && good.prom_type == 10) { var content = good.goods_name + '未找到活动,请取消订单重新购买'; th.toast(content); p_ok = 0; } + + + } else { var content = good.goods_name + '未找到活动,请取消订单重新购买'