Commit ab4fb495d8beb172d30bcbdfcb3dd5df154aa433
1 parent
5ea73552
运费的计算
Showing
1 changed file
with
32 additions
and
24 deletions
packageE/pages/cart/cart2/cart2.js
@@ -718,8 +718,12 @@ Page({ | @@ -718,8 +718,12 @@ Page({ | ||
718 | //如果有购买活动 | 718 | //如果有购买活动 |
719 | item1.promgoodsbuynum = promgoodsbuynum; | 719 | item1.promgoodsbuynum = promgoodsbuynum; |
720 | 720 | ||
721 | + //默认是包邮和优惠的 | ||
722 | + item1.is_order_yh=1; | ||
723 | + item1.is_post_temp=1; | ||
724 | + | ||
721 | //如果是秒杀,团购的时候 | 725 | //如果是秒杀,团购的时候 |
722 | - if([1,2].indexOf(item1.prom_type)>-1){ | 726 | + if([1,2,6].indexOf(item1.prom_type)>-1){ |
723 | var url= "/api/weshop/activitylist/getSJGoodsPriceNew/" + os.stoid | 727 | var url= "/api/weshop/activitylist/getSJGoodsPriceNew/" + os.stoid |
724 | + "/" + item1.goods_id + "/"+item1.prom_type+"/" + item1.prom_id + "/" + app.globalData.user_id; | 728 | + "/" + item1.goods_id + "/"+item1.prom_type+"/" + item1.prom_id + "/" + app.globalData.user_id; |
725 | await app.request.promiseGet(url,{}).then(res=>{ | 729 | await app.request.promiseGet(url,{}).then(res=>{ |
@@ -2075,7 +2079,6 @@ Page({ | @@ -2075,7 +2079,6 @@ Page({ | ||
2075 | var no_order_yh = 0; //-- 有些活动不能和订单优惠叠加的金额 -- | 2079 | var no_order_yh = 0; //-- 有些活动不能和订单优惠叠加的金额 -- |
2076 | var no_post_temp = 0; //-- 有些活动不能和包邮模板的金额 -- | 2080 | var no_post_temp = 0; //-- 有些活动不能和包邮模板的金额 -- |
2077 | 2081 | ||
2078 | - | ||
2079 | if (th.data.using_quan[pickid] != null && th.data.using_quan[pickid] != undefined) | 2082 | if (th.data.using_quan[pickid] != null && th.data.using_quan[pickid] != undefined) |
2080 | quan_no = th.data.using_quan[pickid].coupon_no; | 2083 | quan_no = th.data.using_quan[pickid].coupon_no; |
2081 | 2084 | ||
@@ -2103,40 +2106,42 @@ Page({ | @@ -2103,40 +2106,42 @@ Page({ | ||
2103 | 2106 | ||
2104 | var whsle_goods_price = 0; | 2107 | var whsle_goods_price = 0; |
2105 | //--------循环计算总价----------- | 2108 | //--------循环计算总价----------- |
2106 | - for (var j = 0; j < item.length; j++) { | 2109 | + for (var jc = 0; jc < item.length; jc++) { |
2107 | 2110 | ||
2108 | - if (item[j].whsle_id > 0) { | ||
2109 | - whsle_goods_price += item[j].goods_price * item[j].goods_num; | 2111 | + if (item[jc].whsle_id > 0) { |
2112 | + whsle_goods_price += item[jc].goods_price * item[jc].goods_num; | ||
2110 | } | 2113 | } |
2111 | 2114 | ||
2112 | var is_no_zh = 0; | 2115 | var is_no_zh = 0; |
2113 | - if (item[j].prom_type != 7 && item[j].prom_type != 10) is_no_zh = 1; | 2116 | + if (item[jc].prom_type != 7 && item[jc].prom_type != 10) is_no_zh = 1; |
2114 | 2117 | ||
2115 | //组合购的商品,且有订单优惠的叠加,is_orderyh就是优惠叠加 | 2118 | //组合购的商品,且有订单优惠的叠加,is_orderyh就是优惠叠加 |
2116 | - if (item[j].prom_type == 7 && th.data.zhhe_act_map && th.data.zhhe_act_map[item[j].prom_id] | ||
2117 | - && th.data.zhhe_act_map[item[j].prom_id].is_orderyh) { | 2119 | + if (item[jc].prom_type == 7 && th.data.zhhe_act_map && th.data.zhhe_act_map[item[jc].prom_id] |
2120 | + && th.data.zhhe_act_map[item[jc].prom_id].is_orderyh) { | ||
2118 | is_no_zh = 1; | 2121 | is_no_zh = 1; |
2119 | } | 2122 | } |
2120 | //阶梯购的商品,且有订单优惠的叠加,is_orderyh就是优惠叠加 | 2123 | //阶梯购的商品,且有订单优惠的叠加,is_orderyh就是优惠叠加 |
2121 | - if (item[j].prom_type == 10 && ladder_prom_goods && ladder_prom_goods[item[j].prom_id] | ||
2122 | - && th.data.ladder_map[item[j].prom_id].is_useorderyh) { | 2124 | + if (item[jc].prom_type == 10 && ladder_prom_goods && ladder_prom_goods[item[jc].prom_id] |
2125 | + && th.data.ladder_map[item[jc].prom_id].is_useorderyh) { | ||
2123 | is_no_zh = 1; | 2126 | is_no_zh = 1; |
2124 | } | 2127 | } |
2125 | 2128 | ||
2126 | if (is_no_zh) { | 2129 | if (is_no_zh) { |
2127 | - o_price_no_zh += item[j].goods_price * item[j].goods_num; | 2130 | + o_price_no_zh += item[jc].goods_price * item[jc].goods_num; |
2128 | } | 2131 | } |
2129 | - o_price += item[j].goods_price * item[j].goods_num; | ||
2130 | - | 2132 | + o_price += item[jc].goods_price * item[jc].goods_num; |
2131 | 2133 | ||
2132 | - //-- 秒杀, 团购的时候,判断有没有订单优惠和包邮模板的叠加 -- | ||
2133 | - if( [1,2].indexOf(item[j].prom_type)>-1){ | ||
2134 | - if(!item[j].is_order_yh) | ||
2135 | - no_order_yh+=item[j].goods_price * item[j].goods_num; | ||
2136 | - if(!item[j].is_post_temp) | ||
2137 | - no_post_temp+=item[j].goods_price * item[j].goods_num; | 2134 | + //--- 秒杀, 团购的时候,判断有没有订单优惠和包邮模板的叠加 --- |
2135 | + if( [1,2,6].indexOf(item[jc].prom_type)>-1){ | ||
2136 | + if(!item[jc].is_order_yh){ | ||
2137 | + no_order_yh+=item[jc].goods_price * item[jc].goods_num; | ||
2138 | + } | ||
2139 | + if(!item[jc].is_post_temp){ | ||
2140 | + no_post_temp+=item[jc].goods_price * item[jc].goods_num; | ||
2141 | + } | ||
2138 | } | 2142 | } |
2139 | } | 2143 | } |
2144 | + | ||
2140 | //判断是不是有组合购的金额 | 2145 | //判断是不是有组合购的金额 |
2141 | var f_o_price = o_price; | 2146 | var f_o_price = o_price; |
2142 | //如果又优惠的钱,就要减价 | 2147 | //如果又优惠的钱,就要减价 |
@@ -2259,8 +2264,6 @@ Page({ | @@ -2259,8 +2264,6 @@ Page({ | ||
2259 | if (rs.data.code == 0) back_data = rs.data.data; | 2264 | if (rs.data.code == 0) back_data = rs.data.data; |
2260 | }); | 2265 | }); |
2261 | } | 2266 | } |
2262 | - | ||
2263 | - | ||
2264 | } | 2267 | } |
2265 | 2268 | ||
2266 | 2269 | ||
@@ -2315,7 +2318,9 @@ Page({ | @@ -2315,7 +2318,9 @@ Page({ | ||
2315 | continue; | 2318 | continue; |
2316 | } | 2319 | } |
2317 | 2320 | ||
2318 | - if (back_data && back_data['is_by_all'] && (!back_data.no_free_goods || back_data.no_free_goods.indexOf(item[j].goods_id) == -1)) { | 2321 | + debugger; |
2322 | + if (back_data && back_data['is_by_all'] && item[j].is_post_temp | ||
2323 | + && (!back_data.no_free_goods || back_data.no_free_goods.indexOf(item[j].goods_id) == -1)) { | ||
2319 | 2324 | ||
2320 | if (item[j]['exp_sum_type'] == 2 && back_data.weight_free > 0) { | 2325 | if (item[j]['exp_sum_type'] == 2 && back_data.weight_free > 0) { |
2321 | if (goods_weight < 0) goods_weight = 0; | 2326 | if (goods_weight < 0) goods_weight = 0; |
@@ -2355,7 +2360,7 @@ Page({ | @@ -2355,7 +2360,7 @@ Page({ | ||
2355 | 2360 | ||
2356 | } | 2361 | } |
2357 | 2362 | ||
2358 | - //如果是正值的时候 | 2363 | + //如果是正值的时候,多少重量内免运费 |
2359 | if (out_of_weight >= 0) out_of_weight = -cut_good_weight; | 2364 | if (out_of_weight >= 0) out_of_weight = -cut_good_weight; |
2360 | else out_of_weight = -back_data.weight_free * 1000; | 2365 | else out_of_weight = -back_data.weight_free * 1000; |
2361 | 2366 | ||
@@ -2366,6 +2371,9 @@ Page({ | @@ -2366,6 +2371,9 @@ Page({ | ||
2366 | // cart_item.shipping_price = | 2371 | // cart_item.shipping_price = |
2367 | // ut.calculatewuliu(code, o_shipping_price, goods_weight, out_of_weight,goods_piece, th.data.user_addr, back_data, rs); | 2372 | // ut.calculatewuliu(code, o_shipping_price, goods_weight, out_of_weight,goods_piece, th.data.user_addr, back_data, rs); |
2368 | 2373 | ||
2374 | + var no_free=back_data && back_data.no_free_goods && back_data.no_free_goods.length > 0 ? 1 : 0 | ||
2375 | + | ||
2376 | + | ||
2369 | var w_data = { | 2377 | var w_data = { |
2370 | store_id: os.stoid, code: code, | 2378 | store_id: os.stoid, code: code, |
2371 | o_shipping_price: o_shipping_price, | 2379 | o_shipping_price: o_shipping_price, |
@@ -2375,7 +2383,7 @@ Page({ | @@ -2375,7 +2383,7 @@ Page({ | ||
2375 | user_addr_city: th.data.user_addr.city, | 2383 | user_addr_city: th.data.user_addr.city, |
2376 | user_addr_district: th.data.user_addr.district, | 2384 | user_addr_district: th.data.user_addr.district, |
2377 | is_by_all: back_data && back_data.is_by_all ? 1 : 0, | 2385 | is_by_all: back_data && back_data.is_by_all ? 1 : 0, |
2378 | - no_free_goods: back_data && back_data.no_free_goods && back_data.no_free_goods.length > 0 ? 1 : 0, | 2386 | + no_free_goods: no_post_temp>0 || no_free?1:0 , |
2379 | } | 2387 | } |
2380 | 2388 | ||
2381 | var is_ok = 1; | 2389 | var is_ok = 1; |