Commit 16fb08f88a775354f42b7eba7fd07c8f7c143388

Authored by yvan.ni
1 parent 39f61005

包邮券的优化,多个商品商品不不包邮的情况bug修复

Showing 1 changed file with 16 additions and 10 deletions
pages/cart/cart2/cart2.js
@@ -507,15 +507,15 @@ Page({ @@ -507,15 +507,15 @@ Page({
507 //--有不包邮区域,且不免运费,全场的计算-- 507 //--有不包邮区域,且不免运费,全场的计算--
508 if(no_ex_id && freight_free>0 && o_price>freight_free && c_arr[i].exp_type == 0 && (by_qc.region_list || by_qc.goods_list) ){ 508 if(no_ex_id && freight_free>0 && o_price>freight_free && c_arr[i].exp_type == 0 && (by_qc.region_list || by_qc.goods_list) ){
509 //如果有设置不包邮区域的时候 509 //如果有设置不包邮区域的时候
510 - if(by_qc.region_list){ 510 + if(by_qc.region_list!="" && by_qc.region_list!=null && by_qc.region_list!=undefined ){
511 if(th.check_by_area(by_qc.region_list)){ 511 if(th.check_by_area(by_qc.region_list)){
512 freight_free=0; 512 freight_free=0;
513 th.data.is_no_by[pickid]=1; 513 th.data.is_no_by[pickid]=1;
514 } 514 }
515 } 515 }
516 //如果有设置不包邮区商品 516 //如果有设置不包邮区商品
517 - if(by_qc.goods_list && freight_free){  
518 - no_ex_good=res.data.data.goods_list; 517 + if(by_qc.goods_list!="" && by_qc.goods_list!=undefined && by_qc!=null && freight_free>0){
  518 + no_ex_good=by_qc.goods_list;
519 } 519 }
520 } 520 }
521 521
@@ -525,7 +525,7 @@ Page({ @@ -525,7 +525,7 @@ Page({
525 if(!th.data.isget_by_quan[pickid]){ 525 if(!th.data.isget_by_quan[pickid]){
526 //--判断要不要显示包邮券,链式调用接口--- 526 //--判断要不要显示包邮券,链式调用接口---
527 getApp().request.promiseGet("/api/weshop/userfeemail/pageAndArea",{ 527 getApp().request.promiseGet("/api/weshop/userfeemail/pageAndArea",{
528 - data:{store_id:os.stoid,isuse:0,condition:o_price,user_id:getApp().globalData.user_id} 528 + data:{store_id:os.stoid,isuse:0,condition:o_price,user_id:getApp().globalData.user_id,pageSize:2000}
529 }).then(res=>{ 529 }).then(res=>{
530 if(res.data.code==0 && res.data.data.total>0){ 530 if(res.data.code==0 && res.data.data.total>0){
531 //此时要循环判断包邮的地区,不包邮商品是不是符合 531 //此时要循环判断包邮的地区,不包邮商品是不是符合
@@ -571,6 +571,8 @@ Page({ @@ -571,6 +571,8 @@ Page({
571 var arr2=quan.goods_list.split(","); 571 var arr2=quan.goods_list.split(",");
572 if(ut.isContained(arr,arr2)){ 572 if(ut.isContained(arr,arr2)){
573 getApp().my_warnning("全场不包邮商品和包邮券的重复",0,th); 573 getApp().my_warnning("全场不包邮商品和包邮券的重复",0,th);
  574 + th.data.using_quan[pickid]={};
  575 + th.setData({using_quan:th.data.using_quan})
574 return false; 576 return false;
575 } 577 }
576 var n_arr=ut.mergeArray(arr,arr2); 578 var n_arr=ut.mergeArray(arr,arr2);
@@ -621,10 +623,11 @@ Page({ @@ -621,10 +623,11 @@ Page({
621 623
622 //计算物流价格 624 //计算物流价格
623 if (c_arr[i].exp_type == 0) { 625 if (c_arr[i].exp_type == 0) {
  626 + freight_free=0; //后面不在进行判断
624 var code = th.data.wu_arr[c_arr[i].wind].code; 627 var code = th.data.wu_arr[c_arr[i].wind].code;
625 th.data.cartlist[i].shipping_price = 628 th.data.cartlist[i].shipping_price =
626 th.calculatewuliu(code, o_shipping_price, goods_weight, 629 th.calculatewuliu(code, o_shipping_price, goods_weight,
627 - goods_piece,th.data.user_addr, freight_free, o_price, rs); 630 + goods_piece,th.data.user_addr, freight_free, o_price, rs,);
628 631
629 if(!th.data.using_quan[pickid] || th.data.using_quan[pickid].isby!=1){ 632 if(!th.data.using_quan[pickid] || th.data.using_quan[pickid].isby!=1){
630 if( th.data.cartlist[i].shipping_price ==0) th.data.is_by[pickid]=0; //已经全场包邮,就不要选择券了 633 if( th.data.cartlist[i].shipping_price ==0) th.data.is_by[pickid]=0; //已经全场包邮,就不要选择券了
@@ -758,7 +761,7 @@ Page({ @@ -758,7 +761,7 @@ Page({
758 if(!th.data.isget_by_quan[th.data.bn_pick]){ 761 if(!th.data.isget_by_quan[th.data.bn_pick]){
759 //--判断要不要显示包邮券,链式调用接口--- 762 //--判断要不要显示包邮券,链式调用接口---
760 getApp().request.promiseGet("/api/weshop/userfeemail/pageAndArea",{ 763 getApp().request.promiseGet("/api/weshop/userfeemail/pageAndArea",{
761 - data:{store_id:os.stoid,isuse:0,condition:allpice,user_id:getApp().globalData.user_id} 764 + data:{store_id:os.stoid,isuse:0,condition:allpice,user_id:getApp().globalData.user_id,pageSize:2000}
762 }).then(res=>{ 765 }).then(res=>{
763 if(res.data.code==0 && res.data.data.total>0){ 766 if(res.data.code==0 && res.data.data.total>0){
764 //此时要循环判断包邮的地区,不包邮商品是不是符合 767 //此时要循环判断包邮的地区,不包邮商品是不是符合
@@ -1293,11 +1296,14 @@ Page({ @@ -1293,11 +1296,14 @@ Page({
1293 } 1296 }
1294 1297
1295 th.setData({ is_all_zt: iszt }); 1298 th.setData({ is_all_zt: iszt });
1296 -  
1297 -  
1298 1299
1299 - if(th.data.using_quan[th.data.bn_pick] && th.data.using_quan[th.data.bn_pick].isby==1){  
1300 - th.setData({using_quan:{}}); 1300 + var ind=t.currentTarget.dataset.ind;
  1301 + var c_item=th.data.cartlist[ind];
  1302 + var pickid=c_item.pickup_id;
  1303 +
  1304 + if(th.data.using_quan[pickid] && th.data.using_quan[pickid].isby==1){
  1305 + th.data.using_quan[pickid]={};
  1306 + th.setData({using_quan:th.data.using_quan});
1301 } 1307 }
1302 1308
1303 1309