Commit 6c0e604bf5427596b954b7f4ab76ab6314c338c6
1 parent
4eb04adf
多促销的优化
Showing
3 changed files
with
49 additions
and
25 deletions
packageE/pages/cart/cart2/cart2.js
| ... | ... | @@ -5504,7 +5504,7 @@ Page({ |
| 5504 | 5504 | for (var i in goodlist) { |
| 5505 | 5505 | var gd = goodlist[i]; |
| 5506 | 5506 | //--如果是秒杀就跳出,如果是赠品,如果是组合购限制使用优惠券-- |
| 5507 | - if (gd.whsle_id == 1 || gd.prom_type == 1 || gd.is_gift || (gd.prom_type == 7 && gd.act.is_xz_yh) || gd.is_xz_yh == 1) { | |
| 5507 | + if (gd.whsle_id == 1 || gd.prom_type == 1 || gd.is_gift || (gd.prom_type == 7 && gd.act && gd.act.is_xz_yh) || gd.is_xz_yh == 1) { | |
| 5508 | 5508 | continue; |
| 5509 | 5509 | } |
| 5510 | 5510 | ... | ... |
pages/cart/cart/cart.js
| ... | ... | @@ -1137,6 +1137,8 @@ Page({ |
| 1137 | 1137 | var th = this; |
| 1138 | 1138 | |
| 1139 | 1139 | if (a = isNaN(t.detail.value) || t.detail.value < 1 ? 1 : parseInt(t.detail.value)) { |
| 1140 | + this.clear_req(); | |
| 1141 | + | |
| 1140 | 1142 | var s = { |
| 1141 | 1143 | goods_num: a, |
| 1142 | 1144 | goods_id: e.goods_id, |
| ... | ... | @@ -1147,6 +1149,14 @@ Page({ |
| 1147 | 1149 | } |
| 1148 | 1150 | }, |
| 1149 | 1151 | |
| 1152 | + clear_req:function (){ | |
| 1153 | + var carr=this.data.requestData; | |
| 1154 | + for(var i=0;i<carr.length;i++){ | |
| 1155 | + var txt='requestData['+i+'].show_can_cx' | |
| 1156 | + this.setData({[txt]:null}); | |
| 1157 | + } | |
| 1158 | + }, | |
| 1159 | + | |
| 1150 | 1160 | //-------------加数量------------- |
| 1151 | 1161 | addNum: function (t) { |
| 1152 | 1162 | if (!this.data.is_load) return false; |
| ... | ... | @@ -1178,6 +1188,7 @@ Page({ |
| 1178 | 1188 | } |
| 1179 | 1189 | } |
| 1180 | 1190 | |
| 1191 | + this.clear_req(); | |
| 1181 | 1192 | |
| 1182 | 1193 | var e = { |
| 1183 | 1194 | goods_num: a.goods_num + 1, |
| ... | ... | @@ -1206,6 +1217,9 @@ Page({ |
| 1206 | 1217 | } |
| 1207 | 1218 | |
| 1208 | 1219 | if (1 != a.goods_num) { |
| 1220 | + | |
| 1221 | + this.clear_req(); | |
| 1222 | + | |
| 1209 | 1223 | var e = { |
| 1210 | 1224 | goods_num: a.goods_num - 1, |
| 1211 | 1225 | id: a.id, |
| ... | ... | @@ -1466,7 +1480,7 @@ Page({ |
| 1466 | 1480 | |
| 1467 | 1481 | this.doCheckAll(function (){ |
| 1468 | 1482 | e.all_check_prom_activity(); |
| 1469 | - },1); | |
| 1483 | + }); | |
| 1470 | 1484 | |
| 1471 | 1485 | } |
| 1472 | 1486 | } |
| ... | ... | @@ -1893,6 +1907,23 @@ Page({ |
| 1893 | 1907 | //-- 购物车 -- |
| 1894 | 1908 | if (car && car.length > 0) { |
| 1895 | 1909 | th.data.in_zhact_gdmap = {}; |
| 1910 | + | |
| 1911 | + | |
| 1912 | + //-- 第一次过滤,show_can_cx的还要遍历一遍,确保数据的正确性 -- | |
| 1913 | + var rd_arr=[]; | |
| 1914 | + for (var a = 0; a < car.length; a++) { | |
| 1915 | + var ite1=car[a].goods; | |
| 1916 | + await m_cx.cart_cx_group(th,ite1,car[a],1,n_ok,(show_can_cx)=>{ | |
| 1917 | + rd_arr.push(show_can_cx) | |
| 1918 | + }) | |
| 1919 | + } | |
| 1920 | + //--- 第二次过滤 --- | |
| 1921 | + for(var ui=0;ui<rd_arr.length;ui++){ | |
| 1922 | + | |
| 1923 | + } | |
| 1924 | + | |
| 1925 | + | |
| 1926 | + | |
| 1896 | 1927 | for (var a = 0; a < car.length; a++) { |
| 1897 | 1928 | |
| 1898 | 1929 | car[a].zh_map=null; |
| ... | ... | @@ -1981,11 +2012,14 @@ Page({ |
| 1981 | 2012 | [txt]: Number(is_s_sele) |
| 1982 | 2013 | }); |
| 1983 | 2014 | |
| 1984 | - var txt1 = "requestData[" + a + "].show_can_cx"; | |
| 1985 | - th.setData({ | |
| 1986 | - [txt1]: show_can_cx | |
| 1987 | - }); | |
| 1988 | - | |
| 2015 | + // var txt1 = "requestData[" + a + "].show_can_cx"; | |
| 2016 | + // th.setData({ | |
| 2017 | + // [txt1]: show_can_cx | |
| 2018 | + // }); | |
| 2019 | + | |
| 2020 | + var et={show_can_cx:show_can_cx}; | |
| 2021 | + rd_arr.push(et); | |
| 2022 | + | |
| 1989 | 2023 | //当有线下取价的时候 |
| 1990 | 2024 | if (offline_price) { |
| 1991 | 2025 | var txt1 = "requestData[" + a + "].offline_price"; |
| ... | ... | @@ -2005,7 +2039,10 @@ Page({ |
| 2005 | 2039 | } |
| 2006 | 2040 | } |
| 2007 | 2041 | }); |
| 2042 | + | |
| 2008 | 2043 | } |
| 2044 | + | |
| 2045 | + var gb=1; | |
| 2009 | 2046 | //-- 切换活动的按钮要把他返回 -- |
| 2010 | 2047 | this.data.change_act=0; |
| 2011 | 2048 | if(func) func(); | ... | ... |
utils/more_cx.js
| ... | ... | @@ -298,7 +298,7 @@ module.exports = { |
| 298 | 298 | }, |
| 299 | 299 | //-- 判读一下促销分组的问题 -- |
| 300 | 300 | //-- is_need_ck_num 是多门店计算的时候,数量是不是要累家计算,主要是拿来计算限购 -- |
| 301 | - //-- need_ok是判断要不要满足条件 -- | |
| 301 | + //-- need_ok是判断要不要满足条件,这是在cart2的时候,才会赋值成1 -- | |
| 302 | 302 | async cart_cx_group(th,goods,car_item,is_need_ck_num,need_ok,func){ |
| 303 | 303 | |
| 304 | 304 | var os= getApp().globalData.setting; |
| ... | ... | @@ -538,23 +538,6 @@ module.exports = { |
| 538 | 538 | //当满足组合的要求:总数要满足,起购数要满足 |
| 539 | 539 | if(this.ch_zh_ok(zh_pro0,zhact_gdlist,zh_goods,th,item_act_map,is_need_ck_num,need_ok)){ |
| 540 | 540 | |
| 541 | - if(is_need_ck_num){ | |
| 542 | - //先缓存活动数量 | |
| 543 | - var need_ck=th.data.in_zhact_new[aid]?th.data.in_zhact_new[aid]:0; | |
| 544 | - need_ck+=item_act_map.act_num; | |
| 545 | - th.data.in_zhact_new[aid]=need_ck; | |
| 546 | - | |
| 547 | - if(item_act_map.in_zhact_gdmap){ | |
| 548 | - var in_zhact_gdmap1 = item_act_map['in_zhact_gdmap']; | |
| 549 | - for (var vg in in_zhact_gdmap1) { | |
| 550 | - if (!th.data.in_zhact_gdmap_new[vg]) th.data.in_zhact_gdmap_new[vg] = 0; | |
| 551 | - th.data.in_zhact_gdmap_new[vg] += in_zhact_gdmap1[vg]; | |
| 552 | - } | |
| 553 | - } | |
| 554 | - | |
| 555 | - | |
| 556 | - } | |
| 557 | - | |
| 558 | 541 | can_calc_cx.push(item_act_map) |
| 559 | 542 | } |
| 560 | 543 | break; |
| ... | ... | @@ -625,11 +608,15 @@ module.exports = { |
| 625 | 608 | return el.sele; |
| 626 | 609 | }) |
| 627 | 610 | |
| 611 | + //如果 | |
| 612 | + | |
| 628 | 613 | } |
| 629 | 614 | //-- 此时已经确定了商品的活动是什么类型的,可以确定购物车中商品的具体活动进行金额的计算 -- |
| 630 | 615 | if(!ck_prom_type){ |
| 631 | 616 | ck_prom_type=k_item.act_arr[0]; |
| 632 | 617 | k_item.act_arr[0].sele=1; |
| 618 | + //-- 把当前活动进行赋值 -- | |
| 619 | + k_item.cur_act=ck_prom_type; | |
| 633 | 620 | } |
| 634 | 621 | |
| 635 | 622 | //-- 如果是要控制数量的时候,也就是全选的时候,或者加减号的时候 -- | ... | ... |