diff --git a/pages/cart/cart/cart.js b/pages/cart/cart/cart.js index ebe83f1..c8695bf 100644 --- a/pages/cart/cart/cart.js +++ b/pages/cart/cart/cart.js @@ -356,32 +356,79 @@ Page({ //--判断优惠活动有没有过期-- else if (item.prom_type == 3) { - var isok = 1; - await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + item.goods_id + "/1", {}).then(res => { - if (res.data.code == 0) { - var r_data = res.data.data; - if (!r_data.promGoodsLists) { + var isok = 1,is_g_prom=0; + //因为有全场优惠活动,商品参加的活动还未开始 + var url="/api/weshop/activitylist/getGoodActInfo"; + var req_data={ + store_id:os.stoid,goodsidlist:item.goods_id,is_detail:1,user_id:user_id + }; + await getApp().request.promiseGet(url, {data:req_data}).then(async function (res) { + if(res.data.code==0 && res.data.data && res.data.data.length){ + for(let i in res.data.data){ + let item=res.data.data[i]; + if(item.prom_type==3) { + is_g_prom=1; break; + } + } + } + }) + + if(is_g_prom){ + await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + item.goods_id + "/1", {}).then(res => { + if (res.data.code == 0) { + var r_data = res.data.data; + if (!r_data.promGoodsLists) { + var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id; + getApp().request.delete(url, {}); + //商品已经无活动 + isok = 0; + }else{ + //如果活动的ID不一样,说明原先的活动已经没有参与了或者过期了 + if(item.prom_id!=r_data.promGoodsLists[0].prom_id ){ + var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id; + getApp().request.delete(url, {}); + //商品已经下架 + isok = 0; + } + } + + } else { var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id; getApp().request.delete(url, {}); - //商品已经无活动 + //商品已经下架 isok = 0; - }else{ - //如果活动的ID不一样,说明原先的活动已经没有参与了或者过期了 - if(item.prom_id!=r_data.promGoodsLists[0].prom_id ){ - var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id; - getApp().request.delete(url, {}); - //商品已经下架 - isok = 0; - } - } - - } else { - var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id; - getApp().request.delete(url, {}); - //商品已经下架 - isok = 0; - } - }) + } + }) + + }else{ + await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromNormal/" + os.stoid + "/" + item.goods_id, {}).then(res => { + if (res.data.code == 0) { + var r_data = res.data.data; + if (!r_data.promGoodsLists) { + var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id; + getApp().request.delete(url, {}); + //商品已经无活动 + isok = 0; + }else{ + //如果活动的ID不一样,说明原先的活动已经没有参与了或者过期了 + if(item.prom_id!=r_data.promGoodsLists[0].prom_id ){ + var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id; + getApp().request.delete(url, {}); + //商品已经下架 + isok = 0; + } + } + + } else { + var url = '/api/weshop/cart/del/' + oo.stoid + '/' + item.id; + getApp().request.delete(url, {}); + //商品已经下架 + isok = 0; + } + }) + + } + if (!isok) continue; } else if (item.prom_type == 7) { @@ -1424,7 +1471,7 @@ Page({ //----------------------更新购物数量,加减,调用接口--------------------- postCardList: function(t, item, pitem) { var e = this,th=e,user_id = getApp().globalData.user_id; - function normal_check() { + function normal_check(store_count,goodsinfo,wareIds) { //--- 看一下是不是线下库存 --- if(th.data.sales_rules==2 && goodsinfo.prom_type!=7){ th.check_down_line(t, pitem, item,wareIds); @@ -1444,10 +1491,6 @@ Page({ e.update_cart(t, pitem, item); } } - - - - // console.log('update'); // console.log('9995959595959',t); @@ -1579,7 +1622,7 @@ Page({ e.update_cart(t, pitem, item); }else{ - normal_check(); + normal_check(store_count,goodsinfo,wareIds); } } }) @@ -1645,7 +1688,7 @@ Page({ if (t.goods_num + promgoodsbuynum > gr_data.buy_limit && gr_data.buy_limit > 0) { wx.showModal({ title: '提示', - content: '购买数量超出秒杀限购' + content: '购买数量超出团购限购' }); var txt = "requestData[" + pitem + "].goods[" + item + "].goods_num"; e.setData({ @@ -1660,13 +1703,13 @@ Page({ e.update_cart(t, pitem, item); }else{ - normal_check(); + normal_check(store_count,goodsinfo,wareIds); } }) break; default: - normal_check() + normal_check(store_count,goodsinfo,wareIds); break } } @@ -1797,8 +1840,6 @@ Page({ }, - - //-------下拉刷新--------- onPullDownRefresh: function(t) { this.getCardList(); @@ -1813,7 +1854,6 @@ Page({ title:"计算中" }) } - var garr=this.data.requestData; var check_is_goods_selected=0; if(garr) { @@ -1843,9 +1883,10 @@ Page({ for (var j = 0; j < i_arr.length; j++) { if (i_arr[j].selected && i_arr[j].is_gift != 1) { - if (i_arr[j].is_pd_normal) { + if (i_arr[j].is_pd_normal || i_arr[j].prom_type==0 || i_arr[j].prom_type==3) { normal_arr[i_arr[j].goods_id] = 1; } + //map 的key是不会重复,会覆盖,, var ie = { goods_id: i_arr[j].goods_id, @@ -1950,6 +1991,7 @@ Page({ var promgoodsbuynum = 0; var goodsbuynum = 0; + //--要获得商品,该用户买了多少件,同步应用-- await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", { data: { @@ -1999,7 +2041,6 @@ Page({ return false; } } - if (num > val.redisnum && val.redisnum && !normal_arr[val.goods_id]) { isok = 0; gname = val.goods_name; diff --git a/pages/user/order_detail/order_detail.js b/pages/user/order_detail/order_detail.js index 48df9f5..aae5de6 100644 --- a/pages/user/order_detail/order_detail.js +++ b/pages/user/order_detail/order_detail.js @@ -370,7 +370,6 @@ Page({ th.toast(content); return false; } - //当是组合优惠的时候 if(good.prom_type==7){ //如果有组合购 @@ -439,30 +438,72 @@ Page({ //如果优惠促销和搭配购的时候 if((good.prom_type==3 || good.prom_type==5) && good.is_collocation!=1 && good.is_gift!=1){ - var p_ok=1; - await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid+"/"+good.goods_id+"/0", {}).then(res => { - if(res.data.code==0){ - var r_data=res.data.data; - if(!r_data.collocationPromList && good.prom_type==5){ - - var content=good.goods_name+'未找到活动,请取消订单重新购买'; - 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{ - - var content=good.goods_name+'未找到活动,请取消订单重新购买'; - th.toast(content); - p_ok=0; - } - }) - if(!p_ok) return false; + var p_ok = 1,is_g_prom=0; + //因为有全场优惠活动,商品参加的活动还未开始 + var url="/api/weshop/activitylist/getGoodActInfo"; + var req_data={ + store_id:os.stoid,goodsidlist:good.goods_id,is_detail:1,user_id:user_id + }; + await getApp().request.promiseGet(url, {data:req_data}).then(async function (res) { + if(res.data.code==0 && res.data.data && res.data.data.length){ + for(let i in res.data.data){ + let item=res.data.data[i]; + if(item.prom_type==3) { + is_g_prom=1; break; + } + } + } + }) + if(is_g_prom){ + await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + good.goods_id + "/0", {}).then(res => { + if (res.data.code == 0) { + var r_data = res.data.data; + if (!r_data.collocationPromList && good.prom_type == 5) { + + var content = good.goods_name + '未找到活动,请取消订单重新购买'; + 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 { + + var content = good.goods_name + '未找到活动,请取消订单重新购买' + th.toast(content); + p_ok = 0; + } + }) + }else{ + await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromNormal/" + os.stoid + "/" + good.goods_id, {}).then(res => { + if (res.data.code == 0) { + var r_data = res.data.data; + if (!r_data.collocationPromList && good.prom_type == 5) { + + var content = good.goods_name + '未找到活动,请取消订单重新购买'; + 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 { + + var content = good.goods_name + '未找到活动,请取消订单重新购买' + th.toast(content); + p_ok = 0; + } + }) + + } + if (!p_ok) return false; } //商品的普通购买 ,不要进行判断 @@ -1074,15 +1115,43 @@ Page({ //如果有优惠促销的时候,要看下商品的优惠活动有没有过期 if(g_item.prom_type==3 || good.prom_type==3){ - await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + good.goods_id + "/1", {}).then(res => { - if (res.data.code == 0) { - var r_data = res.data.data; - if (r_data.promGoodsLists) { - b_item.prom_type=3; - b_item.prom_id=r_data.promGoodsLists[0].prom_id; - } - } - }) + var is_g_prom=0; + //因为有全场优惠活动,商品参加的活动还未开始 + var url="/api/weshop/activitylist/getGoodActInfo"; + var req_data={ + store_id:os.stoid,goodsidlist:good.goods_id,is_detail:1,user_id:user_id + }; + await getApp().request.promiseGet(url, {data:req_data}).then(async function (res) { + if(res.data.code==0 && res.data.data && res.data.data.length){ + for(let i in res.data.data){ + let item=res.data.data[i]; + if(item.prom_type==3) { + is_g_prom=1; break; + } + } + } + }) + if(is_g_prom) { + await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + good.goods_id + "/1", {}).then(res => { + if (res.data.code == 0) { + var r_data = res.data.data; + if (r_data.promGoodsLists) { + b_item.prom_type = 3; + b_item.prom_id = r_data.promGoodsLists[0].prom_id; + } + } + }) + }else{ + await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromNormal/" + os.stoid + "/" + good.goods_id, {}).then(res => { + if (res.data.code == 0) { + var r_data = res.data.data; + if (r_data.promGoodsLists) { + b_item.prom_type = 3; + b_item.prom_id = r_data.promGoodsLists[0].prom_id; + } + } + }) + } } diff --git a/pages/user/order_list/order_list.js b/pages/user/order_list/order_list.js index b095238..8e3c85d 100644 --- a/pages/user/order_list/order_list.js +++ b/pages/user/order_list/order_list.js @@ -620,34 +620,73 @@ Page({ } } - - //如果优惠促销和搭配购的时候 if ((good.prom_type == 3 || good.prom_type == 5) && good.is_gift != 1 && good.is_collocation != 1) { - var p_ok = 1; - await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + good.goods_id + "/0", {}).then(res => { - if (res.data.code == 0) { - var r_data = res.data.data; - if (!r_data.collocationPromList && good.prom_type == 5) { + var p_ok = 1,is_g_prom=0; + //因为有全场优惠活动,商品参加的活动还未开始 + var url="/api/weshop/activitylist/getGoodActInfo"; + var req_data={ + store_id:os.stoid,goodsidlist:good.goods_id,is_detail:1,user_id:user_id + }; + await getApp().request.promiseGet(url, {data:req_data}).then(async function (res) { + if(res.data.code==0 && res.data.data && res.data.data.length){ + for(let i in res.data.data){ + let item=res.data.data[i]; + if(item.prom_type==3) { + is_g_prom=1; break; + } + } + } + }) + if(is_g_prom){ + await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + good.goods_id + "/0", {}).then(res => { + if (res.data.code == 0) { + var r_data = res.data.data; + if (!r_data.collocationPromList && good.prom_type == 5) { + + var content = good.goods_name + '未找到活动,请取消订单重新购买'; + th.toast(content) + p_ok = 0; + } + if (!r_data.promGoodsLists && good.prom_type == 3) { - var content = good.goods_name + '未找到活动,请取消订单重新购买'; - th.toast(content) + var content = good.goods_name + '未找到活动,请取消订单重新购买'; + th.toast(content); + p_ok = 0; + } + } else { + var content = good.goods_name + '未找到活动,请取消订单重新购买' + th.toast(content); p_ok = 0; } - if (!r_data.promGoodsLists && good.prom_type == 3) { + }) + }else{ + await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromNormal/" + os.stoid + "/" + good.goods_id, {}).then(res => { + if (res.data.code == 0) { + var r_data = res.data.data; + if (!r_data.collocationPromList && good.prom_type == 5) { + + var content = good.goods_name + '未找到活动,请取消订单重新购买'; + th.toast(content) + + p_ok = 0; + } + if (!r_data.promGoodsLists && good.prom_type == 3) { - var content = good.goods_name + '未找到活动,请取消订单重新购买'; + var content = good.goods_name + '未找到活动,请取消订单重新购买'; + th.toast(content); + p_ok = 0; + } + } else { + + var content = good.goods_name + '未找到活动,请取消订单重新购买' th.toast(content); p_ok = 0; } - } else { + }) - var content = good.goods_name + '未找到活动,请取消订单重新购买' - th.toast(content); - p_ok = 0; - } - }) + } if (!p_ok) return false; } @@ -1244,15 +1283,44 @@ Page({ //如果有优惠促销的时候,要看下商品的优惠活动有没有过期 if(g_item.prom_type==3 || good.prom_type==3){ - await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + good.goods_id + "/1", {}).then(res => { - if (res.data.code == 0) { - var r_data = res.data.data; - if (r_data.promGoodsLists) { - b_item.prom_type=3; - b_item.prom_id=r_data.promGoodsLists[0].prom_id; + var is_g_prom=0; + //因为有全场优惠活动,商品参加的活动还未开始 + var url="/api/weshop/activitylist/getGoodActInfo"; + var req_data={ + store_id:os.stoid,goodsidlist:good.goods_id,is_detail:1,user_id:user_id + }; + await getApp().request.promiseGet(url, {data:req_data}).then(async function (res) { + if(res.data.code==0 && res.data.data && res.data.data.length){ + for(let i in res.data.data){ + let item=res.data.data[i]; + if(item.prom_type==3) { + is_g_prom=1; break; + } + } } + }) + if(is_g_prom) { + await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + good.goods_id + "/1", {}).then(res => { + if (res.data.code == 0) { + var r_data = res.data.data; + if (r_data.promGoodsLists) { + b_item.prom_type = 3; + b_item.prom_id = r_data.promGoodsLists[0].prom_id; + } + } + }) + }else{ + await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromNormal/" + os.stoid + "/" + good.goods_id, {}).then(res => { + if (res.data.code == 0) { + var r_data = res.data.data; + if (r_data.promGoodsLists) { + b_item.prom_type = 3; + b_item.prom_id = r_data.promGoodsLists[0].prom_id; + } + } + }) } - }) + }