Commit a644a95d8a877e991cf8313625cd82f26065c358
1 parent
bc8b6f63
购物车优惠促销的优化
Showing
2 changed files
with
25 additions
and
15 deletions
packageE/pages/cart/cart2/cart2.js
... | ... | @@ -134,7 +134,6 @@ Page({ |
134 | 134 | in_zhact_gdmap: {}, //不同门店参与同一活动的限购,这些都是map表,很 |
135 | 135 | in_zhact:{}, //组合购活动在列表中的显示 |
136 | 136 | in_yhact:{}, //优惠活动在列表中的显示 |
137 | - | |
138 | 137 | in_zh_gd_buy_map:{}, //就是商品在组合购中的 |
139 | 138 | |
140 | 139 | in_zhact_gdmap_new: {}, //不同门店参与同一活动的限购,这些都是map表,是多促销互动专用,不能和in_zhact_gdmap重叠 |
... | ... | @@ -7744,6 +7743,7 @@ Page({ |
7744 | 7743 | month_lb:{} |
7745 | 7744 | }) |
7746 | 7745 | |
7746 | + th.data.prom_goods_map={}; | |
7747 | 7747 | |
7748 | 7748 | var fir_sele=0; |
7749 | 7749 | for(var dx=0;dx<cx_prom_group.length;dx++){ | ... | ... |
pages/cart/cart/cart.js
... | ... | @@ -3613,6 +3613,10 @@ Page({ |
3613 | 3613 | for (var ind in ddata) { |
3614 | 3614 | var val = ddata[ind]; |
3615 | 3615 | var num = map.get(val.goods_id + ""); |
3616 | + | |
3617 | + var ky=val.goods_id + "-"+val.prom_type + "-"+val.prom_id; | |
3618 | + var buyed = map_limit.get(ky); | |
3619 | + | |
3616 | 3620 | if (num <= 0) { |
3617 | 3621 | isok = 0; |
3618 | 3622 | gname = val.goods_name; |
... | ... | @@ -3621,12 +3625,29 @@ Page({ |
3621 | 3625 | } |
3622 | 3626 | |
3623 | 3627 | if (val.prom_type == 1 || val.prom_type == 2) { |
3624 | - if (num > val.store_count) { | |
3628 | + | |
3629 | + var s_num=num; | |
3630 | + if(th.data.sales_rules> 1) s_num=buyed; | |
3631 | + if (s_num > val.store_count) { | |
3625 | 3632 | isok = 0; |
3626 | 3633 | gname = val.goods_name; |
3627 | 3634 | throw "超出库存"; |
3628 | 3635 | return false; |
3629 | 3636 | } |
3637 | + | |
3638 | + if (buyed > val.redisnum && val.redisnum) { | |
3639 | + isok = 0; | |
3640 | + gname = val.goods_name; | |
3641 | + err="超出活动库存"; | |
3642 | + break; | |
3643 | + } | |
3644 | + if (buyed > val.goods_num - val.buy_num && val.goods_num) { | |
3645 | + isok = 0; | |
3646 | + gname = val.goods_name; | |
3647 | + err="超出活动库存"; | |
3648 | + break; | |
3649 | + } | |
3650 | + | |
3630 | 3651 | } |
3631 | 3652 | |
3632 | 3653 | if (th.data.sales_rules == 1) { |
... | ... | @@ -3637,20 +3658,9 @@ Page({ |
3637 | 3658 | break; |
3638 | 3659 | } |
3639 | 3660 | } |
3640 | - if (num > val.redisnum && val.redisnum) { | |
3641 | - isok = 0; | |
3642 | - gname = val.goods_name; | |
3643 | - err="超出活动库存"; | |
3644 | - break; | |
3645 | - } | |
3646 | - if (num > val.goods_num - val.buy_num && val.goods_num) { | |
3647 | - isok = 0; | |
3648 | - gname = val.goods_name; | |
3649 | - err="超出活动库存"; | |
3650 | - break; | |
3651 | - } | |
3652 | 3661 | |
3653 | - var buyed = map_limit.get(ky); | |
3662 | + | |
3663 | + | |
3654 | 3664 | if (num + buyed.goodsbuynum > val.viplimited && val.viplimited > 0) { |
3655 | 3665 | isok = 0; |
3656 | 3666 | gname = val.goods_name; | ... | ... |