Commit dbe8c91e152a8af7177e357f26e10acbe78d4609
1 parent
51b91a71
多促销优化
Showing
6 changed files
with
213 additions
and
86 deletions
packageE/pages/cart/cart2/cart2.js
@@ -126,7 +126,14 @@ Page({ | @@ -126,7 +126,14 @@ Page({ | ||
126 | tabs: ['门店自提', '快递邮寄'], | 126 | tabs: ['门店自提', '快递邮寄'], |
127 | currentTabIndex: 1, | 127 | currentTabIndex: 1, |
128 | 128 | ||
129 | - in_zhact_gdmap: {}, //不同门店参与同一活动的限购 | 129 | + in_zhact_gdmap: {}, //不同门店参与同一活动的限购,这些都是map表,很 |
130 | + in_zhact:{}, //组合购活动在列表中的显示 | ||
131 | + in_yhact:{}, //优惠活动在列表中的显示 | ||
132 | + | ||
133 | + in_zhact_gdmap_new: {}, //不同门店参与同一活动的限购,这些都是map表,是多促销互动专用,不能和in_zhact_gdmap重叠 | ||
134 | + in_zhact_new:{}, //组合购活动在列表中的显示 是多促销互动专用,不能和in_zhact重叠 | ||
135 | + in_yhact_new:{}, //组合购活动在列表中的显示 是多促销互动专用,不能和in_yhact重叠 | ||
136 | + | ||
130 | hid_inp: 1, | 137 | hid_inp: 1, |
131 | user_note: "", | 138 | user_note: "", |
132 | zhhe_act_map: {}, //组合活动的map表 | 139 | zhhe_act_map: {}, //组合活动的map表 |
@@ -7197,6 +7204,9 @@ Page({ | @@ -7197,6 +7204,9 @@ Page({ | ||
7197 | fd.goods.push(c_item); | 7204 | fd.goods.push(c_item); |
7198 | }else{ | 7205 | }else{ |
7199 | var p_item={key:key,prom_type:n_item.prom_type,prom_id:n_item.prom_id,goods:[],act:n_item}; | 7206 | var p_item={key:key,prom_type:n_item.prom_type,prom_id:n_item.prom_id,goods:[],act:n_item}; |
7207 | + if(n_item.prom_type==7){ | ||
7208 | + p_item.zh_act=n_item.zh_pro; | ||
7209 | + } | ||
7200 | p_item.goods.push(c_item); | 7210 | p_item.goods.push(c_item); |
7201 | cx_act_map.push(p_item); | 7211 | cx_act_map.push(p_item); |
7202 | } | 7212 | } |
packageE/pages/cart/cart2/zh_calculate.js
@@ -58,13 +58,12 @@ module.exports = { | @@ -58,13 +58,12 @@ module.exports = { | ||
58 | var zh_b_num = item_j.promgoodsbuynum; | 58 | var zh_b_num = item_j.promgoodsbuynum; |
59 | if (item.buyqty > 0) { | 59 | if (item.buyqty > 0) { |
60 | 60 | ||
61 | - var key = item.goods_id + "" + act.id; | 61 | + var key = item.goods_id + "." + act.id; |
62 | var cbuy = item.buyqty - zh_b_num; | 62 | var cbuy = item.buyqty - zh_b_num; |
63 | if (th.data.in_zhact_gdmap[key]) { | 63 | if (th.data.in_zhact_gdmap[key]) { |
64 | var cbuy = item.buyqty - zh_b_num - th.data.in_zhact_gdmap[key]; | 64 | var cbuy = item.buyqty - zh_b_num - th.data.in_zhact_gdmap[key]; |
65 | } | 65 | } |
66 | 66 | ||
67 | - | ||
68 | //当可买的数量为0 | 67 | //当可买的数量为0 |
69 | if (cbuy <= 0) { | 68 | if (cbuy <= 0) { |
70 | item.num = 0; | 69 | item.num = 0; |
@@ -129,7 +128,7 @@ module.exports = { | @@ -129,7 +128,7 @@ module.exports = { | ||
129 | for (var u in act_goos) { | 128 | for (var u in act_goos) { |
130 | var ite = act_goos[u]; | 129 | var ite = act_goos[u]; |
131 | if (ite.buyqty > 0 && ite.num > 0) { | 130 | if (ite.buyqty > 0 && ite.num > 0) { |
132 | - var key = ite.goods_id + "" + act.id; | 131 | + var key = ite.goods_id + "." + act.id; |
133 | if (th.data.in_zhact_gdmap[key]) { | 132 | if (th.data.in_zhact_gdmap[key]) { |
134 | th.data.in_zhact_gdmap[key] += ite.num; | 133 | th.data.in_zhact_gdmap[key] += ite.num; |
135 | } else { | 134 | } else { |
@@ -156,7 +155,7 @@ module.exports = { | @@ -156,7 +155,7 @@ module.exports = { | ||
156 | var delete_num=0; | 155 | var delete_num=0; |
157 | 156 | ||
158 | //看一下是几倍 | 157 | //看一下是几倍 |
159 | - let be = parseInt(no_in_arr.length / act.zhbuyqty); | 158 | + let be1 = parseInt(no_in_arr.length / act.zhbuyqty); |
160 | //如果有总数控制的时候 | 159 | //如果有总数控制的时候 |
161 | if(act.zh_num){ | 160 | if(act.zh_num){ |
162 | var be1=act.zh_num-act.zh_buy_num-1; | 161 | var be1=act.zh_num-act.zh_buy_num-1; |
@@ -165,7 +164,7 @@ module.exports = { | @@ -165,7 +164,7 @@ module.exports = { | ||
165 | 164 | ||
166 | if(be) { | 165 | if(be) { |
167 | if (act.is_bzyh && zhqty_bz.length > 0) { | 166 | if (act.is_bzyh && zhqty_bz.length > 0) { |
168 | - if (zhqty_bz.length > 1) { | 167 | + |
169 | let zhqty_bz_arr = []; | 168 | let zhqty_bz_arr = []; |
170 | let zhqty_bz_flag = this.zhqty_bz_fun(zhqty_bz, be, zhqty_bz_arr); | 169 | let zhqty_bz_flag = this.zhqty_bz_fun(zhqty_bz, be, zhqty_bz_arr); |
171 | if (zhqty_bz_flag) { | 170 | if (zhqty_bz_flag) { |
@@ -184,28 +183,12 @@ module.exports = { | @@ -184,28 +183,12 @@ module.exports = { | ||
184 | } else { | 183 | } else { |
185 | zhqty_len = 1; | 184 | zhqty_len = 1; |
186 | let min_bz_num = Math.min.apply(Math, zhqty_bz_arr.map(function (o) { | 185 | let min_bz_num = Math.min.apply(Math, zhqty_bz_arr.map(function (o) { |
187 | - return o['num']; | 186 | + return o['be']; |
188 | })); | 187 | })); |
189 | let new_arr = zhqty_bz_arr.filter(ii => { | 188 | let new_arr = zhqty_bz_arr.filter(ii => { |
190 | - return ii['num'] == min_bz_num; | 189 | + return ii['be'] == min_bz_num; |
191 | }) | 190 | }) |
192 | - var vv = new_arr[0]; | ||
193 | - var bz_num = be * new_arr[0].zhqty; //超量倍增 | ||
194 | - var num = min_bz_num - new_arr[0].zhqty; //购买数量减去超量 | ||
195 | - bz_num_ok = bz_num - num; | ||
196 | - if (bz_num_ok <= 0) { | ||
197 | - //超量倍增满足,超量倍增就等于倍数 | ||
198 | - bz_num_ok = bz_num; | ||
199 | - } else { | ||
200 | - //超量倍增不满足,倍数要减去多出得 | ||
201 | - // be=be-bz_num_ok; | ||
202 | - if (num % vv.zhqty == 0) { | ||
203 | - be = num / vv.zhqty; | ||
204 | - } else { | ||
205 | - be = Math.floor(num / vv.zhqty) | ||
206 | - } | ||
207 | - bz_num_ok = be * vv.zhqty; | ||
208 | - } | 191 | + var be = new_arr[0].be; |
209 | 192 | ||
210 | for (let i = 0; i < zhqty_bz.length; i++) { | 193 | for (let i = 0; i < zhqty_bz.length; i++) { |
211 | let item1 = zhqty_bz[i]; | 194 | let item1 = zhqty_bz[i]; |
@@ -221,42 +204,11 @@ module.exports = { | @@ -221,42 +204,11 @@ module.exports = { | ||
221 | } | 204 | } |
222 | aprice += be * aprice; | 205 | aprice += be * aprice; |
223 | } | 206 | } |
224 | - } else { | ||
225 | - var vv = zhqty_bz[0]; | ||
226 | - var bz_num = be * vv.zhqty; //超量倍增 | ||
227 | - var num = vv['num'] - vv.zhqty; //购买数量减去超量 | ||
228 | - if (num > 0) { | ||
229 | - bz_num_ok = bz_num - num; | ||
230 | - if (bz_num_ok <= 0) { | ||
231 | - //超量倍增满足,超量倍增就等于倍数 | ||
232 | - bz_num_ok = bz_num; | ||
233 | - } else { | ||
234 | - //超量倍增不满足,倍数要减去多出得 | ||
235 | - // be=be-bz_num_ok; | ||
236 | - if (num % vv.zhqty == 0) { | ||
237 | - be = num / vv.zhqty; | ||
238 | - } else { | ||
239 | - be = Math.floor(num / vv.zhqty) | ||
240 | - } | ||
241 | - bz_num_ok = be * vv.zhqty; | ||
242 | - } | ||
243 | - for (let j = 0; j < bz_num_ok; j++) { | ||
244 | - let index = no_in_arr.findIndex(i => { | ||
245 | - return vv.goods_id === i.goods_id | ||
246 | - }) | ||
247 | - if (index > -1) { | ||
248 | - delete_num++ | ||
249 | - no_in_arr.splice(index, 1) | ||
250 | - } | ||
251 | - } | ||
252 | - } else { | ||
253 | - zhqty_len = 1; | ||
254 | - } | ||
255 | - } | 207 | + |
256 | } | 208 | } |
257 | if (!zhqty_len) { | 209 | if (!zhqty_len) { |
258 | - aprice += be * act.zhprice; | ||
259 | - let pop_num = be * act.zhbuyqty - delete_num; | 210 | + aprice += be1 * act.zhprice; |
211 | + let pop_num = be1 * act.zhbuyqty - delete_num; | ||
260 | for (var m = 0; m < pop_num; m++) { | 212 | for (var m = 0; m < pop_num; m++) { |
261 | no_in_arr.pop(); | 213 | no_in_arr.pop(); |
262 | } | 214 | } |
@@ -538,6 +490,15 @@ module.exports = { | @@ -538,6 +490,15 @@ module.exports = { | ||
538 | let num = item['num'] - item['zhqty']; //购买数量减去超量 | 490 | let num = item['num'] - item['zhqty']; //购买数量减去超量 |
539 | if (bz_num > num) { | 491 | if (bz_num > num) { |
540 | zhqty_bz_flag=false; | 492 | zhqty_bz_flag=false; |
493 | + | ||
494 | + var be=0; | ||
495 | + if (num % vv.zhqty == 0) { | ||
496 | + be = num / vv.zhqty; | ||
497 | + } else { | ||
498 | + be = Math.floor(num / vv.zhqty) | ||
499 | + } | ||
500 | + item.be=item; | ||
501 | + | ||
541 | zhqty_bz_arr.push(item); | 502 | zhqty_bz_arr.push(item); |
542 | // zhqty_bz.splice(i,1) | 503 | // zhqty_bz.splice(i,1) |
543 | } | 504 | } |
@@ -560,6 +521,27 @@ module.exports = { | @@ -560,6 +521,27 @@ module.exports = { | ||
560 | var goods =gdlist; | 521 | var goods =gdlist; |
561 | var all_num=0; | 522 | var all_num=0; |
562 | var need_to_buy=0; | 523 | var need_to_buy=0; |
524 | + var all_zhqty=0; | ||
525 | + //-- 是综合考虑到组合购的总数量和限购数量 -- | ||
526 | + var min_can_buy=-1; | ||
527 | + var aid=act.id; | ||
528 | + | ||
529 | + let no_in_arr = []; //剩余的未加入组合购 | ||
530 | + let out_arr = []; //超出活动限购的商品放入 | ||
531 | + | ||
532 | + //-- 判断组合购的数量是不是到了 -- | ||
533 | + if(act.zh_num>0){ | ||
534 | + if(th.data.in_zhact_new[aid] && th.data.in_zhact_new[aid]+act.zh_buy_num>=act.zh_num ){ | ||
535 | + return false; | ||
536 | + }else{ | ||
537 | + min_can_buy= act.zh_num-act.zh_buy_num-th.data.in_zhact_new[aid]; | ||
538 | + } | ||
539 | + } | ||
540 | + if(act.buy_limit>0){ | ||
541 | + | ||
542 | + } | ||
543 | + | ||
544 | + | ||
563 | for (var i in goods) { | 545 | for (var i in goods) { |
564 | var item = goods[i]; | 546 | var item = goods[i]; |
565 | var cart_num = get_num(item).goods_num; | 547 | var cart_num = get_num(item).goods_num; |
@@ -575,17 +557,25 @@ module.exports = { | @@ -575,17 +557,25 @@ module.exports = { | ||
575 | //-- 当商品有购买的时候,以及有限购的时候 -- | 557 | //-- 当商品有购买的时候,以及有限购的时候 -- |
576 | if (item.buyqty > 0) { | 558 | if (item.buyqty > 0) { |
577 | var cbuy = item.buyqty - zh_b_num; | 559 | var cbuy = item.buyqty - zh_b_num; |
578 | - var key = item.goods_id + "" + act.id; | ||
579 | - if (th.data.in_zhact_gdmap_gp[key]) { | ||
580 | - var cbuy = item.buyqty - zh_b_num - th.data.in_zhact_gdmap_gp[key]; | 560 | + var key = item.goods_id + "." + act.id; |
561 | + if (th.data.in_zhact_gdmap[key]) { | ||
562 | + var cbuy = item.buyqty - zh_b_num - th.data.in_zhact_gdmap_new[key]; | ||
581 | } | 563 | } |
582 | //当可买的数量为0 | 564 | //当可买的数量为0 |
583 | if (cbuy <= 0) { | 565 | if (cbuy <= 0) { |
584 | item.num = 0; | 566 | item.num = 0; |
567 | + out_arr.push({ | ||
568 | + goods_id: item.goods_id, | ||
569 | + num: cart_num | ||
570 | + }) | ||
585 | } else { | 571 | } else { |
586 | if (cbuy >= cart_num) item.num = cart_num; | 572 | if (cbuy >= cart_num) item.num = cart_num; |
587 | else { | 573 | else { |
588 | item.num = cbuy; | 574 | item.num = cbuy; |
575 | + out_arr.push({ | ||
576 | + goods_id: item.goods_id, | ||
577 | + num: cart_num - cbuy | ||
578 | + }) | ||
589 | } | 579 | } |
590 | } | 580 | } |
591 | } else { | 581 | } else { |
@@ -596,9 +586,24 @@ module.exports = { | @@ -596,9 +586,24 @@ module.exports = { | ||
596 | all_num += item.num; | 586 | all_num += item.num; |
597 | //当有起购数的控制的时候 | 587 | //当有起购数的控制的时候 |
598 | if (item.zhqty) { | 588 | if (item.zhqty) { |
589 | + all_zhqty += item.zhqty; | ||
599 | if (item.num < item.zhqty) { | 590 | if (item.num < item.zhqty) { |
600 | need_to_buy += item.zhqty - item.num; | 591 | need_to_buy += item.zhqty - item.num; |
601 | } | 592 | } |
593 | + if (item.num > item.zhqty) { | ||
594 | + for (let i = 0; i < item.num - item.zhqty; i++) { | ||
595 | + no_in_arr.push({ | ||
596 | + goods_id: item.goods_id, | ||
597 | + }) | ||
598 | + } | ||
599 | + } | ||
600 | + } | ||
601 | + else { | ||
602 | + for (let j = 0; j < item.num; j++) { | ||
603 | + no_in_arr.push({ | ||
604 | + goods_id: item.goods_id, | ||
605 | + }) | ||
606 | + } | ||
602 | } | 607 | } |
603 | } else { | 608 | } else { |
604 | if (item.zhqty) { | 609 | if (item.zhqty) { |
@@ -609,16 +614,126 @@ module.exports = { | @@ -609,16 +614,126 @@ module.exports = { | ||
609 | 614 | ||
610 | //当满足组合的要求:总数要满足,起购数要满足 | 615 | //当满足组合的要求:总数要满足,起购数要满足 |
611 | if (all_num >= act.zhbuyqty && !need_to_buy) { | 616 | if (all_num >= act.zhbuyqty && !need_to_buy) { |
617 | + function sortData(a, b) { | ||
618 | + return a.price - b.price | ||
619 | + } | ||
620 | + if (no_in_arr.length > 0) no_in_arr.sort(sortData); | ||
621 | + if (act.zhbuyqty > all_zhqty) { | ||
622 | + for (let n = 0; n < act.zhbuyqty - all_zhqty; n++) { | ||
623 | + no_in_arr.pop(); | ||
624 | + } | ||
625 | + } | ||
626 | + | ||
627 | + //看一下剩下的数量有没有满足组合购的要求,以及要不要倍增 | ||
628 | + if (act.is_bz && no_in_arr.length >= act.zhbuyqty) { | ||
629 | + var act_num=1; | ||
630 | + var bz_num_ok = 0; //超量倍增是否满足 | ||
631 | + var zhqty_len = 0; //几个超量倍增 | ||
632 | + var delete_num = 0; | ||
633 | + //看一下是几倍 | ||
634 | + let be = parseInt(no_in_arr.length / act.zhbuyqty); | ||
635 | + //如果有总数控制的时候 | ||
636 | + if (act.zh_num) { | ||
637 | + var be1 = act.zh_num - act.zh_buy_num - 1; | ||
638 | + if (be1 < be) be = be1; | ||
639 | + } | ||
640 | + if(be) { | ||
641 | + if (act.is_bzyh && zhqty_bz.length > 0) { | ||
642 | + | ||
643 | + let zhqty_bz_arr = []; | ||
644 | + let zhqty_bz_flag = this.zhqty_bz_fun(zhqty_bz, be, zhqty_bz_arr); | ||
645 | + if (zhqty_bz_flag) { | ||
646 | + for (let i = 0; i < zhqty_bz.length; i++) { | ||
647 | + var vv = zhqty_bz[i]; | ||
648 | + for (let j = 0; j < be * vv['zhqty']; j++) { | ||
649 | + let index = no_in_arr.findIndex(i => { | ||
650 | + return vv.goods_id === i.goods_id | ||
651 | + }) | ||
652 | + if (index > -1) { | ||
653 | + delete_num++ | ||
654 | + no_in_arr.splice(index, 1) | ||
655 | + } | ||
656 | + } | ||
657 | + } | ||
658 | + } else { | ||
659 | + zhqty_len = 1; | ||
660 | + let min_bz_num = Math.min.apply(Math, zhqty_bz_arr.map(function (o) { | ||
661 | + return o['be']; | ||
662 | + })); | ||
663 | + let new_arr = zhqty_bz_arr.filter(ii => { | ||
664 | + return ii['be'] == min_bz_num; | ||
665 | + }) | ||
666 | + | ||
667 | + //-- 要看一下倍数还有没有 --- | ||
668 | + be = new_arr[0].be; | ||
669 | + if(be){ | ||
670 | + for (let i = 0; i < zhqty_bz.length; i++) { | ||
671 | + let item1 = zhqty_bz[i]; | ||
672 | + for (let j = 0; j < be * item1['zhqty']; j++) { | ||
673 | + let index = no_in_arr.findIndex(i => { | ||
674 | + return item1.goods_id === i.goods_id | ||
675 | + }) | ||
676 | + if (index > -1) { | ||
677 | + no_in_arr.splice(index, 1) | ||
678 | + } | ||
679 | + } | ||
680 | + } | ||
681 | + act_num+=be; | ||
682 | + } | ||
683 | + } | ||
684 | + } | ||
685 | + if (!zhqty_len) { | ||
686 | + let pop_num = be * act.zhbuyqty - delete_num; | ||
687 | + for (var m = 0; m < pop_num; m++) { | ||
688 | + no_in_arr.pop(); | ||
689 | + } | ||
690 | + act_num+=be; | ||
691 | + } | ||
692 | + } | ||
693 | + } | ||
694 | + | ||
695 | + let goods_map = {}; | ||
696 | + //算一下剩余的商品 | ||
697 | + if (no_in_arr.length) { | ||
698 | + for (let ii in no_in_arr) { | ||
699 | + let item = no_in_arr[ii]; | ||
700 | + if (goods_map[item.goods_id]) { | ||
701 | + var num = goods_map[item.goods_id]; | ||
702 | + goods_map[item.goods_id] = ++num; | ||
703 | + } else { | ||
704 | + goods_map[item.goods_id] = 1; | ||
705 | + } | ||
706 | + } | ||
707 | + } | ||
708 | + //超量的部分也要计算一下 | ||
709 | + if (out_arr.length) { | ||
710 | + for (var m in out_arr) { | ||
711 | + if (goods_map[item.goods_id]) { | ||
712 | + var num = goods_map[item.goods_id]; | ||
713 | + num += item.num | ||
714 | + goods_map[item.goods_id] = num; | ||
715 | + } else { | ||
716 | + goods_map[item.goods_id] = item.num; | ||
717 | + } | ||
718 | + } | ||
719 | + } | ||
720 | + | ||
721 | + | ||
612 | //商品的列表 | 722 | //商品的列表 |
613 | for (var u in goods) { | 723 | for (var u in goods) { |
614 | var ite = goods[u]; | 724 | var ite = goods[u]; |
615 | - if (ite.buyqty > 0 && ite.num > 0) { | ||
616 | - console.log(222, th.data.in_zhact_gdmap_gp); | ||
617 | - var key = ite.goods_id + "" + act.id; | ||
618 | - if (th.data.in_zhact_gdmap_gp[key]) { | ||
619 | - th.data.in_zhact_gdmap_gp[key] += ite.num; | 725 | + var cart_num = get_num(ite).goods_num; |
726 | + | ||
727 | + if (ite.buyqty > 0 && ite.cart_num > 0) { | ||
728 | + var key = ite.goods_id + "." + act.id; | ||
729 | + | ||
730 | + if(goods_map[ite.goods_id]){} | ||
731 | + | ||
732 | + | ||
733 | + if (th.data.in_zhact_gdmap_new[key]) { | ||
734 | + th.data.in_zhact_gdmap_new[key] += ite.num; | ||
620 | } else { | 735 | } else { |
621 | - th.data.in_zhact_gdmap_gp[key] = ite.num; | 736 | + th.data.in_zhact_gdmap_new[key] = ite.num; |
622 | } | 737 | } |
623 | } | 738 | } |
624 | } | 739 | } |
pages/cart/cart/cart.js
@@ -41,14 +41,18 @@ Page({ | @@ -41,14 +41,18 @@ Page({ | ||
41 | zhhe_prom: [], //组合活动需要显示差多少件 | 41 | zhhe_prom: [], //组合活动需要显示差多少件 |
42 | zuhe_map: {}, | 42 | zuhe_map: {}, |
43 | zuhe_map_good: {}, | 43 | zuhe_map_good: {}, |
44 | + | ||
44 | in_zhact_gdmap: {}, //不同门店参与同一活动的限购 | 45 | in_zhact_gdmap: {}, //不同门店参与同一活动的限购 |
45 | - in_zhact_gdmap_gp: {}, //不同门店参与同一活动的限购,新版判断的时候 | 46 | + in_zhact:{}, //组合购活动在列表中的显示 |
47 | + in_yhact:{}, //优惠活动在列表中的显示 | ||
46 | 48 | ||
47 | ladder_map: {}, //阶梯促销需要的map | 49 | ladder_map: {}, //阶梯促销需要的map |
48 | 50 | ||
49 | promgoods_map: {}, | 51 | promgoods_map: {}, |
50 | promgoods_list: {} | 52 | promgoods_list: {} |
51 | 53 | ||
54 | + | ||
55 | + | ||
52 | }, | 56 | }, |
53 | 57 | ||
54 | //-- 立即购买的时候,获取商品优惠活动,is_state判断是不是单个商品购买, | 58 | //-- 立即购买的时候,获取商品优惠活动,is_state判断是不是单个商品购买, |
@@ -4239,6 +4243,9 @@ Page({ | @@ -4239,6 +4243,9 @@ Page({ | ||
4239 | fd.goods.push(c_item); | 4243 | fd.goods.push(c_item); |
4240 | }else{ | 4244 | }else{ |
4241 | var p_item={key:key,prom_type:n_item.prom_type,prom_id:n_item.prom_id,goods:[],act:n_item}; | 4245 | var p_item={key:key,prom_type:n_item.prom_type,prom_id:n_item.prom_id,goods:[],act:n_item}; |
4246 | + if(n_item.prom_type==7){ | ||
4247 | + p_item.zh_act=n_item.zh_pro; | ||
4248 | + } | ||
4242 | p_item.goods.push(c_item); | 4249 | p_item.goods.push(c_item); |
4243 | cx_act_map.push(p_item); | 4250 | cx_act_map.push(p_item); |
4244 | } | 4251 | } |
pages/cart/cart/cart.wxml
@@ -132,7 +132,7 @@ | @@ -132,7 +132,7 @@ | ||
132 | <!-- 验证活动是不是多个,要不要显示切换 --> | 132 | <!-- 验证活动是不是多个,要不要显示切换 --> |
133 | <!-- 新增促销多活动的排版 --> | 133 | <!-- 新增促销多活动的排版 --> |
134 | <block wx:if="{{g_filter.is_more_act(items,item.show_can_cx) && item.show_can_cx[items.goods_id] && item.show_can_cx[items.goods_id].act_arr.length>1}}"> | 134 | <block wx:if="{{g_filter.is_more_act(items,item.show_can_cx) && item.show_can_cx[items.goods_id] && item.show_can_cx[items.goods_id].act_arr.length>1}}"> |
135 | - <view class="bdb16" wx:if="{{util.check_show(items,item.show_can_cx[items.goods_id].sele_prom_type)}}"> | 135 | + <view class="bdb16"> |
136 | <view bindtap="switch_cx_group" | 136 | <view bindtap="switch_cx_group" |
137 | data-index="{{pidx}}" | 137 | data-index="{{pidx}}" |
138 | data-gd_key="{{items.goods_id}}" | 138 | data-gd_key="{{items.goods_id}}" |
pages/cart/cart/g_filter.wxs
@@ -35,13 +35,8 @@ var g_filters = { | @@ -35,13 +35,8 @@ var g_filters = { | ||
35 | if([1,2,4,6,8,9].indexOf(items.prom_type)>-1) return false; | 35 | if([1,2,4,6,8,9].indexOf(items.prom_type)>-1) return false; |
36 | if(!show_can_cx) return false; | 36 | if(!show_can_cx) return false; |
37 | return true; | 37 | return true; |
38 | - }, | ||
39 | - check_show:function(items,sele_prom_type){ | ||
40 | - if([7,10].indexOf(sele_prom_type)>-1){ | ||
41 | - if(!items.is_act_last) return false; | ||
42 | - } | ||
43 | - return true; | ||
44 | } | 38 | } |
39 | + | ||
45 | } | 40 | } |
46 | module.exports = { | 41 | module.exports = { |
47 | has_char: g_filters.has_char, | 42 | has_char: g_filters.has_char, |
pages/cart/cart/zh_calculate.js
@@ -134,7 +134,7 @@ module.exports = { | @@ -134,7 +134,7 @@ module.exports = { | ||
134 | if (item.buyqty > 0) { | 134 | if (item.buyqty > 0) { |
135 | console.log(111, th.data.in_zhact_gdmap); | 135 | console.log(111, th.data.in_zhact_gdmap); |
136 | var cbuy = item.buyqty - zh_b_num; | 136 | var cbuy = item.buyqty - zh_b_num; |
137 | - var key = item.goods_id + "" + act.id; | 137 | + var key = item.goods_id + "." + act.id; |
138 | if (th.data.in_zhact_gdmap[key]) { | 138 | if (th.data.in_zhact_gdmap[key]) { |
139 | var cbuy = item.buyqty - zh_b_num - th.data.in_zhact_gdmap[key]; | 139 | var cbuy = item.buyqty - zh_b_num - th.data.in_zhact_gdmap[key]; |
140 | } | 140 | } |
@@ -213,7 +213,7 @@ module.exports = { | @@ -213,7 +213,7 @@ module.exports = { | ||
213 | 213 | ||
214 | console.log(222, th.data.in_zhact_gdmap); | 214 | console.log(222, th.data.in_zhact_gdmap); |
215 | 215 | ||
216 | - var key = ite.goods_id + "" + act.id; | 216 | + var key = ite.goods_id + "." + act.id; |
217 | if (th.data.in_zhact_gdmap[key]) { | 217 | if (th.data.in_zhact_gdmap[key]) { |
218 | th.data.in_zhact_gdmap[key] += ite.num; | 218 | th.data.in_zhact_gdmap[key] += ite.num; |
219 | } else { | 219 | } else { |
@@ -521,7 +521,7 @@ module.exports = { | @@ -521,7 +521,7 @@ module.exports = { | ||
521 | return zhqty_bz_flag; | 521 | return zhqty_bz_flag; |
522 | }, | 522 | }, |
523 | 523 | ||
524 | - //-- 判断组合购有没有满足 --- | 524 | + //-- 判断组合购有没有满足,只有在检查的时候,要用新的 --- |
525 | ch_zh_ok(act,gdlist,c_goods,th){ | 525 | ch_zh_ok(act,gdlist,c_goods,th){ |
526 | //-- 寻找一下 -- | 526 | //-- 寻找一下 -- |
527 | function get_num(ite) { | 527 | function get_num(ite) { |
@@ -551,9 +551,9 @@ module.exports = { | @@ -551,9 +551,9 @@ module.exports = { | ||
551 | //-- 当商品有购买的时候,以及有限购的时候 -- | 551 | //-- 当商品有购买的时候,以及有限购的时候 -- |
552 | if (item.buyqty > 0) { | 552 | if (item.buyqty > 0) { |
553 | var cbuy = item.buyqty - zh_b_num; | 553 | var cbuy = item.buyqty - zh_b_num; |
554 | - var key = item.goods_id + "" + act.id; | ||
555 | - if (th.data.in_zhact_gdmap_gp[key]) { | ||
556 | - var cbuy = item.buyqty - zh_b_num - th.data.in_zhact_gdmap_gp[key]; | 554 | + var key = item.goods_id + "." + act.id; |
555 | + if (th.data.in_zhact_gdmap[key]) { | ||
556 | + var cbuy = item.buyqty - zh_b_num - th.data.in_zhact_gdmap[key]; | ||
557 | } | 557 | } |
558 | //当可买的数量为0 | 558 | //当可买的数量为0 |
559 | if (cbuy <= 0) { | 559 | if (cbuy <= 0) { |
@@ -590,11 +590,11 @@ module.exports = { | @@ -590,11 +590,11 @@ module.exports = { | ||
590 | var ite = goods[u]; | 590 | var ite = goods[u]; |
591 | if (ite.buyqty > 0 && ite.num > 0) { | 591 | if (ite.buyqty > 0 && ite.num > 0) { |
592 | console.log(222, th.data.in_zhact_gdmap_gp); | 592 | console.log(222, th.data.in_zhact_gdmap_gp); |
593 | - var key = ite.goods_id + "" + act.id; | ||
594 | - if (th.data.in_zhact_gdmap_gp[key]) { | ||
595 | - th.data.in_zhact_gdmap_gp[key] += ite.num; | 593 | + var key = ite.goods_id + "." + act.id; |
594 | + if (th.data.in_zhact_gdmap[key]) { | ||
595 | + th.data.in_zhact_gdmap[key] += ite.num; | ||
596 | } else { | 596 | } else { |
597 | - th.data.in_zhact_gdmap_gp[key] = ite.num; | 597 | + th.data.in_zhact_gdmap[key] = ite.num; |
598 | } | 598 | } |
599 | } | 599 | } |
600 | } | 600 | } |