Commit 4c07085965c7e1eae531feba60f68a2618ce9868
1 parent
f7c9be6a
购物车优化,商品详情页面的优化
Showing
3 changed files
with
224 additions
and
214 deletions
pages/cart/cart/cart.js
@@ -3145,6 +3145,9 @@ Page({ | @@ -3145,6 +3145,9 @@ Page({ | ||
3145 | } | 3145 | } |
3146 | var garr = this.data.requestData; | 3146 | var garr = this.data.requestData; |
3147 | var check_is_goods_selected = 0; | 3147 | var check_is_goods_selected = 0; |
3148 | + | ||
3149 | + var th=this; | ||
3150 | + | ||
3148 | if (garr) { | 3151 | if (garr) { |
3149 | for (var ii in garr) { | 3152 | for (var ii in garr) { |
3150 | for (var ij in garr[ii].goods) { | 3153 | for (var ij in garr[ii].goods) { |
@@ -3157,17 +3160,16 @@ Page({ | @@ -3157,17 +3160,16 @@ Page({ | ||
3157 | } | 3160 | } |
3158 | //-- 如果是商品的结算 -- | 3161 | //-- 如果是商品的结算 -- |
3159 | if (check_is_goods_selected) { | 3162 | if (check_is_goods_selected) { |
3160 | - var glist = []; //用逗号隔开的 | ||
3161 | - var map = new Map(); //使用map值键进行运算。值计算商品ID | ||
3162 | - var map_limit = new Map(); //使用map值键进行存储限购,特定的活动的数量 | 3163 | + var glist = []; //商品数组 |
3164 | + var map = new Map(); //使用map值键进行运算 | ||
3165 | + | ||
3163 | var g_arr = new Array(); //已选的商品列表 | 3166 | var g_arr = new Array(); //已选的商品列表 |
3164 | var user_id = getApp().globalData.user_id; | 3167 | var user_id = getApp().globalData.user_id; |
3165 | - var th = this; | 3168 | + |
3166 | //用于判断是不是积分购的普通购买 | 3169 | //用于判断是不是积分购的普通购买 |
3167 | var normal_arr = {}; | 3170 | var normal_arr = {}; |
3168 | var ab = 0; //选中 | 3171 | var ab = 0; //选中 |
3169 | wx.showLoading(); | 3172 | wx.showLoading(); |
3170 | - | ||
3171 | let checkArr7 = []; //组合购选中的数据 | 3173 | let checkArr7 = []; //组合购选中的数据 |
3172 | let checkObj3 = {}; //优惠促销次数判断 | 3174 | let checkObj3 = {}; //优惠促销次数判断 |
3173 | 3175 | ||
@@ -3177,12 +3179,11 @@ Page({ | @@ -3177,12 +3179,11 @@ Page({ | ||
3177 | 3179 | ||
3178 | // let checkOff=false | 3180 | // let checkOff=false |
3179 | for (var i = 0; i < this.data.requestData.length; i++) { | 3181 | for (var i = 0; i < this.data.requestData.length; i++) { |
3180 | - //-- 循环每一个活动 -- | ||
3181 | var i_arr = this.data.requestData[i].goods; | 3182 | var i_arr = this.data.requestData[i].goods; |
3182 | - for (var j = 0; j < i_arr.length; j++){ | 3183 | + for (var j = 0; j < i_arr.length; j++) { |
3183 | if (i_arr[j].selected && i_arr[j].is_gift != 1) { | 3184 | if (i_arr[j].selected && i_arr[j].is_gift != 1) { |
3184 | if (i_arr[j].is_pd_normal || i_arr[j].prom_type == 0 || i_arr[j].prom_type == 3) { | 3185 | if (i_arr[j].is_pd_normal || i_arr[j].prom_type == 0 || i_arr[j].prom_type == 3) { |
3185 | - normal_arr[i_arr[j].id] = 1; | 3186 | + normal_arr[i_arr[j].goods_id] = 1; |
3186 | } | 3187 | } |
3187 | 3188 | ||
3188 | //检查活动是不是满足了条件,或者要取满足条件的活动 | 3189 | //检查活动是不是满足了条件,或者要取满足条件的活动 |
@@ -3261,7 +3262,6 @@ Page({ | @@ -3261,7 +3262,6 @@ Page({ | ||
3261 | prom_id: i_arr[j].prom_id, | 3262 | prom_id: i_arr[j].prom_id, |
3262 | prom_type: i_arr[j].prom_type, | 3263 | prom_type: i_arr[j].prom_type, |
3263 | }; | 3264 | }; |
3264 | - | ||
3265 | //判断是不是线下取价 | 3265 | //判断是不是线下取价 |
3266 | if (i_arr[j].is_offline) { | 3266 | if (i_arr[j].is_offline) { |
3267 | ie.is_offline = i_arr[j].is_offline; | 3267 | ie.is_offline = i_arr[j].is_offline; |
@@ -3280,11 +3280,9 @@ Page({ | @@ -3280,11 +3280,9 @@ Page({ | ||
3280 | //glist += i_arr[j].goods_id + ","; | 3280 | //glist += i_arr[j].goods_id + ","; |
3281 | 3281 | ||
3282 | if(!i_arr[j].is_gift){ | 3282 | if(!i_arr[j].is_gift){ |
3283 | - var et= {"prom_type":i_arr[j].prom_type,"prom_id":i_arr[j].prom_id,"goods_id":i_arr[j].goods_id}; | ||
3284 | - glist.push(et); | 3283 | + var et= {"prom_type":i_arr[j].prom_type,"prom_id":i_arr[j].prom_id,"goods_id":i_arr[j].goods_id}; |
3284 | + glist.push(et); | ||
3285 | } | 3285 | } |
3286 | - | ||
3287 | - //判断有没有选择商品 | ||
3288 | ab = 1; | 3286 | ab = 1; |
3289 | 3287 | ||
3290 | //-- 获取促销活动是不是有参与 -- | 3288 | //-- 获取促销活动是不是有参与 -- |
@@ -3319,6 +3317,7 @@ Page({ | @@ -3319,6 +3317,7 @@ Page({ | ||
3319 | 3317 | ||
3320 | } | 3318 | } |
3321 | 3319 | ||
3320 | + | ||
3322 | //--普通商品,如果有开启线下库存的功能,要调用线下库存进行计算,赠品不要进行调用线下库存--- | 3321 | //--普通商品,如果有开启线下库存的功能,要调用线下库存进行计算,赠品不要进行调用线下库存--- |
3323 | if ((i_arr[j].prom_type == 0 || i_arr[j].prom_type == 3 || i_arr[j].prom_type == 5 || i_arr[j].prom_type == 7 || i_arr[j].prom_type == 10 || | 3322 | if ((i_arr[j].prom_type == 0 || i_arr[j].prom_type == 3 || i_arr[j].prom_type == 5 || i_arr[j].prom_type == 7 || i_arr[j].prom_type == 10 || |
3324 | i_arr[j].need_downlow_num) && th.data.sales_rules >= 2 && i_arr[j].is_gift != 1 && !i_arr[j].whsle_id) { | 3323 | i_arr[j].need_downlow_num) && th.data.sales_rules >= 2 && i_arr[j].is_gift != 1 && !i_arr[j].whsle_id) { |
@@ -3454,9 +3453,6 @@ Page({ | @@ -3454,9 +3453,6 @@ Page({ | ||
3454 | } | 3453 | } |
3455 | 3454 | ||
3456 | 3455 | ||
3457 | - //glist = glist.substring(0, glist.length - 1); | ||
3458 | - //--取一下商品的限购 以及活动的限购,redis数量- | ||
3459 | - //-- 组合购的控制 --- | ||
3460 | if (checkArr7.length > 0) { | 3456 | if (checkArr7.length > 0) { |
3461 | let checkStr = [] | 3457 | let checkStr = [] |
3462 | checkArr7.map(item => { | 3458 | checkArr7.map(item => { |
@@ -3492,8 +3488,10 @@ Page({ | @@ -3492,8 +3488,10 @@ Page({ | ||
3492 | wx.hideLoading(); | 3488 | wx.hideLoading(); |
3493 | return false; | 3489 | return false; |
3494 | } | 3490 | } |
3495 | - //购买商品的下一步 | ||
3496 | - this.cart_goods_buy_next(glist,map_limit,map,g_arr) | 3491 | + |
3492 | + //进行到下一步 | ||
3493 | + th.cart_buy_next(glist,map,g_arr,checkArr7) | ||
3494 | + | ||
3497 | 3495 | ||
3498 | } else if (res.cancel) { | 3496 | } else if (res.cancel) { |
3499 | wx.hideLoading(); | 3497 | wx.hideLoading(); |
@@ -3523,12 +3521,10 @@ Page({ | @@ -3523,12 +3521,10 @@ Page({ | ||
3523 | return false; | 3521 | return false; |
3524 | } | 3522 | } |
3525 | 3523 | ||
3526 | - //购买商品的下一步 | ||
3527 | - this.cart_goods_buy_next(glist,map_limit,map,g_arr) | ||
3528 | - } | ||
3529 | - | ||
3530 | - | 3524 | + //进行到下一步 |
3525 | + th.cart_buy_next(glist,map,g_arr,checkArr7) | ||
3531 | 3526 | ||
3527 | + } | ||
3532 | } else { | 3528 | } else { |
3533 | 3529 | ||
3534 | //-- 开始服务卡的购物车购买 -- | 3530 | //-- 开始服务卡的购物车购买 -- |
@@ -3563,179 +3559,181 @@ Page({ | @@ -3563,179 +3559,181 @@ Page({ | ||
3563 | } | 3559 | } |
3564 | }, | 3560 | }, |
3565 | 3561 | ||
3566 | - //map_limit 是包含活动prom_type prom_id | ||
3567 | 3562 | ||
3568 | - cart_goods_buy_next(glist,map_limit,map,g_arr){ | ||
3569 | - //判断活动的限购,和readis数量 | 3563 | + cart_buy_next(glist,map,g_arr,checkArr7){ |
3564 | + var th=this; | ||
3565 | + var map_limit = new Map(); //使用map值键进行存储限购 | ||
3566 | + //--取一下商品的限购 以及活动的限购,redis数量-- | ||
3570 | getApp().request.promisePost("/api/weshop/goods/listGoodsListNumNew", { | 3567 | getApp().request.promisePost("/api/weshop/goods/listGoodsListNumNew", { |
3571 | is_json:1, | 3568 | is_json:1, |
3572 | data: { | 3569 | data: { |
3573 | listNumNewDtos: glist, | 3570 | listNumNewDtos: glist, |
3574 | store_id: oo.stoid | 3571 | store_id: oo.stoid |
3575 | - }, | ||
3576 | - }).then( async ee=>{ | ||
3577 | - console.log(ee); | ||
3578 | - if (ee.data.code == 0) { | ||
3579 | - var ddata = ee.data.data, | ||
3580 | - isok = 1, | ||
3581 | - gname = "", | ||
3582 | - err = ""; | ||
3583 | - //--组装-- | ||
3584 | - for (var ij = 0; ij < ddata.length; ij++) { | ||
3585 | - | ||
3586 | - var val = ddata[ij]; | ||
3587 | - var ky=val.goods_id + "-"+val.prom_type+'-'+val.prom_id; | ||
3588 | - var obj = map_limit.get(ky); | ||
3589 | - if (obj) continue; | ||
3590 | - | ||
3591 | - var promgoodsbuynum = 0; | ||
3592 | - var goodsbuynum = 0; | ||
3593 | - | ||
3594 | - //--要获得商品,该用户买了多少件,同步应用-- | ||
3595 | - await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", { | ||
3596 | - data: { | ||
3597 | - store_id: oo.stoid, | ||
3598 | - user_id: getApp().globalData.user_id, | ||
3599 | - goods_id: val.goods_id, | ||
3600 | - prom_type: val.prom_type, | ||
3601 | - prom_id: val.prom_id | ||
3602 | - }, | ||
3603 | - }).then(res => { | ||
3604 | - var buy_num_data = res.data.data; | ||
3605 | - if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum; | ||
3606 | - goodsbuynum = buy_num_data.goodsbuynum; | ||
3607 | - }) | ||
3608 | - var ie = { | ||
3609 | - promgoodsbuynum: promgoodsbuynum, | ||
3610 | - goodsbuynum: goodsbuynum | ||
3611 | - }; | ||
3612 | - map_limit.set(ky, ie); | ||
3613 | - } | ||
3614 | - | ||
3615 | - try { | ||
3616 | - for (var ind in ddata) { | ||
3617 | - var val = ddata[ind]; | ||
3618 | - var ky=val.goods_id + "-"+val.prom_type+'-'+val.prom_id; | ||
3619 | - | ||
3620 | - var num = map.get(val.goods_id+""); | ||
3621 | - if (num <= 0) { | ||
3622 | - isok = 0; | ||
3623 | - gname = val.goods_name; | ||
3624 | - throw "购买数量不能为0"; | ||
3625 | - return false; | ||
3626 | - } | 3572 | + } |
3573 | + }).then(async ee=>{ | ||
3574 | + if (ee.data.code == 0) { | ||
3575 | + var ddata = ee.data.data, | ||
3576 | + isok = 1, | ||
3577 | + gname = "", | ||
3578 | + err = ""; | ||
3579 | + //--组装-- | ||
3580 | + for (var ij = 0; ij < ddata.length; ij++) { | ||
3581 | + var val = ddata[ij]; | ||
3582 | + | ||
3583 | + var ky=val.goods_id + "-"+val.prom_type + "-"+val.prom_id; | ||
3584 | + var obj = map_limit.get(ky); | ||
3585 | + if (obj) continue; | ||
3586 | + | ||
3587 | + var promgoodsbuynum = 0; | ||
3588 | + var goodsbuynum = 0; | ||
3589 | + | ||
3590 | + //--要获得商品,该用户买了多少件,同步应用-- | ||
3591 | + await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", { | ||
3592 | + data: { | ||
3593 | + store_id: oo.stoid, | ||
3594 | + user_id:getApp().globalData.user_id, | ||
3595 | + goods_id: val.goods_id, | ||
3596 | + prom_type: val.prom_type, | ||
3597 | + prom_id: val.prom_id | ||
3598 | + }, | ||
3599 | + }).then(res => { | ||
3600 | + var buy_num_data = res.data.data; | ||
3601 | + if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum; | ||
3602 | + goodsbuynum = buy_num_data.goodsbuynum; | ||
3603 | + }) | ||
3604 | + var ie = { | ||
3605 | + promgoodsbuynum: promgoodsbuynum, | ||
3606 | + goodsbuynum: goodsbuynum | ||
3607 | + }; | ||
3608 | + map_limit.set(ky, ie); | ||
3609 | + } | ||
3627 | 3610 | ||
3628 | - if (val.prom_type == 1 || val.prom_type == 2) { | ||
3629 | - if (num > val.store_count) { | 3611 | + //try { |
3612 | + for (var ind in ddata) { | ||
3613 | + var val = ddata[ind]; | ||
3614 | + var num = map.get(val.goods_id + ""); | ||
3615 | + if (num <= 0) { | ||
3630 | isok = 0; | 3616 | isok = 0; |
3631 | gname = val.goods_name; | 3617 | gname = val.goods_name; |
3632 | - throw "超出库存"; | 3618 | + throw "购买数量不能为0"; |
3633 | return false; | 3619 | return false; |
3634 | } | 3620 | } |
3635 | 3621 | ||
3622 | + if (val.prom_type == 1 || val.prom_type == 2) { | ||
3623 | + if (num > val.store_count) { | ||
3624 | + isok = 0; | ||
3625 | + gname = val.goods_name; | ||
3626 | + throw "超出库存"; | ||
3627 | + return false; | ||
3628 | + } | ||
3629 | + } | ||
3630 | + | ||
3631 | + if (th.data.sales_rules == 1) { | ||
3632 | + if (num > val.store_count) { | ||
3633 | + isok = 0; | ||
3634 | + gname = val.goods_name; | ||
3635 | + err="超出库存"; | ||
3636 | + break; | ||
3637 | + } | ||
3638 | + } | ||
3636 | if (num > val.redisnum && val.redisnum) { | 3639 | if (num > val.redisnum && val.redisnum) { |
3637 | isok = 0; | 3640 | isok = 0; |
3638 | gname = val.goods_name; | 3641 | gname = val.goods_name; |
3639 | - throw "超出活动库存"; | ||
3640 | - return false; | 3642 | + err="超出活动库存"; |
3643 | + break; | ||
3641 | } | 3644 | } |
3642 | - | ||
3643 | - | ||
3644 | - } | ||
3645 | - | ||
3646 | - if (th.data.sales_rules == 1) { | ||
3647 | - if (num > val.store_count) { | 3645 | + if (num > val.goods_num - val.buy_num && val.goods_num) { |
3648 | isok = 0; | 3646 | isok = 0; |
3649 | gname = val.goods_name; | 3647 | gname = val.goods_name; |
3650 | - throw "超出库存"; | ||
3651 | - return false; | 3648 | + err="超出活动库存"; |
3649 | + break; | ||
3652 | } | 3650 | } |
3653 | - } | ||
3654 | - | ||
3655 | - if (num > val.goods_num - val.buy_num && val.goods_num) { | ||
3656 | - isok = 0; | ||
3657 | - gname = val.goods_name; | ||
3658 | - throw "超出活动库存"; | ||
3659 | - return false; | ||
3660 | - } | ||
3661 | 3651 | ||
3662 | - var buyed = map_limit.get(ky); | ||
3663 | - if (num + buyed.goodsbuynum > val.viplimited && val.viplimited > 0) { | ||
3664 | - isok = 0; | ||
3665 | - gname = val.goods_name; | ||
3666 | - throw "超出商品限购"; | ||
3667 | - return false; | ||
3668 | - } | ||
3669 | - | ||
3670 | - if (num + buyed.promgoodsbuynum > val.buy_limit && val.buy_limit > 0) { | ||
3671 | - isok = 0; | ||
3672 | - gname = val.goods_name; | ||
3673 | - throw "超出活动限购"; | ||
3674 | - return false; | ||
3675 | - } | 3652 | + var buyed = map_limit.get(ky); |
3653 | + if (num + buyed.goodsbuynum > val.viplimited && val.viplimited > 0) { | ||
3654 | + isok = 0; | ||
3655 | + gname = val.goods_name; | ||
3656 | + err="超出商品限购"; | ||
3657 | + break; | ||
3658 | + } | ||
3676 | 3659 | ||
3677 | - var card_field = th.data.card_field; | ||
3678 | - for (var i = 0; i < g_arr.length; i++) { | 3660 | + if (num + buyed.promgoodsbuynum > val.buy_limit && val.buy_limit > 0) { |
3661 | + isok = 0; | ||
3662 | + gname = val.goods_name; | ||
3663 | + err="超出活动限购"; | ||
3664 | + break; | ||
3665 | + } | ||
3679 | 3666 | ||
3680 | - if (g_arr[i].goods_id == val.goods_id && g_arr[i].prom_type==val.prom_type && g_arr[i].prom_id==val.id ) { | 3667 | + var card_field = th.data.card_field; |
3668 | + for (var i = 0; i < g_arr.length; i++) { | ||
3669 | + if (g_arr[i].goods_id == val.goods_id) { | ||
3670 | + | ||
3671 | + //如果会员是等级会员,商品有等级价,且不是活动商品 | ||
3672 | + if (card_field && val[card_field] > 0 && | ||
3673 | + ((val.prom_type == 0 && g_arr[i].prom_type == 0) || g_arr[i].prom_type == 3 || g_arr[i].prom_type == 5 || g_arr[i].prom_type == 7 || g_arr[i].prom_type == 10)) { | ||
3674 | + if (g_arr[i].goods_price != val[card_field]) { | ||
3675 | + isok = 0; | ||
3676 | + gname = val.goods_name; | ||
3677 | + err="商品价格已经变化"; | ||
3678 | + break; | ||
3679 | + } | ||
3680 | + } else { | ||
3681 | + if (g_arr[i].goods_price != val.shop_price && g_arr[i].goods_price != val.prom_price && val.prom_price > 0) { | ||
3682 | + isok = 0; | ||
3683 | + gname = val.goods_name; | ||
3684 | + err="商品价格已经变化"; | ||
3685 | + break; | ||
3686 | + } | ||
3687 | + } | ||
3681 | 3688 | ||
3682 | - //如果会员是等级会员,商品有等级价,且不是活动商品 | ||
3683 | - if (card_field && val[card_field] > 0 && | ||
3684 | - ((val.prom_type == 0 && g_arr[i].prom_type == 0) || val.prom_type == 3 || val.prom_type == 5 || val.prom_type == 7 || val.prom_type == 10)) { | ||
3685 | - if (g_arr[i].goods_price != val[card_field]) { | ||
3686 | - isok = 0; | ||
3687 | - gname = val.goods_name; | ||
3688 | - throw "商品价格已经变化"; | 3689 | + //-- 数据的更新 -- |
3690 | + var data = { | ||
3691 | + id: g_arr[i].id, | ||
3692 | + selected: 1, | ||
3693 | + store_id: oo.stoid, | ||
3694 | + prom_type: g_arr[i].prom_type, | ||
3695 | + prom_id: g_arr[i].prom_id, | ||
3696 | + }; | ||
3697 | + let gitem = checkArr7.find(item => item.goods_id == g_arr[i].goods_id) | ||
3698 | + if (gitem) { | ||
3699 | + data.prom_type = 0 | ||
3700 | + data.prom_id = 0 | ||
3689 | } | 3701 | } |
3690 | - } else { | ||
3691 | - if (g_arr[i].goods_price != val.shop_price && g_arr[i].goods_price != val.prom_price && val.prom_price > 0) { | ||
3692 | - isok = 0; | ||
3693 | - gname = val.goods_name; | ||
3694 | - throw "商品价格已经变化"; | 3702 | + //-- 如果有线下取价的时候 -- |
3703 | + if (g_arr[i].is_offline) { | ||
3704 | + data.pricing_type = g_arr[i].pricing_type; | ||
3705 | + data.offline_price = g_arr[i].offline_price; | ||
3695 | } | 3706 | } |
3707 | + rq.put("/api/weshop/cart/update", { | ||
3708 | + data: data, | ||
3709 | + success: function (ee) { | ||
3710 | + console.log(ee); | ||
3711 | + } | ||
3712 | + }); | ||
3696 | } | 3713 | } |
3714 | + } | ||
3697 | 3715 | ||
3698 | - //-- 数据的更新 -- | ||
3699 | - var data = { | ||
3700 | - id: g_arr[i].id, | ||
3701 | - selected: 1, | ||
3702 | - store_id: oo.stoid, | ||
3703 | - prom_type: g_arr[i].prom_type, | ||
3704 | - prom_id: g_arr[i].prom_id, | ||
3705 | - }; | 3716 | + if(!isok) break; |
3706 | 3717 | ||
3707 | - //-- 如果有线下取价的时候 -- | ||
3708 | - if (g_arr[i].is_offline) { | ||
3709 | - data.pricing_type = g_arr[i].pricing_type; | ||
3710 | - data.offline_price = g_arr[i].offline_price; | ||
3711 | - } | ||
3712 | - rq.put("/api/weshop/cart/update", { | ||
3713 | - data: data, | ||
3714 | - success: function (ee) { | ||
3715 | - console.log(ee); | ||
3716 | - } | ||
3717 | - }); | ||
3718 | - } | ||
3719 | } | 3718 | } |
3720 | - | 3719 | + // } catch (e) { |
3720 | + // err = e; | ||
3721 | + // } | ||
3722 | + if (isok == 0) { | ||
3723 | + t.confirmBox(gname + ":" + err); | ||
3724 | + wx.hideLoading(); | ||
3725 | + return false; | ||
3721 | } | 3726 | } |
3722 | - } catch (e) { | ||
3723 | - err = e; | ||
3724 | - } | ||
3725 | - if (isok == 0) { | ||
3726 | - t.confirmBox(gname + ":" + err); | 3727 | + |
3728 | + | ||
3727 | wx.hideLoading(); | 3729 | wx.hideLoading(); |
3728 | - return false; | 3730 | + wx.navigateTo({ |
3731 | + url: "/packageE/pages/cart/cart2/cart2" | ||
3732 | + }); | ||
3729 | } | 3733 | } |
3730 | - wx.hideLoading(); | ||
3731 | - wx.navigateTo({ | ||
3732 | - url: "/packageE/pages/cart/cart2/cart2" | ||
3733 | - }); | ||
3734 | - } | ||
3735 | }) | 3734 | }) |
3736 | }, | 3735 | }, |
3737 | 3736 | ||
3738 | - | ||
3739 | //结算到最后一个商品 | 3737 | //结算到最后一个商品 |
3740 | set_last: function (ab, isok, gname) { | 3738 | set_last: function (ab, isok, gname) { |
3741 | if (isok == 0) { | 3739 | if (isok == 0) { |
@@ -4041,7 +4039,6 @@ Page({ | @@ -4041,7 +4039,6 @@ Page({ | ||
4041 | }) | 4039 | }) |
4042 | 4040 | ||
4043 | if (discount) { | 4041 | if (discount) { |
4044 | - | ||
4045 | if (!discount.zp_num || parseInt(discount.zp_num) == 0) discount.zp_num = 1; | 4042 | if (!discount.zp_num || parseInt(discount.zp_num) == 0) discount.zp_num = 1; |
4046 | //判断一下赠品的模式 | 4043 | //判断一下赠品的模式 |
4047 | if (parseInt(discount.zp_mode) == 1) { | 4044 | if (parseInt(discount.zp_mode) == 1) { |
@@ -4567,7 +4564,7 @@ Page({ | @@ -4567,7 +4564,7 @@ Page({ | ||
4567 | "user_id": user_id, | 4564 | "user_id": user_id, |
4568 | } | 4565 | } |
4569 | 4566 | ||
4570 | - //获取秒杀的多规格 | 4567 | + //获取秒杀的多规格 |
4571 | getApp().request.promiseGet(url, { | 4568 | getApp().request.promiseGet(url, { |
4572 | data: req_d | 4569 | data: req_d |
4573 | }).then(res => { | 4570 | }).then(res => { |
pages/goods/goodsInfo/goodsInfo.js
@@ -2068,53 +2068,51 @@ Page({ | @@ -2068,53 +2068,51 @@ Page({ | ||
2068 | th.data.zh_act.zhbuyqty <= th.data.goodsInputNum && (!th.data.zh_act.zh_num || th.data.zh_act.zh_buy_num < th.data.zh_act.zh_num)) { | 2068 | th.data.zh_act.zhbuyqty <= th.data.goodsInputNum && (!th.data.zh_act.zh_num || th.data.zh_act.zh_buy_num < th.data.zh_act.zh_num)) { |
2069 | wx.hideLoading(); | 2069 | wx.hideLoading(); |
2070 | 2070 | ||
2071 | - if ((th.data.zh_act.buy_limit != 0 && th.data.zh_act.buy_limit <= th.data.userbuynum)) { | ||
2072 | - wx.showModal({ | ||
2073 | - title: '提示', | ||
2074 | - // content: `商品${str},组合购活动,购买次数已超,将以普通商品购买?`, | ||
2075 | - content: `${th.data.data.goods_name}超出组合购限购次数,将以普通商品购买`, | ||
2076 | - success: res => { | ||
2077 | - if (res.confirm) { | ||
2078 | - console.log('用户点击确定') | ||
2079 | - //----先看会员在购物车中是否加入了该商品,立即购买的----- | ||
2080 | - getApp().request.get("/api/weshop/cart/page", { | ||
2081 | - data: { | ||
2082 | - store_id: os.stoid, | ||
2083 | - user_id: oo.user_id, | ||
2084 | - state: 1 | ||
2085 | - }, | ||
2086 | - success: function (res) { | ||
2087 | - //-------如果购物车中有相关的数据--------- | ||
2088 | - if (res.data.code == 0 && res.data.data.total > 0) { | ||
2089 | - for (let j in res.data.data.pageData) { | ||
2090 | - let item_j = res.data.data.pageData[j]; | ||
2091 | - var url = '/api/weshop/cart/del/' + e.data.stoid + '/' + item_j.id; | ||
2092 | - getApp().request.delete(url, {}); | ||
2093 | - } | ||
2094 | - } | ||
2095 | - newd.state = 1; | ||
2096 | - newd.prom_type = 0; | ||
2097 | - newd.prom_id = 0 | ||
2098 | - getApp().request.post("/api/weshop/cart/save", { | ||
2099 | - data: newd, | ||
2100 | - success: function (t) { | ||
2101 | - th.closeSpecModal(); | ||
2102 | - getApp().goto("/packageE/pages/cart/cart2/cart2?state=1"); | ||
2103 | - } | ||
2104 | - }); | ||
2105 | - } | ||
2106 | - }) | ||
2107 | - } else if (res.cancel) { | ||
2108 | - | ||
2109 | - console.log('用户点击取消') | ||
2110 | - } | ||
2111 | - } | ||
2112 | - }) | ||
2113 | - } else { | ||
2114 | - | ||
2115 | - | ||
2116 | - //----先看会员在购物车中是否加入了该商品,立即购买的----- | ||
2117 | - getApp().request.get("/api/weshop/cart/page", { | 2071 | + // if ((th.data.zh_act.buy_limit != 0 && th.data.zh_act.buy_limit <= th.data.userbuynum)) { |
2072 | + // wx.showModal({ | ||
2073 | + // title: '提示', | ||
2074 | + // // content: `商品${str},组合购活动,购买次数已超,将以普通商品购买?`, | ||
2075 | + // content: `${th.data.data.goods_name}超出组合购限购次数,将以普通商品购买`, | ||
2076 | + // success: res => { | ||
2077 | + // if (res.confirm) { | ||
2078 | + // console.log('用户点击确定') | ||
2079 | + // //----先看会员在购物车中是否加入了该商品,立即购买的----- | ||
2080 | + // getApp().request.get("/api/weshop/cart/page", { | ||
2081 | + // data: { | ||
2082 | + // store_id: os.stoid, | ||
2083 | + // user_id: oo.user_id, | ||
2084 | + // state: 1 | ||
2085 | + // }, | ||
2086 | + // success: function (res) { | ||
2087 | + // //-------如果购物车中有相关的数据--------- | ||
2088 | + // if (res.data.code == 0 && res.data.data.total > 0) { | ||
2089 | + // for (let j in res.data.data.pageData) { | ||
2090 | + // let item_j = res.data.data.pageData[j]; | ||
2091 | + // var url = '/api/weshop/cart/del/' + e.data.stoid + '/' + item_j.id; | ||
2092 | + // getApp().request.delete(url, {}); | ||
2093 | + // } | ||
2094 | + // } | ||
2095 | + // newd.state = 1; | ||
2096 | + // newd.prom_type = 0; | ||
2097 | + // newd.prom_id = 0 | ||
2098 | + // getApp().request.post("/api/weshop/cart/save", { | ||
2099 | + // data: newd, | ||
2100 | + // success: function (t) { | ||
2101 | + // th.closeSpecModal(); | ||
2102 | + // getApp().goto("/packageE/pages/cart/cart2/cart2?state=1"); | ||
2103 | + // } | ||
2104 | + // }); | ||
2105 | + // } | ||
2106 | + // }) | ||
2107 | + // } else if (res.cancel) { | ||
2108 | + // | ||
2109 | + // console.log('用户点击取消') | ||
2110 | + // } | ||
2111 | + // } | ||
2112 | + // }) | ||
2113 | + // } else { | ||
2114 | + //----先看会员在购物车中是否加入了该商品,立即购买的----- | ||
2115 | + getApp().request.get("/api/weshop/cart/page", { | ||
2118 | data: { | 2116 | data: { |
2119 | store_id: os.stoid, | 2117 | store_id: os.stoid, |
2120 | user_id: oo.user_id, | 2118 | user_id: oo.user_id, |
@@ -2143,7 +2141,7 @@ Page({ | @@ -2143,7 +2141,7 @@ Page({ | ||
2143 | 2141 | ||
2144 | } | 2142 | } |
2145 | }) | 2143 | }) |
2146 | - } | 2144 | + //} |
2147 | 2145 | ||
2148 | 2146 | ||
2149 | return false | 2147 | return false |
utils/more_cx.js
@@ -55,11 +55,20 @@ module.exports = { | @@ -55,11 +55,20 @@ module.exports = { | ||
55 | need_ck=th.data.in_zhact_new[aid]?th.data.in_zhact_new[aid]:0; | 55 | need_ck=th.data.in_zhact_new[aid]?th.data.in_zhact_new[aid]:0; |
56 | } | 56 | } |
57 | if(need_ck+act.zh_buy_num>=act.zh_num ){ | 57 | if(need_ck+act.zh_buy_num>=act.zh_num ){ |
58 | - return false; | 58 | + if(!need_ok) { |
59 | + item_act_map.is_no_ok = 1; | ||
60 | + }else{ | ||
61 | + return false; | ||
62 | + } | ||
59 | }else{ | 63 | }else{ |
60 | min_can_buy= act.zh_num-act.zh_buy_num-need_ck; | 64 | min_can_buy= act.zh_num-act.zh_buy_num-need_ck; |
61 | } | 65 | } |
62 | } | 66 | } |
67 | + | ||
68 | + if(!need_ok) { | ||
69 | + item_act_map.is_no_ok = 1; | ||
70 | + return true; | ||
71 | + } | ||
63 | //-- 判断组合购的限购是不是到了 -- | 72 | //-- 判断组合购的限购是不是到了 -- |
64 | if(act.buy_limit>0){ | 73 | if(act.buy_limit>0){ |
65 | var need_ck0=0; | 74 | var need_ck0=0; |
@@ -67,8 +76,14 @@ module.exports = { | @@ -67,8 +76,14 @@ module.exports = { | ||
67 | need_ck0=th.data.in_zhact_new[aid]?th.data.in_zhact_new[aid]:0; | 76 | need_ck0=th.data.in_zhact_new[aid]?th.data.in_zhact_new[aid]:0; |
68 | } | 77 | } |
69 | var min_can_buy0=0; | 78 | var min_can_buy0=0; |
70 | - if(need_ck+item_act_map.buyed>=act.buy_limit ){ | ||
71 | - return false; | 79 | + if(need_ck+item_act_map.buyed>=act.buy_limit){ |
80 | + if(!need_ok) { | ||
81 | + item_act_map.is_no_ok = 1; | ||
82 | + }else{ | ||
83 | + return false; | ||
84 | + } | ||
85 | + | ||
86 | + | ||
72 | }else{ | 87 | }else{ |
73 | min_can_buy0=act.buy_limit-item_act_map.buyed-need_ck; | 88 | min_can_buy0=act.buy_limit-item_act_map.buyed-need_ck; |
74 | } | 89 | } |