Commit fef0c4c0ec3e15674ad48055e6c8ccf2be826345
1 parent
2daab0cd
1.就是优惠券的钱要减掉来判断包邮的条件
2. 购买等级卡返回
Showing
1 changed file
with
72 additions
and
67 deletions
pages/cart/cart2/cart2.js
... | ... | @@ -120,7 +120,8 @@ Page({ |
120 | 120 | wx.setNavigationBarTitle({ title: "填写订单",}) |
121 | 121 | var th = this; this.setData({ is_b_now: t.is_bnow == undefined ? 0 : t.is_bnow,}); |
122 | 122 | th.data.param=t; |
123 | - | |
123 | + //清理一下,确保最新的系统配置 | |
124 | + getApp().globalData.config2=null; | |
124 | 125 | //清空is_pick_up |
125 | 126 | getApp().request.put("/api/weshop/useraddress/updatePickUp", { |
126 | 127 | data: {user_id: getApp().globalData.user_id, is_pickup: 0}, |
... | ... | @@ -207,11 +208,13 @@ Page({ |
207 | 208 | },500)--*/ |
208 | 209 | |
209 | 210 | }); |
210 | - //--更新默认地址--,看一下是不是跳到地址页面 | |
211 | - if(!getApp().globalData.is_cart_old){ | |
211 | + var is_card_back=getApp().globalData.is_card_back; | |
212 | + //--更新默认地址--,看一下是不是跳到地址页面,同时也不是购买等级卡返回的,这里很重要,否则会重新更新收货物流公司 | |
213 | + if(!getApp().globalData.is_cart_old && !is_card_back && !getApp().globalData.plus_buy_back){ | |
212 | 214 | this.update_code(); |
213 | 215 | }else{ |
214 | 216 | getApp().globalData.is_cart_old=0; |
217 | + getApp().globalData.plus_buy_back=0; | |
215 | 218 | } |
216 | 219 | } |
217 | 220 | |
... | ... | @@ -984,7 +987,37 @@ Page({ |
984 | 987 | var o_price=0; |
985 | 988 | var o_shipping_price=0,goods_weight=-1, goods_piece=-1; |
986 | 989 | var item=c_arr[i].goods; //就是每一单的从表的意思 |
987 | - | |
990 | + | |
991 | + //---如果有选择优惠券的情况下--- | |
992 | + var quan_price=0; | |
993 | + var coupon_price=0; | |
994 | + var quan_no= null; | |
995 | + | |
996 | + if(th.data.using_quan[pickid]!=null && th.data.using_quan[pickid]!=undefined) | |
997 | + quan_no=th.data.using_quan[pickid].coupon_no; | |
998 | + | |
999 | + //普通券的时候 | |
1000 | + if(quan_no && th.data.using_quan[pickid].isby!=1){ | |
1001 | + //---获取优惠券优惠--- | |
1002 | + await getApp().request.promiseGet("/api/weshop/couponList/getUseCouponPrice", { | |
1003 | + data: { | |
1004 | + storeId: oo.stoid, | |
1005 | + CashRepNo: quan_no, | |
1006 | + WaresSum: cart_item.check_quan_price_list, | |
1007 | + WareIds: cart_item.check_quan_ware_list | |
1008 | + } | |
1009 | + }).then(res => { | |
1010 | + if (res.data.code == 0 && res.data.data.length > 0) { | |
1011 | + var q_data = res.data.data; | |
1012 | + //--存储商品优惠的内容-- | |
1013 | + cart_item.quan_youhui_list = q_data; | |
1014 | + for (var k in q_data) | |
1015 | + quan_price += q_data[k].WareCashSum; | |
1016 | + } | |
1017 | + }) | |
1018 | + } | |
1019 | + | |
1020 | + | |
988 | 1021 | //--------循环计算总价----------- |
989 | 1022 | for(var j=0;j<item.length;j++){ |
990 | 1023 | o_price += item[j].goods_price * item[j].goods_num; |
... | ... | @@ -996,14 +1029,14 @@ Page({ |
996 | 1029 | |
997 | 1030 | //判断包邮券的钱 |
998 | 1031 | var q_conditin=0; |
999 | - q_conditin=o_price; | |
1032 | + q_conditin=o_price-quan_price; | |
1000 | 1033 | |
1001 | 1034 | cart_item.goods_price = f_o_price.toFixed(2); //商品总费用,用f_o_price来计算 |
1002 | 1035 | //计算物流费用 |
1003 | 1036 | cart_item.shipping_price = 0; |
1004 | 1037 | |
1005 | - //--有不包邮区域,且不免运费,全场的计算-- | |
1006 | - if(no_ex_id && freight_free>0 && o_price>=freight_free && cart_item.exp_type == 0 && (by_qc.region_list || by_qc.goods_list) ){ | |
1038 | + //--有不包邮区域,且不免运费,全场的计算,要减到优惠金额 和券的金额-- | |
1039 | + if(no_ex_id && freight_free>0 && (o_price-quan_price)>=freight_free && cart_item.exp_type == 0 && (by_qc.region_list || by_qc.goods_list) ){ | |
1007 | 1040 | //如果有设置不包邮区域的时候 |
1008 | 1041 | if(by_qc.region_list!="" && by_qc.region_list!=null && by_qc.region_list!=undefined ){ |
1009 | 1042 | if(th.check_by_area(by_qc.region_list)){ |
... | ... | @@ -1055,12 +1088,7 @@ Page({ |
1055 | 1088 | }) |
1056 | 1089 | } |
1057 | 1090 | } |
1058 | - | |
1059 | - var quan_no=null; | |
1060 | - if(th.data.using_quan[pickid]){ | |
1061 | - quan_no=th.data.using_quan[pickid].coupon_no; | |
1062 | - } | |
1063 | - | |
1091 | + | |
1064 | 1092 | //如果是包邮券的时候,要看看券的情况 |
1065 | 1093 | if(quan_no && th.data.using_quan[pickid].isby==1){ |
1066 | 1094 | var quan=th.data.using_quan[pickid]; |
... | ... | @@ -1101,7 +1129,7 @@ Page({ |
1101 | 1129 | } |
1102 | 1130 | |
1103 | 1131 | //如果达到全场包邮的条件,同时,没有地区不包邮,或者商品不包邮 |
1104 | - if(o_price>=freight_free && freight_free>0 && !is_good_no_by && th.data.is_no_by[pickid]!=1){ | |
1132 | + if(o_price-quan_price>=freight_free && freight_free>0 && !is_good_no_by && th.data.is_no_by[pickid]!=1){ | |
1105 | 1133 | continue; |
1106 | 1134 | } |
1107 | 1135 | |
... | ... | @@ -1140,7 +1168,7 @@ Page({ |
1140 | 1168 | code=th.data.wu_arr[cart_item.wind].code; |
1141 | 1169 | cart_item.shipping_price = |
1142 | 1170 | th.calculatewuliu(code, o_shipping_price, goods_weight, |
1143 | - goods_piece,th.data.user_addr, freight_free, o_price, rs); | |
1171 | + goods_piece,th.data.user_addr, freight_free, o_price-quan_price, rs); | |
1144 | 1172 | |
1145 | 1173 | if(!th.data.using_quan[pickid] || th.data.using_quan[pickid].isby!=1){ |
1146 | 1174 | if( cart_item.shipping_price ==0) th.data.is_by[pickid]=1; //已经全场包邮,就不要选择券了 |
... | ... | @@ -1150,38 +1178,7 @@ Page({ |
1150 | 1178 | } |
1151 | 1179 | |
1152 | 1180 | cart_item.shipping_price=cart_item.shipping_price.toFixed(2); |
1153 | - //---如果有选择优惠券的情况下--- | |
1154 | - var quan_price=0; | |
1155 | - var coupon_price=0; | |
1156 | - var quan_no= null; | |
1157 | - | |
1158 | - if(th.data.using_quan[pickid]!=null && th.data.using_quan[pickid]!=undefined) | |
1159 | - quan_no=th.data.using_quan[pickid].coupon_no; | |
1160 | - | |
1161 | - if(quan_no){ | |
1162 | - //如果不是包邮券的时候 | |
1163 | - if(th.data.using_quan[pickid] && th.data.using_quan[pickid].isby!=1) { | |
1164 | - var ui=2; | |
1165 | - //---获取优惠券优惠--- | |
1166 | - await getApp().request.promiseGet("/api/weshop/couponList/getUseCouponPrice", { | |
1167 | - data: { | |
1168 | - storeId: oo.stoid, | |
1169 | - CashRepNo: quan_no, | |
1170 | - WaresSum: cart_item.check_quan_price_list, | |
1171 | - WareIds: cart_item.check_quan_ware_list | |
1172 | - } | |
1173 | - }).then(res => { | |
1174 | - if (res.data.code == 0 && res.data.data.length > 0) { | |
1175 | - var q_data = res.data.data; | |
1176 | - //--存储商品优惠的内容-- | |
1177 | - cart_item.quan_youhui_list = q_data; | |
1178 | - for (var k in q_data) | |
1179 | - quan_price += q_data[k].WareCashSum; | |
1180 | - } | |
1181 | - }) | |
1182 | - } | |
1183 | - } | |
1184 | - | |
1181 | + | |
1185 | 1182 | //总价计算,总价不包含运费 |
1186 | 1183 | cart_item.order_amount= (o_price -quan_price).toFixed(2); |
1187 | 1184 | cart_item.total_amount= f_o_price.toFixed(2); |
... | ... | @@ -1368,12 +1365,32 @@ Page({ |
1368 | 1365 | to.getwuliuprice(async function (rs) { |
1369 | 1366 | |
1370 | 1367 | var o_shipping_price = 0, goods_weight = -1, goods_piece = -1; |
1368 | + | |
1369 | + //---如果有选择优惠券的情况下--- | |
1370 | + var quan_price=0,bn_pick=th.data.bn_pick; | |
1371 | + var quan_no=null; | |
1372 | + if(th.data.using_quan[bn_pick]!=null && th.data.using_quan[bn_pick]!=undefined) | |
1373 | + quan_no=th.data.using_quan[bn_pick].coupon_no; | |
1374 | + | |
1375 | + if(quan_no){ | |
1376 | + if(th.data.using_quan[bn_pick].isby!=1){ | |
1377 | + //---获取优惠券优惠--- | |
1378 | + await getApp().request.promiseGet("/api/weshop/couponList/getUseCouponPrice",{ | |
1379 | + data:{storeId:oo.stoid,CashRepNo:quan_no, WaresSum:th.data.ckeck_quan_price, WareIds:th.data.check_quan_ware_list} | |
1380 | + }).then(res=>{ | |
1381 | + if(res.data.code==0){ | |
1382 | + quan_price=res.data.data[0].WareCashSum; | |
1383 | + } | |
1384 | + }) | |
1385 | + } | |
1386 | + } | |
1387 | + | |
1371 | 1388 | //-----------当地址不为空,且是物流时,计算物流费用,并同时商品不是优惠活动的包邮---------- |
1372 | 1389 | if (th.data.user_addr != null && th.data.bn_exp_type == 0 && good.is_free_shipping == 0 && good.is_past!=1 ){ |
1373 | 1390 | //看是不是有调用过包邮券 |
1374 | 1391 | if(!th.data.isget_by_quan[th.data.bn_pick] && good.is_xz_yh!=1){ |
1375 | - var condition=allpice-cut_price; | |
1376 | - //--判断要不要显示包邮券,链式调用接口,调取包邮券,已经是减了优惠的金额--- | |
1392 | + var condition=allpice-cut_price-quan_price; | |
1393 | + //--判断要不要显示包邮券,链式调用接口,调取包邮券,已经是减了优惠的金额,见到优惠券的钱--- | |
1377 | 1394 | getApp().request.promiseGet("/api/weshop/userfeemail/pageAndArea",{ |
1378 | 1395 | data:{store_id:os.stoid,isuse:0,condition:condition,user_id:getApp().globalData.user_id,pageSize:2000} |
1379 | 1396 | }).then(res=>{ |
... | ... | @@ -1417,8 +1434,10 @@ Page({ |
1417 | 1434 | |
1418 | 1435 | var no_by_data=null; |
1419 | 1436 | var gift_freight_free=freight_free; |
1437 | + | |
1438 | + | |
1420 | 1439 | //有不包邮区域,且不免运费 |
1421 | - if(no_ex_id && freight_free>0 && freight_free<=allpice-cut_price){ | |
1440 | + if(no_ex_id && freight_free>0 && freight_free<= parseFloat(allpice)-cut_price-quan_price){ | |
1422 | 1441 | //-----------获取不包邮区域,不包邮商品------- |
1423 | 1442 | await getApp().request.promiseGet("/api/weshop/areaFeemail/getAreaGoods",{ |
1424 | 1443 | data:{store_id:os.stoid,id:no_ex_id} |
... | ... | @@ -1447,11 +1466,11 @@ Page({ |
1447 | 1466 | //--------------开始计算物流------------------ |
1448 | 1467 | var shipping_price= |
1449 | 1468 | th.calculatewuliu(code, o_shipping_price, goods_weight, |
1450 | - goods_piece, th.data.user_addr, freight_free, allpice-cut_price, rs); | |
1469 | + goods_piece, th.data.user_addr, freight_free, parseFloat(allpice)-cut_price-quan_price, rs); | |
1451 | 1470 | |
1452 | 1471 | //如果有赠品的时候,也要计算赠品的物流费用 |
1453 | 1472 | if(th.data.buy_now_gift_goods){ |
1454 | - shipping_price=th.get_now_gift_goods_wuliu(code, o_shipping_price, th.data.user_addr, gift_freight_free, allpice-cut_price, rs,shipping_price,no_by_data); | |
1473 | + shipping_price=th.get_now_gift_goods_wuliu(code, o_shipping_price, th.data.user_addr, gift_freight_free, parseFloat(allpice)-cut_price-quan_price, rs,shipping_price,no_by_data); | |
1455 | 1474 | } |
1456 | 1475 | |
1457 | 1476 | if(shipping_price<=0){ |
... | ... | @@ -1466,26 +1485,12 @@ Page({ |
1466 | 1485 | var wl_txt = "formData.shipping_price"; |
1467 | 1486 | th.setData({ [wl_txt]: 0, }) |
1468 | 1487 | } |
1469 | - //---如果有选择优惠券的情况下--- | |
1470 | - var quan_price=0,bn_pick=th.data.bn_pick; | |
1471 | - var quan_no=null; | |
1472 | - if(th.data.using_quan[bn_pick]!=null && th.data.using_quan[bn_pick]!=undefined) | |
1473 | - quan_no=th.data.using_quan[bn_pick].coupon_no; | |
1488 | + | |
1474 | 1489 | if(quan_no){ |
1475 | - var aa=1; | |
1476 | 1490 | if(th.data.using_quan[bn_pick].isby==1){ |
1477 | 1491 | shipping_price=0; |
1478 | 1492 | var wl_txt = "formData.shipping_price"; |
1479 | 1493 | th.setData({ [wl_txt]: 0, }) |
1480 | - }else{ | |
1481 | - //---获取优惠券优惠--- | |
1482 | - await getApp().request.promiseGet("/api/weshop/couponList/getUseCouponPrice",{ | |
1483 | - data:{storeId:oo.stoid,CashRepNo:quan_no, WaresSum:th.data.ckeck_quan_price, WareIds:th.data.check_quan_ware_list} | |
1484 | - }).then(res=>{ | |
1485 | - if(res.data.code==0){ | |
1486 | - quan_price=res.data.data[0].WareCashSum; | |
1487 | - } | |
1488 | - }) | |
1489 | 1494 | } |
1490 | 1495 | } |
1491 | 1496 | //-----------------支付价,优惠券不减物流----------------- | ... | ... |