Commit 7d79bebf51f1fc9786c2a15a3efbe287d3ad45f6
1 parent
78a54b8f
赠品的超量和限量不限的优化
Showing
3 changed files
with
36 additions
and
12 deletions
packageE/pages/cart/cart2/cart2.js
| ... | ... | @@ -2373,11 +2373,16 @@ Page({ |
| 2373 | 2373 | for (let iy in get_data.giftsinfo) { |
| 2374 | 2374 | let item = get_data.giftsinfo[iy]; |
| 2375 | 2375 | |
| 2376 | + var c_zp=0; | |
| 2376 | 2377 | if(parseInt(item.limit_num)>0){ |
| 2377 | - can_zp_num += parseInt(item.gift_storecount) > parseInt(item.limit_num) ? parseInt(item.limit_num) : parseInt(item.gift_storecount); | |
| 2378 | + c_zp= parseInt(item.gift_storecount) > parseInt(item.can_num) ? parseInt(item.can_num) : parseInt(item.gift_storecount); | |
| 2378 | 2379 | }else{ |
| 2379 | - can_zp_num += parseInt(item.gift_storecount); | |
| 2380 | + c_zp= parseInt(item.gift_storecount); | |
| 2380 | 2381 | } |
| 2382 | + | |
| 2383 | + if(c_zp<0) c_zp=0; | |
| 2384 | + can_zp_num +=c_zp; | |
| 2385 | + | |
| 2381 | 2386 | } |
| 2382 | 2387 | |
| 2383 | 2388 | var t_zp_num = parseInt(get_data.zp_num) * parseInt(get_data.bs); |
| ... | ... | @@ -7286,7 +7291,7 @@ Page({ |
| 7286 | 7291 | return false; |
| 7287 | 7292 | } |
| 7288 | 7293 | //-- 限购一定要大于0,否则就是不限的意思 -- |
| 7289 | - if (discount.limit_num>0 && discount.limit_num < all_limit_num) { | |
| 7294 | + if (discount.limit_num>0 && discount.can_num < all_limit_num) { | |
| 7290 | 7295 | wx.showToast({ |
| 7291 | 7296 | title: "超出赠品限购", |
| 7292 | 7297 | icon: 'none', |
| ... | ... | @@ -7309,12 +7314,17 @@ Page({ |
| 7309 | 7314 | var all_num = 0; |
| 7310 | 7315 | for (let i in giftsinfo) { |
| 7311 | 7316 | let item = giftsinfo[i]; |
| 7312 | - if (!item.selected) continue; | |
| 7313 | - | |
| 7314 | - if(item.must_num>0 && item.goods_num<item.must_num){ | |
| 7317 | + if(item.must_num>0 ){ | |
| 7318 | + if(!item.selected){ | |
| 7319 | + ut.m_toast("必送的赠品没有选中"); | |
| 7320 | + return false; | |
| 7321 | + } | |
| 7322 | + if(item.goods_num<item.must_num){ | |
| 7315 | 7323 | ut.m_toast("活动赠品的超量数量不足"); |
| 7316 | 7324 | return false; |
| 7325 | + } | |
| 7317 | 7326 | } |
| 7327 | + if (!item.selected) continue; | |
| 7318 | 7328 | all_num += item.goods_num; |
| 7319 | 7329 | } |
| 7320 | 7330 | if (all_num > zp_num) { |
| ... | ... | @@ -7515,14 +7525,18 @@ Page({ |
| 7515 | 7525 | var gf_pr_name = item_arr[ip].gf_pr_name; |
| 7516 | 7526 | var zp_num = item_arr[ip].zp_num; |
| 7517 | 7527 | var giftsinfo = item_arr[ip].giftsinfo; |
| 7528 | + | |
| 7518 | 7529 | var limit_all = 0; |
| 7519 | 7530 | var stock_all = 0; |
| 7531 | + var no_limit=0; | |
| 7532 | + | |
| 7520 | 7533 | for (let iu in giftsinfo) { |
| 7521 | 7534 | let gf_item = giftsinfo[iu]; |
| 7522 | - limit_all += gf_item.limit_num; | |
| 7535 | + limit_all += gf_item.can_num>0?gf_item.can_num:0; | |
| 7523 | 7536 | stock_all += gf_item.gift_storecount; |
| 7537 | + if(gf_item.limit_num<=0) no_limit=1; | |
| 7524 | 7538 | } |
| 7525 | - if (limit_all < zp_num) { | |
| 7539 | + if (!no_limit && limit_all < zp_num) { | |
| 7526 | 7540 | error_arr.push(gf_pr_name + "限购不足"); |
| 7527 | 7541 | } |
| 7528 | 7542 | if (stock_all < zp_num) { | ... | ... |
packageE/pages/cart/cart2/cart2.wxml
| ... | ... | @@ -1066,7 +1066,7 @@ |
| 1066 | 1066 | {{items.goodsinfo.goods_color}}{{items.goodsinfo.goods_color?"/":''}}{{items.goodsinfo.goods_spec}}</view> |
| 1067 | 1067 | <view wx:else>规格1</view> |
| 1068 | 1068 | </view> |
| 1069 | - <text class="c-red" wx:if="{{items.must_num>0 && items.limit_num>0 && items.must_num>items.limit_num}}">(超量不足)</text> | |
| 1069 | + <text class="c-red" wx:if="{{items.must_num>0 && items.limit_num>0 && items.must_num>items.can_num}}">(超量不足)</text> | |
| 1070 | 1070 | <text class="c-red" wx:elif="{{items.must_num>0}}">必选{{items.must_num}}件</text> |
| 1071 | 1071 | |
| 1072 | 1072 | </view> | ... | ... |
pages/cart/cart/cart.js
| ... | ... | @@ -4154,11 +4154,14 @@ Page({ |
| 4154 | 4154 | for (let iy in discount.giftsinfo) { |
| 4155 | 4155 | let item = discount.giftsinfo[iy]; |
| 4156 | 4156 | |
| 4157 | + var c_zp=0; | |
| 4157 | 4158 | if(parseInt(item.limit_num)>0){ |
| 4158 | - can_zp_num += parseInt(item.gift_storecount) > parseInt(item.limit_num) ? parseInt(item.limit_num) : parseInt(item.gift_storecount); | |
| 4159 | + c_zp= parseInt(item.gift_storecount) > parseInt(item.can_num) ? parseInt(item.can_num) : parseInt(item.gift_storecount); | |
| 4159 | 4160 | }else{ |
| 4160 | - can_zp_num += parseInt(item.gift_storecount); | |
| 4161 | + c_zp= parseInt(item.gift_storecount); | |
| 4161 | 4162 | } |
| 4163 | + if(c_zp<0) c_zp=0; | |
| 4164 | + can_zp_num +=c_zp; | |
| 4162 | 4165 | } |
| 4163 | 4166 | |
| 4164 | 4167 | var t_zp_num = parseInt(discount.zp_num) * parseInt(discount.bs); |
| ... | ... | @@ -4480,7 +4483,14 @@ Page({ |
| 4480 | 4483 | var a_limit_num = 0; |
| 4481 | 4484 | for (let iy in discount.giftsinfo) { |
| 4482 | 4485 | let item = discount.giftsinfo[iy]; |
| 4483 | - can_zp_num += parseInt(item.gift_storecount) > parseInt(item.limit_num) ? parseInt(item.limit_num) : parseInt(item.gift_storecount); | |
| 4486 | + var c_zp=0; | |
| 4487 | + if(parseInt(item.limit_num)>0) { | |
| 4488 | + c_zp= parseInt(item.gift_storecount) > parseInt(item.can_num) ? parseInt(item.can_num) : parseInt(item.gift_storecount); | |
| 4489 | + }else{ | |
| 4490 | + c_zp= parseInt(item.gift_storecount) | |
| 4491 | + } | |
| 4492 | + if(c_zp<0) c_zp=0; | |
| 4493 | + can_zp_num +=c_zp; | |
| 4484 | 4494 | } |
| 4485 | 4495 | |
| 4486 | 4496 | var t_zp_num = parseInt(discount.zp_num) * parseInt(discount.bs); | ... | ... |