Commit 5b4a9bc70784de63c6fc26b8d4dabdb1ce8f329d
1 parent
5ed41758
不参与活动的优化
Showing
3 changed files
with
71 additions
and
6 deletions
packageE/pages/cart/cart2/cart2.js
... | ... | @@ -934,11 +934,11 @@ Page({ |
934 | 934 | } |
935 | 935 | } |
936 | 936 | } |
937 | - | |
938 | 937 | } |
938 | + | |
939 | 939 | //按门店分类的数组 |
940 | 940 | var arr = new Array(); |
941 | - | |
941 | + | |
942 | 942 | var th=this; |
943 | 943 | th.data.in_zhact_gdmap = {}; |
944 | 944 | //---是不是购买等级卡成功的返回---等级卡显示的判断--- |
... | ... | @@ -8342,8 +8342,69 @@ Page({ |
8342 | 8342 | }, |
8343 | 8343 | |
8344 | 8344 | //--- 不参与优惠促销的开关 --- |
8345 | - no_cj_prom:function (e){ | |
8346 | - let can_cx_idx=e.currentTarget.dataset.can_cx_idx; | |
8345 | + no_cj_prom: function (e) { | |
8346 | + | |
8347 | + let th=this; | |
8348 | + let can_cx_idx = e.currentTarget.dataset.can_cx_idx; //多促销的索引 | |
8349 | + let pidx = e.currentTarget.dataset.pidx; //订单索引 | |
8350 | + let item = this.data.cartlist[pidx].show_can_cx[can_cx_idx]; //促销内容 | |
8351 | + let pk=this.data.cartlist[pidx].pickup_id; //门店ID | |
8352 | + | |
8353 | + //给no_cj_prom进行赋值 | |
8354 | + item.no_cj_prom = !item.no_cj_prom ? 1 : 0; | |
8355 | + var txt = 'cartlist[' + pidx + '].show_can_cx'; | |
8356 | + this.setData({ | |
8357 | + [txt]: this.data.cartlist[pidx].show_can_cx, | |
8358 | + }) | |
8359 | + | |
8360 | + let ck_prom_type=item.cur_act; | |
8361 | + //处理一下商品 | |
8362 | + let goods0 = JSON.parse(JSON.stringify(th.data.cartlist_y)); | |
8363 | + let goods = []; | |
8364 | + for (var ik = 0; ik < goods0.length; ik++) { | |
8365 | + var item_c = goods0[ik]; | |
8366 | + if (item_c.pick_id == pk && item_c.is_collocation) continue; | |
8367 | + goods.push(item_c); | |
8368 | + } | |
8369 | + | |
8370 | + //-- 此时要把购物车中的商品确定活动 -- | |
8371 | + for (var b = 0; b < ck_prom_type.goods.length; b++) { | |
8372 | + //-- 开始查找 -- | |
8373 | + var fg = goods.findIndex(function (g_item) { | |
8374 | + return g_item.goods_id == ck_prom_type.goods[b].goods_id | |
8375 | + && [0, 3, 5, 7, 10].indexOf(g_item.prom_type) > -1 | |
8376 | + && g_item.pick_id == pk && g_item.is_gift == 0; | |
8377 | + }) | |
8378 | + if (fg > -1) { | |
8379 | + goods[fg].prom_type = ck_prom_type.prom_type; | |
8380 | + goods[fg].prom_id = ck_prom_type.prom_id; | |
8381 | + | |
8382 | + //如果是不参与的话,商品的活动状态要清理 | |
8383 | + if(item.no_cj_prom){ | |
8384 | + goods[fg].prom_type=0; | |
8385 | + goods[fg].prom_id=0; | |
8386 | + } | |
8387 | + | |
8388 | + for (var ik = 0; ik < th.data.cartlist[pidx].goods.length; ik++) { | |
8389 | + if (th.data.cartlist[pidx].goods[ik].id == goods[fg].id) { | |
8390 | + th.data.cartlist[pidx].goods[ik].prom_type = goods[fg].prom_type; | |
8391 | + th.data.cartlist[pidx].goods[ik].prom_id = goods[fg].prom_id; | |
8392 | + } | |
8393 | + } | |
8394 | + } | |
8395 | + } | |
8396 | + | |
8397 | + //原始数据要有深拷贝不能有地址的牵连 | |
8398 | + th.data.cartlist_y = JSON.parse(JSON.stringify(goods)) | |
8399 | + | |
8400 | + | |
8401 | + //重新调用cart_next,进行下一步计算 | |
8402 | + wx.showLoading({ | |
8403 | + title: "处理中.", | |
8404 | + }) | |
8405 | + this.get_cart_next(null, 1, {prom_type: 0, prom_id: 0}); | |
8406 | + | |
8407 | + | |
8347 | 8408 | } |
8348 | 8409 | |
8349 | 8410 | ... | ... |
packageE/pages/cart/cart2/cart2.wxml
... | ... | @@ -171,7 +171,7 @@ |
171 | 171 | </block> |
172 | 172 | </block> |
173 | 173 | |
174 | - <view class="set-mes" wx:if="{{items.prom_type==3 || items.cj_prom_type==3}}"> | |
174 | + <view class="set-mes" wx:if="{{items.prom_type==3 || (items.prom_type==0 && item.show_can_cx[items.goods_id].no_cj_prom) }}"> | |
175 | 175 | <view class="use-item" data-pidx="{{pidx}}" data-can_cx_idx="{{items.goods_id}}" bindtap='no_cj_prom'> |
176 | 176 | <icon color="{{!item.show_can_cx[items.goods_id].no_cj_prom?'red':'gray'}}" size="16" type="success"></icon> |
177 | 177 | <view class="yu_er">参与优惠活动</view> |
... | ... | @@ -231,7 +231,7 @@ |
231 | 231 | </view> |
232 | 232 | </block> |
233 | 233 | |
234 | - <view class="set-mes" wx:if="{{(items.prom_type==3 || items.cj_prom_type==3) && util.check_is_last(index,items.goods_id) && pitem.is_duo_gd }}"> | |
234 | + <view class="set-mes" wx:if="{{pitem.is_duo_gd && (items.prom_type==3 || items.cj_prom_type==3) && util.check_is_last(index,items.goods_id) }}"> | |
235 | 235 | <view class="use-item" data-pidx="{{pidx}}" data-can_cx_idx="{{index}}" bindtap='no_cj_prom'> |
236 | 236 | <icon color="{{!item.show_can_cx[items.goods_id].no_cj_prom?'red':'gray'}}" size="16" type="success"></icon> |
237 | 237 | <view class="yu_er">参与优惠活动</view> | ... | ... |
packageE/pages/cart/cart2/filter.wxs