diff --git a/packageE/pages/cart/cart2/cart2.js b/packageE/pages/cart/cart2/cart2.js index a2da53b..a639d58 100644 --- a/packageE/pages/cart/cart2/cart2.js +++ b/packageE/pages/cart/cart2/cart2.js @@ -1411,7 +1411,7 @@ Page({ } th.setData({ collocation_goods: gg.collocation_goods }); - if (th.data.all_collocation_list) { + if (th.data.all_collocation_list && gg.collocation_goods) { for (var i = 0; i < th.data.all_collocation_list.length; i++) { var item0 = th.data.all_collocation_list[i]; var idx = gg.collocation_goods.findIndex(function (e) { @@ -1425,12 +1425,14 @@ Page({ } + if( gg.collocation_goods){ + //var narr=gg.collocation_goods; + //修改成深拷贝,确保返回是数据正确 + var narr = JSON.parse(JSON.stringify(gg.collocation_goods)); + narr.push(t.data.data); + await th.get_collocation_list(narr); + } - //var narr=gg.collocation_goods; - //修改成深拷贝,确保返回是数据正确 - var narr = JSON.parse(JSON.stringify(gg.collocation_goods)); - narr.push(t.data.data); - await th.get_collocation_list(narr); } th.setData({ bn_goods: gd, bn_pickname: gg.pick_name, index: m_wind, @@ -1914,6 +1916,9 @@ Page({ calclate_lbNum(r_data) { + + if(!r_data) return false; + let send_lb = this.data.send_lb; //g_lb_num我的礼包 g_zxlb_num专享礼包 r_data.forEach(r_d => { diff --git a/pages/cart/cart/cart.js b/pages/cart/cart/cart.js index 10066cc..18d67ba 100644 --- a/pages/cart/cart/cart.js +++ b/pages/cart/cart/cart.js @@ -427,6 +427,9 @@ Page({ th.data.ladder_map = {}; var rd = Math.random().toString(36).substr(2, 15); var user_id = getApp().globalData.user_id; + + wx.showLoading(); + getApp().request.get("/api/weshop/cart/list", { data: { user_id: app.globalData.user_id, @@ -1161,6 +1164,8 @@ Page({ }), th.doCheckAll(), wx.stopPullDownRefresh(); + wx.hideLoading(); + } }); }, diff --git a/pages/goods/goodsInfo/goodsInfo.js b/pages/goods/goodsInfo/goodsInfo.js index 23e208e..1fbe2b4 100644 --- a/pages/goods/goodsInfo/goodsInfo.js +++ b/pages/goods/goodsInfo/goodsInfo.js @@ -987,8 +987,8 @@ Page({ ee.data.prom_id = t.data.data.prom_id; } - //一件代发商品不去计算优惠 + //if (!ee.data.fir_goods.whsle_id && ee.data.prom_type != 1 && ee.data.prom_type != 4 && ee.data.prom_type != 6 && ee.data.prom_type != 2) { if (!ee.data.fir_goods.whsle_id && ee.data.prom_type != 1 && ee.data.prom_type != 4 && ee.data.prom_type != 6 && ee.data.prom_type != 2) { ee.check_is_youhui(ee.data.gid); } @@ -2037,51 +2037,89 @@ Page({ } else { //-- 这一步主要是要让立即购买 走 购物车的逻辑 参与活动,如果有zh_act就强制组合购购买 -- - if(th.data.zh_act && th.data.zh_act.buy_limit !=0 && th.data.zh_act.buy_limit <= th.data.userbuynum && th.data.zh_act.zhbuyqty <= th.data.goodsInputNum){ - wx.hideLoading() - - wx.showModal({ - title: '提示', - // content: `商品${str},组合购活动,购买次数已超,将以普通商品购买?`, - content: `${th.data.data.goods_name}超出组合购限购次数,将以普通商品购买`, - success:res=>{ - if (res.confirm) { - console.log('用户点击确定') - //----先看会员在购物车中是否加入了该商品,立即购买的----- - getApp().request.get("/api/weshop/cart/page", { - data: { + if(th.data.zh_act + && th.data.zh_act.zhbuyqty <= th.data.goodsInputNum){ + wx.hideLoading(); + + if((th.data.zh_act.buy_limit !=0 && th.data.zh_act.buy_limit <= th.data.userbuynum)){ + wx.showModal({ + title: '提示', + // content: `商品${str},组合购活动,购买次数已超,将以普通商品购买?`, + content: `${th.data.data.goods_name}超出组合购限购次数,将以普通商品购买`, + success:res=>{ + if (res.confirm) { + console.log('用户点击确定') + //----先看会员在购物车中是否加入了该商品,立即购买的----- + getApp().request.get("/api/weshop/cart/page", { + data: { store_id: e.data.stoid, user_id: oo.user_id, state: 1 - }, - success: function (res) { + }, + success: function (res) { //-------如果购物车中有相关的数据--------- if (res.data.code == 0 && res.data.data.total > 0) { - for (let j in res.data.data.pageData) { - let item_j = res.data.data.pageData[j]; - var url = '/api/weshop/cart/del/' + e.data.stoid + '/' + item_j.id; - getApp().request.delete(url, {}); - } + for (let j in res.data.data.pageData) { + let item_j = res.data.data.pageData[j]; + var url = '/api/weshop/cart/del/' + e.data.stoid + '/' + item_j.id; + getApp().request.delete(url, {}); + } } newd.state = 1; newd.prom_type=0; newd.prom_id=0 getApp().request.post("/api/weshop/cart/save", { - data: newd, - success: function (t) { - th.closeSpecModal(); - getApp().goto("/packageE/pages/cart/cart2/cart2?state=1"); - } + data: newd, + success: function (t) { + th.closeSpecModal(); + getApp().goto("/packageE/pages/cart/cart2/cart2?state=1"); + } }); + } + }) + } else if (res.cancel) { + + console.log('用户点击取消') + } + } + }) + }else{ + + + //----先看会员在购物车中是否加入了该商品,立即购买的----- + getApp().request.get("/api/weshop/cart/page", { + data: { + store_id: e.data.stoid, + user_id: oo.user_id, + state: 1 + }, + success: function (res) { + //-------如果购物车中有相关的数据,先清理掉--------- + if (res.data.code == 0 && res.data.data.total > 0) { + for (let j in res.data.data.pageData) { + let item_j = res.data.data.pageData[j]; + var url = '/api/weshop/cart/del/' + e.data.stoid + '/' + item_j.id; + getApp().request.delete(url, {}); } - }) - } else if (res.cancel) { + } + + newd.state = 1; + newd.prom_type=7; + newd.prom_id=th.data.zh_act.id; + getApp().request.post("/api/weshop/cart/save", { + data: newd, + success: function (t) { + th.closeSpecModal(); + getApp().goto("/packageE/pages/cart/cart2/cart2?state=1"); + } + }); - console.log('用户点击取消') + } + }) } - } - }) - return false + + + return false }else{ //----先看会员在购物车中是否加入了该商品,立即购买的----- getApp().request.get("/api/weshop/cart/page", { @@ -2128,11 +2166,19 @@ Page({ } //如果有阶梯促销的时候 - if(th.data.jieti_prom){ + if(th.data.jieti_prom && newd.prom_type==0){ newd.prom_type = 7; newd.prom_id = th.data.ladder_act_id; } + + //如果有搭配购的时候的时候 + if(th.data.collocationGoods && newd.prom_type==0){ + newd.prom_type = 5; + newd.prom_id = th.data.collocationGoods.id; + } + + newd['pick_name'] = th.data.sto_sele_name; newd['pick_dis'] = th.data.sto_sele_distr; th.buyNow(newd); @@ -2585,7 +2631,7 @@ Page({ callback(); } else { //-- 判断有没有优惠活动 -- - getApp().request.promiseGet("/api/weshop/goods/getGoodsPromListNew/" + os.stoid + "/" + th.data.sele_g.goods_id + "/0" + "/" + usr.user_id, {}).then(res => { + getApp().request.promiseGet("/api/weshop/goods/getGoodsPromListNew1/" + os.stoid + "/" + th.data.sele_g.goods_id + "/0" + "/" + usr.user_id, {}).then(res => { if (res.data.code == 0) { var r_data = res.data.data; th.data.prom_goods = r_data.promGoodsLists; @@ -7046,12 +7092,14 @@ Page({ } else { //调用接口判断订单优惠, - getApp().request.get("/api/weshop/goods/getGoodsPromListNew/" + os.stoid + "/" + gid + "/0" + "/" + user_id, { + getApp().request.get("/api/weshop/goods/getGoodsPromListNew1/" + os.stoid + "/" + gid + "/0" + "/" + user_id, { success: function (res) { if (res.data.code == 0 && res.data.data) { var r_data = res.data.data; var max = 0, min = 0; + + if (r_data.collocationList) { for (var i in r_data.collocationList) { if (max == 0) max = r_data.collocationList[i].price; @@ -7062,8 +7110,13 @@ Page({ } r_data.collocationPromList.max = (max + th.data.data.shop_price).toFixed(2); r_data.collocationPromList.min = (min + th.data.data.shop_price).toFixed(2); + + //如果有搭配促销先不和 阶梯促销和优惠测序重合,做到后台可以重合 + r_data.ladderLists=null; + r_data.promGoodsLists=null; } + if (r_data.ladderLists) { var act_id = r_data.ladderLists[0].form_id; //-- 判断会员能不能参与阶梯促销 -- @@ -7088,6 +7141,8 @@ Page({ }) } + + th.setData({ order_prom: r_data.promOrder, collocationGoods: r_data.collocationPromList, @@ -7367,7 +7422,8 @@ Page({ store_id: os.stoid, goodsidlist: this.data.data.goods_id, is_detail: 1, - user_id: user_id + user_id: user_id, + timetype:0 }; //获取秒杀的多规格 getApp().request.promiseGet(url, { @@ -7470,7 +7526,7 @@ Page({ }, //-- 检验商品的活动情况 -- - check_gd_prom_new: function (func) { + check_gd_prom_new: async function (func) { if([1,2,4,6,8,9].indexOf(parseInt(this.data.prom_type))>-1 ){ func(); return false; @@ -7480,7 +7536,7 @@ Page({ var user_id = getApp().globalData.user_id; if (!user_id) user_id = 0; - var url = '/api/weshop/activitylist/listGoodActInfo2'; + var url = '/api/weshop/activitylist/listGoodActInfo2New'; var req_d = { "store_id": os.stoid, "goods_id": this.data.gid, @@ -7491,7 +7547,8 @@ Page({ success: function (e) { if (e.data.code == 0 && e.data.data && e.data.data.length > 0) { var arr = e.data.data; - let times = new Date().getTime() + let times = new Date().getTime(); + arr.map(item=>{ //如果是积分购的话,要进行活动时间判断 if(item.prom_type==4){ @@ -7505,8 +7562,9 @@ Page({ } }) + //-- 预热也要计算 -- var arr2 = arr.filter(function (e) { - return e.s_time < ut.gettimestamp(); + return e.s_time < ut.gettimestamp() || (e.warm_uptime && e.warm_uptime +