Commit b75d2157449c895e031ce185782aecdfc7371ec8
1 parent
58fb3145
购物车要达到优惠促销的条件,才来判断商品是不是要判断限购
Showing
1 changed file
with
82 additions
and
5 deletions
pages/cart/cart/cart.js
@@ -3235,6 +3235,8 @@ Page({ | @@ -3235,6 +3235,8 @@ Page({ | ||
3235 | 3235 | ||
3236 | var i_arr = this.data.requestData[i].goods; | 3236 | var i_arr = this.data.requestData[i].goods; |
3237 | 3237 | ||
3238 | + //判断一下商品能不能满足优惠促销的条件 | ||
3239 | + await th.check_can_yh_pro(i_arr); | ||
3238 | 3240 | ||
3239 | for (var j = 0; j < i_arr.length; j++) { | 3241 | for (var j = 0; j < i_arr.length; j++) { |
3240 | if (i_arr[j].selected && i_arr[j].is_gift != 1) { | 3242 | if (i_arr[j].selected && i_arr[j].is_gift != 1) { |
@@ -3255,7 +3257,6 @@ Page({ | @@ -3255,7 +3257,6 @@ Page({ | ||
3255 | if (this.data.requestData[i].show_can_cx && (i_arr[j].prom_type == 3 || i_arr[j].prom_type == 7)) { | 3257 | if (this.data.requestData[i].show_can_cx && (i_arr[j].prom_type == 3 || i_arr[j].prom_type == 7)) { |
3256 | 3258 | ||
3257 | var show_can_cx=this.data.requestData[i].show_can_cx; | 3259 | var show_can_cx=this.data.requestData[i].show_can_cx; |
3258 | - | ||
3259 | //-- 查找选中了什么 -- | 3260 | //-- 查找选中了什么 -- |
3260 | for (var ik in show_can_cx) { | 3261 | for (var ik in show_can_cx) { |
3261 | var ch_map = show_can_cx[ik].ch_map; | 3262 | var ch_map = show_can_cx[ik].ch_map; |
@@ -3279,8 +3280,9 @@ Page({ | @@ -3279,8 +3280,9 @@ Page({ | ||
3279 | if(yh_by_map[ky]){ | 3280 | if(yh_by_map[ky]){ |
3280 | ky_n+=yh_by_map[ky]; | 3281 | ky_n+=yh_by_map[ky]; |
3281 | } | 3282 | } |
3282 | - //-- 判断优惠促销活动的商品的限购 -- | ||
3283 | - if(i_arr[j].prom_type==3 && fd1.act.goodslimit>0){ | 3283 | + |
3284 | + //-- 判断优惠促销活动的商品的限购,can_yh 表示商品满足优惠促销的条件 -- | ||
3285 | + if(i_arr[j].prom_type==3 && fd1.act.goodslimit>0 && i_arr[j].can_yh ){ | ||
3284 | var p_can_by=fd1.act.goodslimit-fd1.act.goodslimited; | 3286 | var p_can_by=fd1.act.goodslimit-fd1.act.goodslimited; |
3285 | if(i_arr[j].goods_num+ky_n>p_can_by){ | 3287 | if(i_arr[j].goods_num+ky_n>p_can_by){ |
3286 | getApp().confirmBox(i_arr[j].goods_name + "超出活动限购数量"+fd1.act.goodslimit+"件"); | 3288 | getApp().confirmBox(i_arr[j].goods_name + "超出活动限购数量"+fd1.act.goodslimit+"件"); |
@@ -3989,6 +3991,7 @@ Page({ | @@ -3989,6 +3991,7 @@ Page({ | ||
3989 | 3991 | ||
3990 | 3992 | ||
3991 | }, | 3993 | }, |
3994 | + | ||
3992 | //跳到首页 | 3995 | //跳到首页 |
3993 | goto: function (e) { | 3996 | goto: function (e) { |
3994 | var url = '/pages/index/index/index'; | 3997 | var url = '/pages/index/index/index'; |
@@ -4321,6 +4324,7 @@ Page({ | @@ -4321,6 +4324,7 @@ Page({ | ||
4321 | } | 4324 | } |
4322 | 4325 | ||
4323 | }, | 4326 | }, |
4327 | + | ||
4324 | //优惠促销用户参与次数 | 4328 | //优惠促销用户参与次数 |
4325 | async getUserBuyPromNum_pre(prom_id) { | 4329 | async getUserBuyPromNum_pre(prom_id) { |
4326 | var userInfo = getApp().globalData.userInfo; | 4330 | var userInfo = getApp().globalData.userInfo; |
@@ -4765,8 +4769,6 @@ Page({ | @@ -4765,8 +4769,6 @@ Page({ | ||
4765 | }); | 4769 | }); |
4766 | }, | 4770 | }, |
4767 | 4771 | ||
4768 | - | ||
4769 | - | ||
4770 | //-- 开始显示活动的弹出 -- | 4772 | //-- 开始显示活动的弹出 -- |
4771 | switch_cx_group: function (e) { | 4773 | switch_cx_group: function (e) { |
4772 | var idx = e.currentTarget.dataset.index; | 4774 | var idx = e.currentTarget.dataset.index; |
@@ -5002,6 +5004,81 @@ Page({ | @@ -5002,6 +5004,81 @@ Page({ | ||
5002 | 'code': 0, | 5004 | 'code': 0, |
5003 | 'msg': '成功' | 5005 | 'msg': '成功' |
5004 | }) | 5006 | }) |
5007 | + }, | ||
5008 | + | ||
5009 | + //-- 判断一下有没有满足优惠促销的条件 -- | ||
5010 | + check_can_yh_pro:async function (i_arr){ | ||
5011 | + var map={}; | ||
5012 | + for (let i = 0; i < i_arr.length; i++) { | ||
5013 | + var item=i_arr[i]; | ||
5014 | + if(item.is_gift) continue; | ||
5015 | + if(item.prom_type!=3) continue; | ||
5016 | + | ||
5017 | + if (map[item.prom_id]) { | ||
5018 | + var ob = map[item.prom_id]; | ||
5019 | + //-- 避免同一件商品重复添加 -- | ||
5020 | + if (ob.goods && ob.goods.length) { | ||
5021 | + var fid = ob.goods.findIndex(function (e) { | ||
5022 | + e.goods_id == item.goods_id | ||
5023 | + }) | ||
5024 | + if (fid > -1) continue; | ||
5025 | + } | ||
5026 | + ob.price += item.goods_price * item.goods_num; | ||
5027 | + ob.goods_num += item.goods_num; | ||
5028 | + ob.goods.push({ goods_id: item.goods_id, goods_price: item.goods_price, goods_num: item.goods_num }); | ||
5029 | + } else { | ||
5030 | + var prom = null; | ||
5031 | + await getApp().request.promiseGet("/api/weshop/promgoods/get/" + os.stoid + "/" + item.prom_id, {}).then(res => { | ||
5032 | + if (res.data.code == 0) { | ||
5033 | + prom = res.data.data; | ||
5034 | + } | ||
5035 | + }) | ||
5036 | + | ||
5037 | + var ob = {}; | ||
5038 | + ob.is_bz = prom.is_bz; | ||
5039 | + ob.prom_id=item.prom_id; | ||
5040 | + ob.price = item.goods_price * item.goods_num; | ||
5041 | + ob.goods_num = item.goods_num; | ||
5042 | + ob.goods = new Array(); | ||
5043 | + ob.goods.push({ goods_id: item.goods_id, goods_price: item.goods_price, goods_num: item.goods_num }); | ||
5044 | + map[item.prom_id] = ob; | ||
5045 | + } | ||
5046 | + } | ||
5047 | + | ||
5048 | + var res=null; | ||
5049 | + for (const mapKey in map) { | ||
5050 | + var item_map=map[mapKey]; | ||
5051 | + //开始判断能不能参与优惠 | ||
5052 | + res=await getApp().request.promiseGet("/api/weshop/goods/getDiscount", { | ||
5053 | + data: { | ||
5054 | + price: parseFloat(item_map.price).toFixed(2), prom_id: item_map.prom_id, | ||
5055 | + goods_num: item_map.goods_num, user_id: getApp().globalData.user_id, | ||
5056 | + is_bz: item_map.is_bz | ||
5057 | + } | ||
5058 | + }) | ||
5059 | + if (res.data.code == 0 && res.data.data.condition) { | ||
5060 | + | ||
5061 | + for (let i = 0; i < i_arr.length; i++) { | ||
5062 | + var item_g = i_arr[i]; | ||
5063 | + if (item_g.is_gift) continue; | ||
5064 | + | ||
5065 | + //-- 避免同一件商品重复添加 -- | ||
5066 | + if (item_map.goods && item_map.goods.length) { | ||
5067 | + var fid = item_map.goods.findIndex(function (e) { | ||
5068 | + e.goods_id == item_g.goods_id | ||
5069 | + }) | ||
5070 | + if (fid > -1) continue; | ||
5071 | + } | ||
5072 | + //判断商品是可以参与优惠促销的 | ||
5073 | + i_arr[i].can_yh=1; | ||
5074 | + } | ||
5075 | + | ||
5076 | + } | ||
5077 | + | ||
5078 | + } | ||
5079 | + | ||
5080 | + | ||
5081 | + | ||
5005 | } | 5082 | } |
5006 | 5083 | ||
5007 | 5084 |