Commit 674924edb3372a347ae9b6b4bd03032458a069b2

Authored by yvan.ni
1 parent cc3629d6

cart2 多活动的优化

Showing 1 changed file with 205 additions and 434 deletions
packageE/pages/cart/cart2/cart2.js
@@ -1940,15 +1940,12 @@ Page({ @@ -1940,15 +1940,12 @@ Page({
1940 1940
1941 //调用函数计算每件组合购商品的单价, 1941 //调用函数计算每件组合购商品的单价,
1942 await zh_calc.calc_zh_split_price(c_arr, th); 1942 await zh_calc.calc_zh_split_price(c_arr, th);
1943 -  
1944 //调用函数计算每件阶梯促销商品的单价, 1943 //调用函数计算每件阶梯促销商品的单价,
1945 await ladder_calc.calc_split_price(c_arr, th); 1944 await ladder_calc.calc_split_price(c_arr, th);
1946 //调用函数计算,优惠券优惠什么商品价格,优惠券优惠什么商品 1945 //调用函数计算,优惠券优惠什么商品价格,优惠券优惠什么商品
1947 -  
1948 await th.get_cart_quan(c_arr); 1946 await th.get_cart_quan(c_arr);
1949 1947
1950 1948
1951 -  
1952 //-- 经纬度不循环调用接口 -- 1949 //-- 经纬度不循环调用接口 --
1953 var lon = 0; var lat = 0; 1950 var lon = 0; var lat = 0;
1954 //---循环购物车--- 1951 //---循环购物车---
@@ -2105,6 +2102,17 @@ Page({ @@ -2105,6 +2102,17 @@ Page({
2105 2102
2106 var back_data = null; 2103 var back_data = null;
2107 var quan_no_goods_arr = null; 2104 var quan_no_goods_arr = null;
  2105 + var ord_prom =null;
  2106 +
  2107 + //---判断是不是有订单优惠---
  2108 + await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", {
  2109 + data: { store_id: os.stoid, orderAmount: parseFloat(o_price - quan_price - whsle_goods_price - no_order_yh).toFixed(2), user_id: getApp().globalData.user_id }
  2110 + }).then(res => {
  2111 + if (res.data.code == 0) {
  2112 + ord_prom = res.data.data;
  2113 + }
  2114 + })
  2115 +
2108 //--如果是物流,且选择了地址,就要开始显示包邮券,且包邮券也已经优惠了优惠活动的金额-- 2116 //--如果是物流,且选择了地址,就要开始显示包邮券,且包邮券也已经优惠了优惠活动的金额--
2109 if (cart_item.exp_type == 0 && th.data.user_addr != null && !cart_item.is_xz_yh) { 2117 if (cart_item.exp_type == 0 && th.data.user_addr != null && !cart_item.is_xz_yh) {
2110 //看是不是有调用过包邮券 2118 //看是不是有调用过包邮券
@@ -2150,16 +2158,21 @@ Page({ @@ -2150,16 +2158,21 @@ Page({
2150 }) 2158 })
2151 } 2159 }
2152 2160
2153 - var user_addr = th.data.user_addr;  
2154 - var req_d = {  
2155 - province: user_addr.province, city: user_addr.city, district: user_addr.district,  
2156 - wuliu: parseFloat(o_price - quan_price - whsle_goods_price - no_post_temp).toFixed(2), store_id: os.stoid 2161 +
  2162 + //-- 如果没有订单优惠,或者订单优惠中有勾选包邮模板 --
  2163 + if(!ord_prom || ord_prom.is_post_temp) {
  2164 + var user_addr = th.data.user_addr;
  2165 + var req_d = {
  2166 + province: user_addr.province, city: user_addr.city, district: user_addr.district,
  2167 + wuliu: parseFloat(o_price - quan_price - whsle_goods_price - no_post_temp).toFixed(2), store_id: os.stoid
  2168 + }
  2169 + await getApp().request.promisePost("/api/weshop/order/areaFreight", {
  2170 + is_json: 1, data: req_d
  2171 + }).then(rs => {
  2172 + if (rs.data.code == 0) back_data = rs.data.data;
  2173 + });
2157 } 2174 }
2158 - await getApp().request.promisePost("/api/weshop/order/areaFreight", {  
2159 - is_json: 1, data: req_d  
2160 - }).then(rs => {  
2161 - if (rs.data.code == 0) back_data = rs.data.data;  
2162 - }); 2175 +
2163 2176
2164 } 2177 }
2165 2178
@@ -2336,32 +2349,27 @@ Page({ @@ -2336,32 +2349,27 @@ Page({
2336 } 2349 }
2337 2350
2338 var order_m = 0; 2351 var order_m = 0;
2339 - //---判断是不是有订单优惠---  
2340 - await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", {  
2341 - data: { store_id: os.stoid, orderAmount: o_condition, user_id: getApp().globalData.user_id }  
2342 - }).then(res => {  
2343 - if (res.data.code == 0) {  
2344 - var ord_prom = res.data.data;  
2345 - //么有使用券,或者活动没有限制使用优惠券  
2346 - if (quan_price <= 0 || !ord_prom.is_xz_yh) {  
2347 - order_prom_id = ord_prom['id'];  
2348 - switch (ord_prom['type']) {  
2349 - case 0:  
2350 - order_m = Math.round(o_condition * ord_prom['expression']) / 100;//满额打折  
2351 - order_prom_amount = (o_condition - order_m).toFixed(2);  
2352 - break;  
2353 - case 1:  
2354 - //order_m = o_condition - ord_prom['expression'];//满额优惠金额  
2355 - var bs = 1;  
2356 - if (ord_prom.is_bz) {  
2357 - bs = Math.floor(o_condition / ord_prom.money);  
2358 - }  
2359 - order_prom_amount = ord_prom['expression'];  
2360 - break; 2352 +
  2353 + //么有使用券,或者活动没有限制使用优惠券
  2354 + if (quan_price <= 0 || !ord_prom.is_xz_yh) {
  2355 + order_prom_id = ord_prom['id'];
  2356 + switch (ord_prom['type']) {
  2357 + case 0:
  2358 + order_m = Math.round(o_condition * ord_prom['expression']) / 100;//满额打折
  2359 + order_prom_amount = (o_condition - order_m).toFixed(2);
  2360 + break;
  2361 + case 1:
  2362 + //order_m = o_condition - ord_prom['expression'];//满额优惠金额
  2363 + var bs = 1;
  2364 + if (ord_prom.is_bz) {
  2365 + bs = Math.floor(o_condition / ord_prom.money);
2361 } 2366 }
2362 - } 2367 + order_prom_amount = ord_prom['expression'];
  2368 + break;
2363 } 2369 }
2364 - }) 2370 + }
  2371 +
  2372 +
2365 2373
2366 cart_item.order_prom_amount = 0; 2374 cart_item.order_prom_amount = 0;
2367 //--订单优惠的显示-- 2375 //--订单优惠的显示--
@@ -2642,7 +2650,6 @@ Page({ @@ -2642,7 +2650,6 @@ Page({
2642 } 2650 }
2643 }, 2651 },
2644 2652
2645 -  
2646 //---------计算立即购买---------- 2653 //---------计算立即购买----------
2647 calculatePrice2: async function (qfunc) { 2654 calculatePrice2: async function (qfunc) {
2648 var th = this, good = this.data.bn_goods; 2655 var th = this, good = this.data.bn_goods;
@@ -2721,11 +2728,30 @@ Page({ @@ -2721,11 +2728,30 @@ Page({
2721 gd_arr_list = [...gd_arr_list, ...th.data.buy_now_gift_goods]; 2728 gd_arr_list = [...gd_arr_list, ...th.data.buy_now_gift_goods];
2722 } 2729 }
2723 2730
  2731 + //-- 把订单优惠的判断提前,bn_is_order_yh是确定要不要订单优惠的控制 --
  2732 + var condition = parseFloat(parseFloat(allpice) - cut_price - quan_price).toFixed(2);
  2733 + var ord_prom = null;
  2734 + var is_ord_prom_post = 0;
  2735 +
  2736 + if(condition>0 && th.data.bn_is_order_yh) {
  2737 + await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", {
  2738 + data: {store_id: os.stoid, orderAmount: condition, user_id: getApp().globalData.user_id}
  2739 + }).then(res => {
  2740 + if (res.data.code == 0) {
  2741 + var data = res.data.data;
  2742 + ord_prom = data;
  2743 + }
  2744 + })
  2745 + if (ord_prom && ord_prom.is_post_temp) {
  2746 + is_ord_prom_post = 1;
  2747 + }
  2748 + }
  2749 +
2724 //-----------当地址不为空,且是物流时,计算物流费用,并同时商品不是优惠活动的包邮---------- 2750 //-----------当地址不为空,且是物流时,计算物流费用,并同时商品不是优惠活动的包邮----------
2725 if (th.data.user_addr != null && th.data.bn_exp_type == 0 && good.is_past != 1) { 2751 if (th.data.user_addr != null && th.data.bn_exp_type == 0 && good.is_past != 1) {
2726 //看是不是有调用过包邮券 2752 //看是不是有调用过包邮券
2727 if (!th.data.isget_by_quan[th.data.bn_pick] && good.is_xz_yh != 1) { 2753 if (!th.data.isget_by_quan[th.data.bn_pick] && good.is_xz_yh != 1) {
2728 - var condition = allpice - cut_price - quan_price; 2754 +
2729 //--判断要不要显示包邮券,链式调用接口,调取包邮券,已经是减了优惠的金额,见到优惠券的钱--- 2755 //--判断要不要显示包邮券,链式调用接口,调取包邮券,已经是减了优惠的金额,见到优惠券的钱---
2730 getApp().request.promiseGet("/api/weshop/userfeemail/pageAndArea", { 2756 getApp().request.promiseGet("/api/weshop/userfeemail/pageAndArea", {
2731 data: { 2757 data: {
@@ -2782,8 +2808,9 @@ Page({ @@ -2782,8 +2808,9 @@ Page({
2782 } 2808 }
2783 var back_data = null; 2809 var back_data = null;
2784 2810
2785 - //判断是不是包邮模板  
2786 - if (th.data.bn_is_post_temp) { 2811 + //判断是不是包邮模板,bn_is_post_temp 和 订单优惠的包邮模板一起控制
  2812 + if(th.data.bn_is_post_temp && (!ord_prom || is_ord_prom_post)){
  2813 +
2787 await getApp().request.promisePost("/api/weshop/order/areaFreight", { 2814 await getApp().request.promisePost("/api/weshop/order/areaFreight", {
2788 is_json: 1, data: req_d 2815 is_json: 1, data: req_d
2789 }).then(rs => { 2816 }).then(rs => {
@@ -2936,46 +2963,38 @@ Page({ @@ -2936,46 +2963,38 @@ Page({
2936 o_condition = 0; 2963 o_condition = 0;
2937 } 2964 }
2938 2965
2939 -  
2940 -  
2941 -  
2942 -  
2943 - if (o_condition > 0 && th.data.bn_is_order_yh) {  
2944 -  
2945 - th.check_is_order_prom(o_condition, async function () {  
2946 - var order_prom_amount = 0;  
2947 - var order_prom_id = 0;  
2948 - if (th.data.order_prom[th.data.bn_pick] && th.data.order_prom[th.data.bn_pick]['money'] <= o_condition) {  
2949 - var ord_prom = th.data.order_prom[th.data.bn_pick];  
2950 - //么有使用券,或者活动没有限制使用优惠券  
2951 - if (coupon_price <= 0 || !ord_prom.is_xz_yh) {  
2952 - order_prom_id = ord_prom['id'];  
2953 - switch (ord_prom['type']) {  
2954 - case 0:  
2955 - order_m = Math.round(o_condition * ord_prom['expression']) / 100;//满额打折  
2956 - order_prom_amount = (o_condition - order_m).toFixed(2);  
2957 - break;  
2958 - case 1:  
2959 - //-- 如果有优惠促销倍减的时候 --  
2960 - var bs = 1;  
2961 - if (ord_prom.is_bz) {  
2962 - bs = Math.floor(o_condition / ord_prom.money);  
2963 - }  
2964 -  
2965 - order_m = o_condition - bs * ord_prom['expression'];//满额优惠金额  
2966 - order_prom_amount = ord_prom['expression'];  
2967 - break; 2966 + var order_prom_amount = 0;
  2967 + var order_prom_id = 0;
  2968 + if (ord_prom) {
  2969 + //么有使用券,或者活动没有限制使用优惠券
  2970 + if (coupon_price <= 0 || !ord_prom.is_xz_yh) {
  2971 + order_prom_id = ord_prom['id'];
  2972 + switch (ord_prom['type']) {
  2973 + case 0:
  2974 + order_m = Math.round(o_condition * ord_prom['expression']) / 100;//满额打折
  2975 + order_prom_amount = (o_condition - order_m).toFixed(2);
  2976 + break;
  2977 + case 1:
  2978 + //-- 如果有优惠促销倍减的时候 --
  2979 + var bs = 1;
  2980 + if (ord_prom.is_bz) {
  2981 + bs = Math.floor(o_condition / ord_prom.money);
2968 } 2982 }
2969 - }  
2970 - }  
2971 - //--订单优惠的显示--  
2972 - var order_prom_txt1 = "formData.order_prom_id";  
2973 - var order_prom_txt2 = "formData.order_prom_amount";  
2974 - if (order_prom_id > 0) {  
2975 - th.setData({ [order_prom_txt1]: order_prom_id, [order_prom_txt2]: order_prom_amount })  
2976 - } else {  
2977 - th.setData({ [order_prom_txt1]: 0, [order_prom_txt2]: 0 }) 2983 +
  2984 + order_m = o_condition - bs * ord_prom['expression'];//满额优惠金额
  2985 + order_prom_amount = ord_prom['expression'];
  2986 + break;
2978 } 2987 }
  2988 + }
  2989 + }
  2990 + //--订单优惠的显示--
  2991 + var order_prom_txt1 = "formData.order_prom_id";
  2992 + var order_prom_txt2 = "formData.order_prom_amount";
  2993 + if (order_prom_id > 0) {
  2994 + th.setData({ [order_prom_txt1]: order_prom_id, [order_prom_txt2]: order_prom_amount })
  2995 + } else {
  2996 + th.setData({ [order_prom_txt1]: 0, [order_prom_txt2]: 0 })
  2997 + }
2979 2998
2980 //预存金额使用参与计算 2999 //预存金额使用参与计算
2981 if (th.data.udata && th.data.udata.Balance > 0 && order_m * 1 > 0) { 3000 if (th.data.udata && th.data.udata.Balance > 0 && order_m * 1 > 0) {
@@ -3014,7 +3033,7 @@ Page({ @@ -3014,7 +3033,7 @@ Page({
3014 keyid: th.data.bn_goods.keyid 3033 keyid: th.data.bn_goods.keyid
3015 } 3034 }
3016 }) 3035 })
3017 - 3036 +
3018 if (!good.yck_off) { 3037 if (!good.yck_off) {
3019 good.yck_off = cart_yc.yck_off 3038 good.yck_off = cart_yc.yck_off
3020 } 3039 }
@@ -3077,394 +3096,145 @@ Page({ @@ -3077,394 +3096,145 @@ Page({
3077 } 3096 }
3078 3097
3079 3098
3080 - //判断是否同城配送,而且没有调用过  
3081 - if (th.data.bn_exp_type == 2 && th.data.user_addr) {  
3082 - var gd_w = 0, lon = 0, lat = 0;  
3083 - for (let ib in gd_arr_list) {  
3084 - let item_b = gd_arr_list[ib];  
3085 - gd_w += item_b['weight'] * item_b['buynum'];  
3086 - }  
3087 -  
3088 - //-- 获取距离 --  
3089 - await getApp().request.promisePost("/api/weshop/order/sameCityExp/getGeocoder", {  
3090 - is_json: 1, data: { address: th.data.user_addr.more_address + th.data.user_addr.address }  
3091 - }).then(res => {  
3092 - if (res.data.code == 0) {  
3093 - var data = JSON.parse(res.data.data);  
3094 - if (data.status == 0) {  
3095 - lon = data.result.location.lng;  
3096 - lat = data.result.location.lat;  
3097 - }  
3098 - }  
3099 - }) 3099 + //判断是否同城配送,而且没有调用过
  3100 + if (th.data.bn_exp_type == 2 && th.data.user_addr) {
  3101 + var gd_w = 0, lon = 0, lat = 0;
  3102 + for (let ib in gd_arr_list) {
  3103 + let item_b = gd_arr_list[ib];
  3104 + gd_w += item_b['weight'] * item_b['buynum'];
  3105 + }
3100 3106
3101 - var req_data = {  
3102 - store_id: os.stoid, order_amount: parseFloat(order_m),  
3103 - lon: lon, lat: lat, pickup_id: bn_pick, goods_weight: gd_w 3107 + //-- 获取距离 --
  3108 + await getApp().request.promisePost("/api/weshop/order/sameCityExp/getGeocoder", {
  3109 + is_json: 1, data: { address: th.data.user_addr.more_address + th.data.user_addr.address }
  3110 + }).then(res => {
  3111 + if (res.data.code == 0) {
  3112 + var data = JSON.parse(res.data.data);
  3113 + if (data.status == 0) {
  3114 + lon = data.result.location.lng;
  3115 + lat = data.result.location.lat;
3104 } 3116 }
3105 -  
3106 - var is_next = 1;  
3107 -  
3108 - //获取同城配送参数  
3109 - await getApp().request.promisePost("/api/weshop/order/sameCityExp/getMoney", {  
3110 - is_json: 1, data: req_data  
3111 - }).then(res => {  
3112 - if (res.data.code == 0) {  
3113 - var wl_txt = "formData.shipping_price";  
3114 - th.setData({ [wl_txt]: res.data.data, })  
3115 -  
3116 - } else {  
3117 - is_next = 0;  
3118 - if (qfunc) {  
3119 - qfunc();  
3120 - } else {  
3121 - wx.showToast({  
3122 - title: res.data.msg,  
3123 - icon: 'none',  
3124 - duration: 2000  
3125 - })  
3126 - }  
3127 -  
3128 - }  
3129 - })  
3130 - if (!is_next) return false  
3131 } 3117 }
  3118 + })
3132 3119
  3120 + var req_data = {
  3121 + store_id: os.stoid, order_amount: parseFloat(order_m),
  3122 + lon: lon, lat: lat, pickup_id: bn_pick, goods_weight: gd_w
  3123 + }
3133 3124
3134 - total_m = parseFloat(total_m) + parseFloat(th.data.formData.shipping_price);  
3135 - order_m = parseFloat(order_m) + parseFloat(th.data.formData.shipping_price);  
3136 -  
3137 - total_m = total_m.toFixed(2);  
3138 - order_m = order_m.toFixed(2);  
3139 -  
3140 - var atxt = "formData.total_amount";  
3141 - th.setData({ [atxt]: total_m, })  
3142 -  
3143 - var txt = "formData.user_money";  
3144 - var txt2 = "formData.order_amount";  
3145 - var txt3 = "formData.coupon_price"; 3125 + var is_next = 1;
3146 3126
3147 - //-- 最后的金额小于佣金 --  
3148 - if (parseFloat(order_m) < parseFloat(th.data.bn_goods.use_commission)) { 3127 + //获取同城配送参数
  3128 + await getApp().request.promisePost("/api/weshop/order/sameCityExp/getMoney", {
  3129 + is_json: 1, data: req_data
  3130 + }).then(res => {
  3131 + if (res.data.code == 0) {
  3132 + var wl_txt = "formData.shipping_price";
  3133 + th.setData({ [wl_txt]: res.data.data, })
3149 3134
3150 - if (th.data.bn_use_commission) { 3135 + } else {
  3136 + is_next = 0;
  3137 + if (qfunc) {
  3138 + qfunc();
  3139 + } else {
3151 wx.showToast({ 3140 wx.showToast({
3152 - title: '应付金额小于本单佣金,不可使用!', 3141 + title: res.data.msg,
3153 icon: 'none', 3142 icon: 'none',
3154 duration: 2000 3143 duration: 2000
3155 }) 3144 })
3156 } 3145 }
3157 3146
3158 - th.setData({  
3159 - bn_use_commission: 0  
3160 - });  
3161 -  
3162 -  
3163 - }  
3164 -  
3165 - var txt4 = "formData.use_commission";  
3166 -  
3167 - if (th.data.bn_use_commission) {  
3168 - order_m = (parseFloat(order_m) - parseFloat(th.data.bn_goods.use_commission)).toFixed(2);  
3169 - th.setData({ [txt4]: th.data.bn_goods.use_commission })  
3170 - }  
3171 -  
3172 -  
3173 - var amoney = parseFloat(th.data.userinfo.user_money - th.data.txmon - th.data.userinfo.frozen_money);  
3174 - //--------------如果使用余额---------------------  
3175 - if (th.data.bn_use_money == 1) {  
3176 - if (amoney > parseFloat(order_m)) {  
3177 - order_m = parseFloat(order_m).toFixed(2);  
3178 - th.setData({ [txt]: order_m, [txt2]: 0, [txt3]: coupon_price, show_submit: 1, submit: 0 })  
3179 - } else {  
3180 - order_m = parseFloat(order_m) - parseFloat(amoney);  
3181 - order_m = order_m.toFixed(2);  
3182 - th.setData({ [txt]: amoney, [txt2]: order_m, [txt3]: coupon_price, show_submit: 1, submit: 0 })  
3183 - }  
3184 - } else {  
3185 - th.setData({ [txt]: 0, [txt2]: order_m, [txt3]: coupon_price, show_submit: 1, submit: 0 })  
3186 - }  
3187 - //优惠活动送积分  
3188 - if (good.s_intValue) {  
3189 - txt = "formData.give_integral";  
3190 - th.setData({ [txt]: good.s_intValue });  
3191 - }  
3192 - //优惠送券  
3193 - if (good.s_coupon_id) {  
3194 - var i_txt = "formData.give_coupon_id";  
3195 - //这个是json格式的  
3196 - var i_txt1 = "formData.g_coupon_num";  
3197 - var ob = [{ "num": good.s_coupon_num, "c_id": good.s_coupon_id }];  
3198 - ob = JSON.stringify(ob);  
3199 - th.setData({ [i_txt]: good.s_coupon_id, [i_txt1]: ob });  
3200 - }  
3201 - //优惠礼包  
3202 - if (good.s_libao) {  
3203 - var l_txt = "formData.give_lb_id";  
3204 - //这个是json格式的  
3205 - var l_txt1 = "formData.g_lb_num";  
3206 - var ob = [{ "num": good.s_lb_num, "l_id": good.s_libao }];  
3207 - ob = JSON.stringify(ob);  
3208 - th.setData({ [l_txt]: good.s_libao, [l_txt1]: ob });  
3209 - }  
3210 -  
3211 - //专享礼包  
3212 - if (good.zx_libao) {  
3213 - var l_txt = "formData.give_zxlb_id";  
3214 - //这个是json格式的  
3215 - var l_txt1 = "formData.g_zxlb_num";  
3216 - var ob = [{ "num": good.zx_lb_num, "l_id": good.zx_libao }];  
3217 - ob = JSON.stringify(ob);  
3218 - th.setData({ [l_txt]: good.zx_libao, [l_txt1]: ob });  
3219 } 3147 }
3220 }) 3148 })
3221 - } else {  
3222 -  
3223 - var order_prom_txt1 = "formData.order_prom_id";  
3224 - var order_prom_txt2 = "formData.order_prom_amount";  
3225 - th.setData({ [order_prom_txt1]: 0, [order_prom_txt2]: 0 })  
3226 -  
3227 - //预存金额使用参与计算  
3228 - if (th.data.udata && th.data.udata.Balance > 0 && order_m * 1 > 0) {  
3229 - if (!th.data.bn_goods.keyid) {  
3230 - //获取门店信息  
3231 - await getApp().request.promiseGet("/api/weshop/pickup/list", {  
3232 - data: {  
3233 - store_id: os.stoid,  
3234 - ids: th.data.bn_pick  
3235 - }  
3236 - }).then(res => {  
3237 - if (ut.ajax_ok(res)) {  
3238 - console.log(res);  
3239 - if (res.data.code == 0) {  
3240 - let resData = res.data.data.pageData  
3241 - if (resData && resData[0]) {  
3242 - let keyid = resData[0].keyid  
3243 - let txt = 'bn_goods.keyid'  
3244 - th.setData({  
3245 - [txt]: keyid  
3246 - })  
3247 - }  
3248 - }  
3249 - }  
3250 - })  
3251 - }  
3252 - if (th.data.bn_goods.keyid) {  
3253 - let cart_yc = await th.beforAdvancesum({  
3254 - order_amount: order_m,  
3255 - goods: [{  
3256 - goods_sn: th.data.bn_goods.goods_sn,  
3257 - goods_price: th.data.bn_goods.goods_price,  
3258 - goods_num: th.data.bn_goods.goods_num,  
3259 - }],  
3260 - sto: {  
3261 - keyid: th.data.bn_goods.keyid  
3262 - }  
3263 - })  
3264 -  
3265 - if (!good.yck_off) {  
3266 - good.yck_off = cart_yc.yck_off  
3267 - }  
3268 - good.yck = cart_yc.yck  
3269 - good.yckid = cart_yc.yckid  
3270 - good.pre_json = cart_yc.pre_json  
3271 - let yct1 = 'bn_goods.yck_off';  
3272 - let yct2 = 'bn_goods.yck';  
3273 - let yct3 = 'bn_goods.yckid';  
3274 - let yct4 = 'bn_goods.pre_json';  
3275 - th.setData({  
3276 - [yct1]: good.yck_off,  
3277 - [yct2]: good.yck,  
3278 - [yct3]: good.yckid,  
3279 - [yct4]: good.pre_json,  
3280 - })  
3281 -  
3282 - if (good.yck_off && good.yck_off == 2) {  
3283 - let order_amount = (order_m - good.yck).toFixed(2);  
3284 - let yck = 0  
3285 - if (order_amount * 1 > 0) {  
3286 - order_m = order_amount;  
3287 - // all_prestore+=parseFloat(good.yck);  
3288 - yck = parseFloat(good.yck)  
3289 - } else {  
3290 - // all_prestore+=order_m*1  
3291 - yck = parseFloat(order_m)  
3292 - order_m = 0  
3293 - }  
3294 - let atxt10 = "formData.prestore"; //预存金额  
3295 - let atxt11 = "formData.pre_json"; //预存json  
3296 - let atxt12 = "formData.all_yck_arr"; //预存真实抵扣列表  
3297 - th.setData({  
3298 - [atxt10]: yck,  
3299 - [atxt11]: [good.pre_json],  
3300 - [atxt12]: [yck],  
3301 - })  
3302 - // formData.prestore  
3303 - // all_yck_arr.push(yck) //真实预存款抵扣金额  
3304 - // all_pre_json.push(good.pre_json)  
3305 - // all_prestore = parseFloat(all_prestore); //真实预存款抵扣金额总和  
3306 - }  
3307 - }  
3308 - } else {  
3309 - let yct1 = 'bn_goods.yck_off';  
3310 - let yct2 = 'bn_goods.yck';  
3311 - let yct3 = 'bn_goods.yckid';  
3312 - let yct4 = 'bn_goods.pre_json';  
3313 - let atxt10 = "formData.prestore"; //预存金额  
3314 - let atxt11 = "formData.pre_json"; //预存json  
3315 - let atxt12 = "formData.all_yck_arr"; //预存真实抵扣列表  
3316 - th.setData({  
3317 - [yct2]: 0,  
3318 - [yct3]: '',  
3319 - [yct4]: '',  
3320 - [atxt10]: 0,  
3321 - [atxt11]: '',  
3322 - [atxt12]: [],  
3323 - })  
3324 - } 3149 + if (!is_next) return false
  3150 + }
3325 3151
3326 - //判断是否同城配送,而且没有调用过  
3327 - if (th.data.bn_exp_type == 2 && th.data.user_addr) {  
3328 - var gd_w = 0, lon = 0, lat = 0;  
3329 - for (let ib in gd_arr_list) {  
3330 - let item_b = gd_arr_list[ib];  
3331 - gd_w += item_b['weight'] * item_b['buynum'];  
3332 - }  
3333 3152
3334 - //-- 获取距离 --  
3335 - await getApp().request.promisePost("/api/weshop/order/sameCityExp/getGeocoder", {  
3336 - is_json: 1, data: { address: th.data.user_addr.more_address + th.data.user_addr.address }  
3337 - }).then(res => {  
3338 - if (res.data.code == 0) {  
3339 - var data = JSON.parse(res.data.data);  
3340 - if (data.status == 0) {  
3341 - lon = data.result.location.lng;  
3342 - lat = data.result.location.lat;  
3343 - }  
3344 - }  
3345 - }) 3153 + total_m = parseFloat(total_m) + parseFloat(th.data.formData.shipping_price);
  3154 + order_m = parseFloat(order_m) + parseFloat(th.data.formData.shipping_price);
3346 3155
3347 - var req_data = {  
3348 - store_id: os.stoid, order_amount: parseFloat(order_m),  
3349 - lon: lon, lat: lat, pickup_id: bn_pick, goods_weight: gd_w  
3350 - } 3156 + total_m = total_m.toFixed(2);
  3157 + order_m = order_m.toFixed(2);
3351 3158
3352 - var is_next = 1; 3159 + var atxt = "formData.total_amount";
  3160 + th.setData({ [atxt]: total_m, })
3353 3161
3354 - //获取同城配送参数  
3355 - await getApp().request.promisePost("/api/weshop/order/sameCityExp/getMoney", {  
3356 - is_json: 1, data: req_data  
3357 - }).then(res => {  
3358 - if (res.data.code == 0) {  
3359 - var wl_txt = "formData.shipping_price";  
3360 - th.setData({ [wl_txt]: res.data.data, }) 3162 + var txt = "formData.user_money";
  3163 + var txt2 = "formData.order_amount";
  3164 + var txt3 = "formData.coupon_price";
3361 3165
3362 - } else {  
3363 - is_next = 0;  
3364 - if (qfunc) {  
3365 - qfunc();  
3366 - } else {  
3367 - wx.showToast({  
3368 - title: res.data.msg,  
3369 - icon: 'none',  
3370 - duration: 2000  
3371 - })  
3372 - } 3166 + //-- 最后的金额小于佣金 --
  3167 + if (parseFloat(order_m) < parseFloat(th.data.bn_goods.use_commission)) {
3373 3168
3374 - } 3169 + if (th.data.bn_use_commission) {
  3170 + wx.showToast({
  3171 + title: '应付金额小于本单佣金,不可使用!',
  3172 + icon: 'none',
  3173 + duration: 2000
3375 }) 3174 })
3376 - if (!is_next) return false  
3377 } 3175 }
3378 3176
  3177 + th.setData({
  3178 + bn_use_commission: 0
  3179 + });
3379 3180
3380 3181
3381 - total_m = parseFloat(total_m) + parseFloat(th.data.formData.shipping_price);  
3382 - order_m = parseFloat(order_m) + parseFloat(th.data.formData.shipping_price);  
3383 - var atxt = "formData.total_amount";  
3384 -  
3385 - total_m = total_m.toFixed(2);  
3386 - order_m = order_m.toFixed(2);  
3387 -  
3388 - th.setData({ [atxt]: total_m, })  
3389 -  
3390 - var txt = "formData.user_money";  
3391 - var txt2 = "formData.order_amount";  
3392 - var txt3 = "formData.coupon_price";  
3393 -  
3394 - //-- 最后的金额小于佣金 --  
3395 - if (parseFloat(order_m) < parseFloat(th.data.bn_goods.use_commission)) {  
3396 -  
3397 - if (th.data.bn_use_commission) {  
3398 - wx.showToast({  
3399 - title: '应付金额小于本单佣金,不可使用!',  
3400 - icon: 'none',  
3401 - duration: 2000  
3402 - })  
3403 - }  
3404 -  
3405 - th.setData({  
3406 - bn_use_commission: 0  
3407 - });  
3408 - }  
3409 - 3182 + }
3410 3183
3411 - var txt4 = "formData.use_commission";  
3412 -  
3413 - if (th.data.bn_use_commission) {  
3414 - order_m = (parseFloat(order_m) - parseFloat(th.data.bn_goods.use_commission)).toFixed(2);  
3415 - th.setData({ [txt4]: th.data.bn_goods.use_commission })  
3416 - } 3184 + var txt4 = "formData.use_commission";
3417 3185
  3186 + if (th.data.bn_use_commission) {
  3187 + order_m = (parseFloat(order_m) - parseFloat(th.data.bn_goods.use_commission)).toFixed(2);
  3188 + th.setData({ [txt4]: th.data.bn_goods.use_commission })
  3189 + }
3418 3190
3419 - var amoney = parseFloat(th.data.userinfo.user_money - th.data.txmon - th.data.userinfo.frozen_money);  
3420 3191
3421 - //--------------如果使用余额---------------------  
3422 - if (th.data.bn_use_money == 1) {  
3423 - if (amoney > parseFloat(order_m)) {  
3424 - order_m = parseFloat(order_m).toFixed(2);  
3425 - th.setData({ [txt]: order_m, [txt2]: 0, [txt3]: coupon_price, show_submit: 1, submit: 0 })  
3426 - } else {  
3427 - order_m = parseFloat(order_m) - parseFloat(amoney);  
3428 - order_m = order_m.toFixed(2);  
3429 - th.setData({ [txt]: amoney, [txt2]: order_m, [txt3]: coupon_price, show_submit: 1, submit: 0 })  
3430 - } 3192 + var amoney = parseFloat(th.data.userinfo.user_money - th.data.txmon - th.data.userinfo.frozen_money);
  3193 + //--------------如果使用余额---------------------
  3194 + if (th.data.bn_use_money == 1) {
  3195 + if (amoney > parseFloat(order_m)) {
  3196 + order_m = parseFloat(order_m).toFixed(2);
  3197 + th.setData({ [txt]: order_m, [txt2]: 0, [txt3]: coupon_price, show_submit: 1, submit: 0 })
3431 } else { 3198 } else {
3432 - th.setData({ [txt]: 0, [txt2]: order_m, [txt3]: coupon_price, show_submit: 1, submit: 0 })  
3433 - }  
3434 - //优惠活动送积分  
3435 - if (good.s_intValue) {  
3436 - txt = "formData.give_integral";  
3437 - th.setData({ [txt]: good.s_intValue });  
3438 - }  
3439 - //优惠送券  
3440 - if (good.s_coupon_id) {  
3441 - var i_txt = "formData.give_coupon_id";  
3442 - //这个是json格式的  
3443 - var i_txt1 = "formData.g_coupon_num";  
3444 - var ob = [{ "num": good.s_coupon_num, "c_id": good.s_coupon_id }];  
3445 - ob = JSON.stringify(ob);  
3446 - th.setData({ [i_txt]: good.s_coupon_id, [i_txt1]: ob });  
3447 - }  
3448 - //优惠礼包  
3449 - if (good.s_libao) {  
3450 - var l_txt = "formData.give_lb_id";  
3451 - //这个是json格式的  
3452 - var l_txt1 = "formData.g_lb_num";  
3453 - var ob = [{ "num": good.s_lb_num, "l_id": good.s_libao }];  
3454 - ob = JSON.stringify(ob);  
3455 - th.setData({ [l_txt]: good.s_libao, [l_txt1]: ob });  
3456 - }  
3457 -  
3458 - //专享礼包  
3459 - if (good.zx_libao) {  
3460 - var l_txt = "formData.give_zxlb_id";  
3461 - //这个是json格式的  
3462 - var l_txt1 = "formData.g_zxlb_num";  
3463 - var ob = [{ "num": good.zx_lb_num, "l_id": good.zx_libao }];  
3464 - ob = JSON.stringify(ob);  
3465 - th.setData({ [l_txt]: good.zx_libao, [l_txt1]: ob });  
3466 - 3199 + order_m = parseFloat(order_m) - parseFloat(amoney);
  3200 + order_m = order_m.toFixed(2);
  3201 + th.setData({ [txt]: amoney, [txt2]: order_m, [txt3]: coupon_price, show_submit: 1, submit: 0 })
3467 } 3202 }
  3203 + } else {
  3204 + th.setData({ [txt]: 0, [txt2]: order_m, [txt3]: coupon_price, show_submit: 1, submit: 0 })
  3205 + }
  3206 + //优惠活动送积分
  3207 + if (good.s_intValue) {
  3208 + txt = "formData.give_integral";
  3209 + th.setData({ [txt]: good.s_intValue });
  3210 + }
  3211 + //优惠送券
  3212 + if (good.s_coupon_id) {
  3213 + var i_txt = "formData.give_coupon_id";
  3214 + //这个是json格式的
  3215 + var i_txt1 = "formData.g_coupon_num";
  3216 + var ob = [{ "num": good.s_coupon_num, "c_id": good.s_coupon_id }];
  3217 + ob = JSON.stringify(ob);
  3218 + th.setData({ [i_txt]: good.s_coupon_id, [i_txt1]: ob });
  3219 + }
  3220 + //优惠礼包
  3221 + if (good.s_libao) {
  3222 + var l_txt = "formData.give_lb_id";
  3223 + //这个是json格式的
  3224 + var l_txt1 = "formData.g_lb_num";
  3225 + var ob = [{ "num": good.s_lb_num, "l_id": good.s_libao }];
  3226 + ob = JSON.stringify(ob);
  3227 + th.setData({ [l_txt]: good.s_libao, [l_txt1]: ob });
  3228 + }
  3229 +
  3230 + //专享礼包
  3231 + if (good.zx_libao) {
  3232 + var l_txt = "formData.give_zxlb_id";
  3233 + //这个是json格式的
  3234 + var l_txt1 = "formData.g_zxlb_num";
  3235 + var ob = [{ "num": good.zx_lb_num, "l_id": good.zx_libao }];
  3236 + ob = JSON.stringify(ob);
  3237 + th.setData({ [l_txt]: good.zx_libao, [l_txt1]: ob });
3468 } 3238 }
3469 3239
3470 wx.hideLoading(); 3240 wx.hideLoading();
@@ -3473,6 +3243,7 @@ Page({ @@ -3473,6 +3243,7 @@ Page({
3473 3243
3474 }, 3244 },
3475 3245
  3246 +
3476 requestSubscribe() { 3247 requestSubscribe() {
3477 const th = this; 3248 const th = this;
3478 const template_id = this.data.template_id; 3249 const template_id = this.data.template_id;