Commit 7d79bebf51f1fc9786c2a15a3efbe287d3ad45f6

Authored by yvan.ni
1 parent 78a54b8f

赠品的超量和限量不限的优化

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);
... ...