diff --git a/components/diy_seckill/diy_seckill.wxml b/components/diy_seckill/diy_seckill.wxml index e3820d0..a2fd889 100644 --- a/components/diy_seckill/diy_seckill.wxml +++ b/components/diy_seckill/diy_seckill.wxml @@ -106,7 +106,7 @@ - {{aitem.title}} + {{aitem.goods_name}} {{aitem.djs.day}}{{aitem.djs.hou}} : diff --git a/packageA/pages/distribution/shop/shop.js b/packageA/pages/distribution/shop/shop.js index 9d08feb..7383117 100644 --- a/packageA/pages/distribution/shop/shop.js +++ b/packageA/pages/distribution/shop/shop.js @@ -87,14 +87,14 @@ Page({ } - if (options?.brand_id) { + if (options && options.brand_id) { this.setData({ brand_id: options.brand_id, is_router:true }) // this.getData(true, '/api/weshop/users/distribut/pagemyshop', this.data.currentQuery); } - if (options?.nation_id) { + if (options && options.nation_id) { this.setData({ nation_id: options.nation_id, is_router:true @@ -465,7 +465,7 @@ Page({ clickSort(e) { let data = this.data.currentQuery; // data.orderField = 'shop_price'; - data.orderField = 'prom_price'; + data.orderField = 'final_price'; if (data.page) { delete data.page; }; @@ -533,9 +533,10 @@ Page({ delete data.page; }; if (currentIndex == 0) { - if (data.orderField) {// 清除orderField - delete data.orderField; - }; + // if (data.orderField) {// 清除orderField + // delete data.orderField; + // }; + data.orderField = 'shop_price'; }; if (currentIndex == 1) { data.orderField = 'sales_sum'; @@ -546,11 +547,14 @@ Page({ if (currentIndex == 3) { // console.log('点击价格'); - if (data.orderType) {// 清除orderType - delete data.orderType; - }; + // if (data.orderType) {// 清除orderType + // delete data.orderType; + // }; + data.orderType = 'desc'; return; }; + + data.orderType = 'desc'; this.data.currentQuery = data; delete data.brand_id; diff --git a/packageA/pages/distribution/shop/shop.wxml b/packageA/pages/distribution/shop/shop.wxml index 6ad1ebf..469b618 100644 --- a/packageA/pages/distribution/shop/shop.wxml +++ b/packageA/pages/distribution/shop/shop.wxml @@ -51,12 +51,13 @@ 搜索 - + + {{item}} - + {{item}} diff --git a/packageC/pages/luckyGo/luckyGo_cart_ct/luckyGo_cart_ct.js b/packageC/pages/luckyGo/luckyGo_cart_ct/luckyGo_cart_ct.js index 1cbc905..b016765 100644 --- a/packageC/pages/luckyGo/luckyGo_cart_ct/luckyGo_cart_ct.js +++ b/packageC/pages/luckyGo/luckyGo_cart_ct/luckyGo_cart_ct.js @@ -934,6 +934,11 @@ Page({ } }) if (!is_next) return false + + th.data.lon=lon; + th.data.lat=lat; + th.data.bn_gd_w=gd_w; + th.data.bn_samecity_order_amount=req_data.order_amount; } //-- 如果是订单优惠的时候,allpice要拿来减掉一些 -- @@ -1226,6 +1231,13 @@ Page({ 'order_goods': new Array(), }; + if(item.exp_type==2){ + item.lon=th.data.lon?th.data.lon:0; + item.lat=th.data.lat?th.data.lat:0; + item.goods_weight=t_item.gd_w; + item.samecity_order_amount=t_item.samecity_order_amount; + } + //--判断有没有优惠活动-- if (th.data.formData.order_prom_amount > 0) { var order_prom_list = {}; diff --git a/packageC/pages/luckyGo/luckyGo_goodsInfo/luckyGo_goodsInfo.js b/packageC/pages/luckyGo/luckyGo_goodsInfo/luckyGo_goodsInfo.js index f810665..4c45a9f 100644 --- a/packageC/pages/luckyGo/luckyGo_goodsInfo/luckyGo_goodsInfo.js +++ b/packageC/pages/luckyGo/luckyGo_goodsInfo/luckyGo_goodsInfo.js @@ -5288,20 +5288,20 @@ Page({ //---自定义海报 产品质量保证 if(th.data.share_b_img && th.data.poster.show_quality==1 ){ var g_path = "../../../../images/share/s_gou.png"; - context.drawImage(g_path, 56 * unit, 650 * unit, 22 * unit, 22 * unit); + context.drawImage(g_path, 56 * unit, 658 * unit, 22 * unit, 22 * unit); context.setFillStyle("red") context.setFontSize(18 * unit) - context.fillText("正品保证", 84 * unit, 670 * unit); + context.fillText("正品保证", 84 * unit, 678 * unit); - context.drawImage(g_path, 218 * unit, 650 * unit, 22 * unit, 22 * unit); + context.drawImage(g_path, 218 * unit, 658 * unit, 22 * unit, 22 * unit); context.setFillStyle("red") context.setFontSize(18 * unit) - context.fillText("纯实体店", 246 * unit, 670 * unit); + context.fillText("纯实体店", 246 * unit, 678 * unit); - context.drawImage(g_path, 388 * unit, 650 * unit, 22 * unit, 22 * unit); + context.drawImage(g_path, 388 * unit, 658 * unit, 22 * unit, 22 * unit); context.setFillStyle("red") context.setFontSize(18 * unit) - context.fillText("官方验证", 420 * unit, 670 * unit); + context.fillText("官方验证", 420 * unit, 678 * unit); } @@ -5312,10 +5312,10 @@ Page({ //---画线--- - context.setLineWidth(1 * unit) - context.moveTo(32 * unit, 680 * unit) - context.lineTo(520 * unit, 680 * unit) - context.stroke(); + // context.setLineWidth(1 * unit) + // context.moveTo(32 * unit, 680 * unit) + // context.lineTo(520 * unit, 680 * unit) + // context.stroke(); //---文字--- context.setFillStyle("black") @@ -5431,7 +5431,7 @@ Page({ }; - if(th.data.poster.show_time==1){ + if(th.data.poster && th.data.poster.show_time==1){ var act_time = ''; act_time="截止时间:"+ ut.formatTime(th.data.luckGoInfo.end_time); context.setFillStyle("red") diff --git a/packageC/pages/luckyGo/luckyGo_order/luckyGo_order.js b/packageC/pages/luckyGo/luckyGo_order/luckyGo_order.js index 75e4396..31cd6c0 100644 --- a/packageC/pages/luckyGo/luckyGo_order/luckyGo_order.js +++ b/packageC/pages/luckyGo/luckyGo_order/luckyGo_order.js @@ -1105,12 +1105,17 @@ Page({ click_contact:function () { getApp().globalData.no_clear=1; + }, + + //-- 查看物流 -- + go_wuliu:function (e) { + getApp().go_wuliu(e); } - - - - - + + + + + diff --git a/packageC/pages/luckyGo/luckyGo_order/luckyGo_order.wxml b/packageC/pages/luckyGo/luckyGo_order/luckyGo_order.wxml index 372f32e..732bcbf 100644 --- a/packageC/pages/luckyGo/luckyGo_order/luckyGo_order.wxml +++ b/packageC/pages/luckyGo/luckyGo_order/luckyGo_order.wxml @@ -185,7 +185,9 @@ 删除订单 - + @@ -396,7 +396,9 @@ 删除订单 - + diff --git a/packageC/pages/presell/cart/cart2.js b/packageC/pages/presell/cart/cart2.js index 8ed4d78..8f2d83d 100644 --- a/packageC/pages/presell/cart/cart2.js +++ b/packageC/pages/presell/cart/cart2.js @@ -129,6 +129,8 @@ Page({ dis_config:null, bn_use_commission:0, //是不是使用佣金 + same_ok:1 + }, onLoad: function (t) { wx.setNavigationBarTitle({ title: "填写订单", }) @@ -232,6 +234,10 @@ Page({ //先获取是否有关闭使用优惠券 getApp().getConfig2(function (ee) { var json_d = JSON.parse(ee.switch_list); + + //测试强行写死,后面一定要删除 + //json_d.pickupway=2; + th.data.json_d = json_d; th.data.ispt_goods = json_d.ispt_goods; //是不是平摊到单品的控制参数赋值 var is_default_logistics = json_d.is_default_logistics; @@ -407,7 +413,7 @@ Page({ //-- 如果商品有同城配送的参数的时候,一件代发商品不能显示同城配送按钮 -- if(gd.is_same_city && th.data.is_same_city && gd.whsle_id<=0){ - getApp().request.promiseGet("/api/weshop/pickup/get/"+os.stoid+"/"+th.data.gg.pick_id, {}).then(res=>{ + await getApp().request.promiseGet("/api/weshop/pickup/get/"+os.stoid+"/"+th.data.gg.pick_id, {}).then(res=>{ if(res.data.code==0){ var pk=res.data.data; if(pk && pk.is_same_city){ @@ -468,6 +474,10 @@ Page({ break; } + if(th.data.show_same_city==1 && th.data.json_d.pickupway && th.data.json_d.pickupway == 2 ){ + et = 2; + } + var m_wind = 0, def_exp_code = getApp().globalData.userInfo.def_exp_code; if (et == 0 && def_exp_code && !th.data.is_default_logistics) { @@ -993,7 +1003,16 @@ Page({ }) } }) - if(!is_next) return false + if(!is_next) { + th.setData({show_submit:1, submit: 0,same_ok:0 }) + return false + } + + th.data.lon=lon; + th.data.lat=lat; + th.data.bn_gd_w=gd_w; + th.data.bn_samecity_order_amount=req_data.order_amount; + } total_m = parseFloat(total_m) + parseFloat(th.data.formData.shipping_price); @@ -1141,6 +1160,13 @@ Page({ item.use_commission=th.data.bn_goods.use_commission; } + if(item.exp_type==2){ + item.lon=th.data.lon?th.data.lon:0; + item.lat=th.data.lat?th.data.lat:0; + item.goods_weight=th.data.bn_gd_w; + item.samecity_order_amount=th.data.bn_samecity_order_amount; + } + //获取立即购买的商品的信息 var gg = to.get_b_now(); //--商品的房间号-- @@ -1814,7 +1840,7 @@ Page({ setexptype: function (t) { var th = this; var ty = t.currentTarget.dataset.t, def_exp_code = getApp().globalData.userInfo.def_exp_code; - th.setData({ bn_exp_type: ty }); + th.setData({ bn_exp_type: ty,same_ok:1 }); if (ty == 0) { th.setData({ is_all_zt: 0 }); } diff --git a/packageC/pages/presell/goodsInfo/goodsInfo.js b/packageC/pages/presell/goodsInfo/goodsInfo.js index 5394814..2cfab4c 100644 --- a/packageC/pages/presell/goodsInfo/goodsInfo.js +++ b/packageC/pages/presell/goodsInfo/goodsInfo.js @@ -2986,7 +2986,7 @@ Page({ } var share_title = th.data.presellForm.share_title; - share_title ? share_title : th.data.data.goods_name; + share_title=share_title ? share_title : th.data.data.goods_name; //---产品名称--- //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度 @@ -3062,10 +3062,10 @@ Page({ } //---画线--- - context.setLineWidth(1 * unit) - context.moveTo(32 * unit, 662 * unit) - context.lineTo(520 * unit, 662 * unit) - context.stroke(); + // context.setLineWidth(1 * unit) + // context.moveTo(32 * unit, 662 * unit) + // context.lineTo(520 * unit, 662 * unit) + // context.stroke(); //---文字--- context.setFillStyle("black") diff --git a/packageD/pages/AI-test-skin/fail_result/fail_result.js b/packageD/pages/AI-test-skin/fail_result/fail_result.js index ac0dd43..bd46851 100644 --- a/packageD/pages/AI-test-skin/fail_result/fail_result.js +++ b/packageD/pages/AI-test-skin/fail_result/fail_result.js @@ -28,19 +28,19 @@ Page({ * 生命周期函数--监听页面加载 */ onLoad: function (options) { - if(options?.fail_result){ + if(options && options.fail_result){ var fail_result = JSON.parse(options.fail_result); this.setData({ fail_result, }) } - if(options?.msg){ + if(options && options.msg){ this.setData({ msg:options.msg }) } - if(options.ce_user_id) this.data.ce_user_id=options.ce_user_id; + if(options && options.ce_user_id) this.data.ce_user_id=options.ce_user_id; // msg=decodeURIComponent(msg); // this.setData({msg:msg}); diff --git a/packageD/pages/shop/order_detail/order_detail.wxml b/packageD/pages/shop/order_detail/order_detail.wxml index 2e34bef..c670adf 100644 --- a/packageD/pages/shop/order_detail/order_detail.wxml +++ b/packageD/pages/shop/order_detail/order_detail.wxml @@ -1,6 +1,6 @@ - + {{order.consignee}}{{'  '}}{{order.mobile}} diff --git a/packageD/pages/shop/order_detail/order_detail.wxss b/packageD/pages/shop/order_detail/order_detail.wxss index d0b0b02..9dbaf3a 100644 --- a/packageD/pages/shop/order_detail/order_detail.wxss +++ b/packageD/pages/shop/order_detail/order_detail.wxss @@ -29,6 +29,7 @@ .order-meg { margin-bottom: 20rpx; font-size: 30rpx; + margin-top: 20rpx; } .order-state { diff --git a/packageE/pages/cart/cart2/cart2.js b/packageE/pages/cart/cart2/cart2.js index 2aa8069..2864e43 100644 --- a/packageE/pages/cart/cart2/cart2.js +++ b/packageE/pages/cart/cart2/cart2.js @@ -150,6 +150,8 @@ Page({ coll_prom:{}, //搭配活动存储 yh_is_xz_yh:{},//优惠促销优惠券使用开关 + same_ok:1, //同城配送的控制,默认ok + }, onLoad: function (t) { @@ -267,6 +269,10 @@ Page({ //先获取是否有关闭使用优惠券 getApp().getConfig2(function (ee) { var json_d = JSON.parse(ee.switch_list); + + //测试强行写死,后面一定要删除 + //json_d.pickupway=2; + th.data.json_d = json_d; th.data.ispt_goods = json_d.ispt_goods; //是不是平摊到单品的控制参数赋值 var is_default_logistics = json_d.is_default_logistics; @@ -1172,7 +1178,7 @@ Page({ }); if (back_data && parseFloat(back_data)) { - c_item.can_usecommise = parseFloat(back_data); + c_item.can_usecommise = parseFloat(parseFloat(back_data).toFixed(2)); cart_commission += c_item.can_usecommise; } @@ -1229,7 +1235,12 @@ Page({ return e.is_same_city != 1 || e.whsle_id > 0 }) if (!fd || fd.length == 0) { - arr[ik].show_same_city = 1; + arr[ik].show_same_city = 1; + if (th.data.json_d.pickupway && th.data.json_d.pickupway == 2) { + arr[ik].exp_type=2; + th.setData({ is_all_zt: 0 }); + } + } } } @@ -1331,6 +1342,11 @@ Page({ et = 0; break; } + + if(th.data.show_same_city==1 && th.data.json_d.pickupway && th.data.json_d.pickupway == 2 ){ + et = 2; + } + var m_wind = 0, def_exp_code = getApp().globalData.userInfo.def_exp_code; if (et == 0 && def_exp_code && !th.data.is_default_logistics) { @@ -2104,6 +2120,9 @@ Page({ }) //-- to.getwuliuprice(async function (rs) { -- + th.data.lon=0; + th.data.lat=0; + //是不是区域包邮 th.data.is_area_by = 0; //当不是区域不包邮的时候,没有不包邮商品的时候 @@ -2714,7 +2733,15 @@ Page({ } } }) - if (!is_next) return false + if (!is_next) { + th.setData({show_submit:1, submit: 0,same_ok:0 }) + return false + } + + //重量要带出去 + cart_item.gd_w=gd_w; + cart_item.samecity_order_amount=req_data.order_amount; + } //预存金额使用参与计算 @@ -2938,6 +2965,10 @@ Page({ [atxt11]: all_pre_json, [atxt12]: all_yck_arr, }) + + th.data.lon=lon; + th.data.lat=lat; + th.data.order_prom_list_cart = c_arr; th.set_can_num(); wx.hideLoading(); @@ -3006,6 +3037,13 @@ Page({ var cut_price = 0; var allpice1 = allpice; + th.data.lon=0; + th.data.lat=0; + + //如果有线下取价的时候 + if (good.is_offline) { + allpice = good.offline_price * good.buynum; + } if (good.prom_type == 3 && good.prom_price !== null) { cut_price = allpice - good.prom_price; @@ -3019,11 +3057,6 @@ Page({ th.setData({ [c_txt]: cut_price, }); } - //如果有线下取价的时候 - if (good.is_offline) { - allpice = good.offline_price * good.buynum; - } - //to.getwuliuprice(async function (rs) { var o_shipping_price = 0, goods_weight = -1, goods_piece = -1; @@ -3493,7 +3526,14 @@ Page({ } }) - if (!is_next) return false + if (!is_next){ + th.setData({show_submit:1,same_ok:0,submit: 0}) + return false + } + th.data.lon=lon; + th.data.lat=lat; + th.data.bn_gd_w=gd_w; + th.data.bn_samecity_order_amount=req_data.order_amount; } @@ -3765,7 +3805,7 @@ Page({ var ff = true; //------------立即购买------------- if (th.data.is_b_now == 1 && th.data.bn_goods.prom_type != 5) { - if (th.data.bn_exp_type == 0 && th.data.user_addr == null) { + if ( [0,2].indexOf(th.data.bn_exp_typ) == -1 && th.data.user_addr == null) { ff = false; getApp().my_warnning("请选择收货地址", 0, th); th.data.is_summit_ing = 0; @@ -3816,6 +3856,13 @@ Page({ item.use_commission = th.data.bn_goods.use_commission; } + if(item.exp_type==2){ + item.lon=th.data.lon?th.data.lon:0; + item.lat=th.data.lat?th.data.lat:0; + item.goods_weight=th.data.bn_gd_w; + item.samecity_order_amount=th.data.bn_samecity_order_amount; + } + //获取立即购买的商品的信息 var gg = to.get_b_now(); //--商品的房间号-- @@ -3823,7 +3870,6 @@ Page({ item.room_ids = gg.room_id; } //群id - if(gg.groupchat_id && gg.groupchat_id!='undefined'){ item.groupchat_ids=gg.groupchat_id; } @@ -4117,6 +4163,13 @@ Page({ item.use_commission = t_item.can_usecommise; } + if(item.exp_type==2){ + item.lon=th.data.lon?th.data.lon:0; + item.lat=th.data.lat?th.data.lat:0; + item.goods_weight=t_item.gd_w; + item.samecity_order_amount=t_item.samecity_order_amount; + } + var order_prom_list = {}; //--判断有没有优惠活动-- if (t_item.order_prom_amount > 0) { @@ -6285,7 +6338,7 @@ Page({ setexptype2: function (e) { if(this.data.submit) return false; - this.setData({ submit: 1 }); + this.setData({ submit: 1,same_ok:1 }); if(this.data.all_collocation_list){ var bn_coll= this.selectComponent('#bn_coll'); @@ -6304,7 +6357,7 @@ Page({ setexptype_w2: function (e) { if(this.data.submit) return false; - this.setData({ submit: 1 }); + this.setData({ submit: 1,same_ok:1 }); for (let i = 0; i 0) { - th.setData({ show_same_city: 0 }) + //th.setData({ show_same_city: 0 }) } + } //自选的时候,系统配置了默认的配送方式是物流的时候 if (distr_t == 0 && th.data.json_d.pickupway && th.data.json_d.pickupway == 1) { et = 0; th.setData({ is_all_zt: 0 }); } + //-- 如果是同城配送和默认同城配送的时候 -- + if(th.data.show_same_city==1 && th.data.json_d.pickupway && th.data.json_d.pickupway == 2) { + et = 2; th.setData({ is_all_zt: 0 }); + } + + + var m_wind = th.data.m_wind; var ie = { pickup_id: gg.pick_id, @@ -7021,7 +7118,7 @@ Page({ }); if (back_data && parseFloat(back_data)) { - ie.can_usecommise = parseFloat(back_data); + ie.can_usecommise = parseFloat(parseFloat(back_data).toFixed(2)); cart_commission = ie.can_usecommise; } diff --git a/packageE/pages/cart/cart2/cart2.wxml b/packageE/pages/cart/cart2/cart2.wxml index bb88c69..45ff5f7 100644 --- a/packageE/pages/cart/cart2/cart2.wxml +++ b/packageE/pages/cart/cart2/cart2.wxml @@ -599,7 +599,8 @@ 应付金额:{{formData.order_amount}} - + diff --git a/pages/cart/cart2_inte/c_filter.wxs b/packageE/pages/cart/cart2_inte/c_filter.wxs index 7216131..7216131 100644 --- a/pages/cart/cart2_inte/c_filter.wxs +++ b/packageE/pages/cart/cart2_inte/c_filter.wxs diff --git a/packageE/pages/cart/cart2_inte/cart2_inte.js b/packageE/pages/cart/cart2_inte/cart2_inte.js new file mode 100644 index 0000000..70c0dbc --- /dev/null +++ b/packageE/pages/cart/cart2_inte/cart2_inte.js @@ -0,0 +1,1639 @@ +var t = getApp(), app = t, a = t.request, e = require("../../../../utils/common.js"), + s = require("../../../../utils/util.js"), ut = s, o = require("../../../../utils/md5.js"), to = getApp(); +var oo = t.globalData.setting, os = oo; +var regeneratorRuntime = require('../../../../utils/runtime.js'); +var util_pay = require("../../../../utils/pay.js"); + +Page({ + data: { + url: t.globalData.setting.url, + imgUrl: t.globalData.setting.imghost, + goods: null, + order: null, + orderPrices: null, + coupons: null, + coupon: null, + invoiceToggle: !0, + payWithUserMoney: !0, + payWithPoints: !0, + maxWord: 0, + enterAddressPage: !1, + firstEnter: !0, + //页面获取的参数 + param: null, + //提交订单的格式 + formData: { + order_amount: 0,//支付金额 + total_amount: 0,//总价 + all_price: 0,//商品卖的总价 + pay_points: 0,//使用积分 + user_money: 0,//使用余额 + couponCode: "",//使用优惠券(多单就用逗号隔开) + shipping_price: 0,//物流费用 + }, + inv_is_post:0,//积分购是否包邮 + + /*----------------立即购买---------------------*/ + is_b_now: 1, //0是购物车结算 1立即购买 + bn_goods: null, //立即购买时候的调用商品 + bn_use_money: 0,//是否使用余额 + bn_exp_type: 1, //0是物流 1自提 + bn_pick: 0, //选择的门店 + bn_pickname: "", //选择的门店名称 + bn_t_exp_t: 0, //判断商品和门店一起决定的物流自提的方式0 都可以 1自提 2物流 + + bn_is_order_yh: 1, //是不是订单优惠 + bn_is_post_temp: 1, //是不是进行计算包邮模板 + + bn_plus_cut_price: 0, //显示等级卡会优惠多少钱 + /*------------------------*/ + user_addr: null,//物流 + userinfo: null, //获取会员 + /*----------物流选择--------*/ + wu_arr: null, + index: 0, + w_sele_index: 0, + + //判断页面是返回回来的还是 首次进入的 + isclose: 1, + //申请提现的金额 + txmon: 0, + yuer: 0, + //提交中,不重复提交 + is_summit_ing: 0, + + disabled: 0, + open_express: 0,//控制选择物流名列表 的属性 + + is_express: 0, //选中物流的属性 + expres_name: "", //点击选定 + is_shipping_code: "",//插入用户默认地址 + wu_arr_txt: "", //要更新的物流的字段 + + //如果是全场包邮了,或者是全场不包邮了,就不要选包邮券 + is_no_by: {}, + is_by: {}, + is_quan_by: {}, + //--购买赠送的商品-- + buy_now_gift_goods: null, + //--订单优惠-- + order_prom: {}, + show_submit: 0, //提交按钮变正常显示 + udata: null,//用户预存值,数据 + is_pre_cut:0, //是否可以使用预存 0是不可以1的可以 + + same_ok:1, //同城配送的控制,默认ok + }, + onLoad: function (t) { + wx.setNavigationBarTitle({ title: "填写订单", }) + var th = this; + th.data.param = t; + //清空is_pick_up + getApp().request.put("/api/weshop/useraddress/updatePickUp", { + data: { user_id: getApp().globalData.user_id, is_pickup: 0 }, + success: function (s) { + } + }); + + //先获取是否有关闭使用优惠券 + getApp().getConfig2(function (ee) { + var json_d = JSON.parse(ee.switch_list); + + //测试强行写死,后面一定要删除 + //json_d.pickupway=2; + + th.data.json_d = json_d; + th.data.ispt_goods = json_d.ispt_goods; //是不是平摊到单品的控制参数赋值 + var is_default_logistics = json_d.is_default_logistics; + var is_same_city = json_d.is_same_city; + th.setData({is_pre_cut:json_d.is_pre_cut, is_close_quan: json_d.is_close_quan, sales_rules: ee.sales_rules, + rank_switch: json_d.rank_switch, is_default_logistics: is_default_logistics,is_same_city:is_same_city }); + + var rank_switch = json_d.rank_switch; + var max_price = -1; + var show_card = null; + var name = ""; + //如果有开等级卡的时候, + //因为都是调接口,要返回在计算 + if (rank_switch == 2) { + //-- 获取所有的等级卡, -- + getApp().request.promiseGet("/api/weshop/plus/vip/mem/bership/list?storeId=" + os.stoid, + {}).then(res => { + if (res.data.code == 0) { + var plusCard = res.data.data; + //-- 循环判断,拿到最贵的那张卡 -- + for (var ih in plusCard) { + if (plusCard[ih].IsStopBuy == true) { continue; } + if (max_price < 0) { + max_price = plusCard[ih].CardFee; + name = 'card' + plusCard[ih]['CorrPrice']; + show_card = plusCard[ih]; + } else { + if (max_price < plusCard[ih].CardFee) { + max_price = plusCard[ih].CardFee; + name = 'card' + plusCard[ih]['CorrPrice']; + show_card = plusCard[ih]; + } + } + } + + if (show_card) { + name = name.toLowerCase(); + th.setData({ card_name: name, show_card: show_card }) + } + } + //-----先获取物流,再获取用户信息,再展示页面----- + th.get_wuliu(th.get_info(th.show_page)); + }) + } else { + //-----先获取物流,再获取用户信息,再展示页面----- + th.get_wuliu(th.get_info(th.show_page)); + } + }, 1); + + + //判断是不是佣金抵扣 + getApp().is_distribut(this); + + + }, + onUnload: function () { this.setData({ isclose: 1 }) }, + onHide: function () { + this.setData({ + is_no_by: {}, + is_by: {} + }) + }, + + //----------子页返回父页触发---------- + onShow: function () { + + var fy=ut.fy_back('',1,function (){ + var cps = getCurrentPages(); + if (cps.length > 1) { + wx.navigateBack({ delta: 1 }) + } else { + getApp().goto("/pages/index/index/index"); + } + }); + + if(fy) return false; + + util_pay.set_fir(); + + var th = this; + th.data.g_cart_q_time = null; + + if (th.data.isclose == 0) { + wx.navigateTo({ + url: "/pages/index/index/index" + }) + + } else { + this.getuser_addr(function (ie) { + + //th.data.prom_goods_map={}; + //更换地址回来要重新调用计算价钱的接口 + if (!th.data.user_addr || th.data.user_addr.address_id != ie.address_id) { + th.setData({ user_addr: ie }); + if (th.data.is_b_now == 1) { + if (th.data.bn_goods) { + th.setData({ add_back: 1 }); + th.calculatePrice2(); + } + } + } else { + th.setData({ user_addr: ie }); + } + var going = 0; + + }); + //--更新默认地址--,看一下是不是跳到地址页面 + if (!getApp().globalData.is_cart_old) { + this.update_code(); + } else { + getApp().globalData.is_cart_old = 0; + } + } + + }, + //获取预存款余额 + async getAdvancesum() { + /*-----获取线下会员的预存款和优惠券的数量-----*/ + let url = "/api/weshop/users/getinfo/" + os.stoid + "/" + getApp().globalData.userInfo.user_id + await getApp().request.promiseGet(url, { + data: { + isShowLoading: 0, + }, + }).then(su => { + if (su.data.code == 0 && su.data.data) { + var data = su.data.data; + if (!data) data = {}; + data.cashcount = parseInt(data.cashcount); + this.setData({ + udata: data, + }); + } + }) + + }, + //购物车预存开启关闭 + prestore(e) { + let ind = e.currentTarget.dataset.ind; + let item = e.currentTarget.dataset.item + let txt = 'cartlist[' + ind + '].yck_off'; + let txt1 = 'old_cartlist[' + ind + '].yck_off'; + if (item.yck_off == 2) { + this.setData({ [txt]: 1, [txt1]: 1 }) + } else if (item.yck_off == 1) { + this.setData({ [txt]: 2, [txt1]: 2 }) + } + this.calculatePrice()//计算金额 + }, + //直接购买预存开启关闭 + prestore2() { + let txt = 'bn_goods.yck_off'; + if (this.data.bn_goods.yck_off == 2) { + this.setData({ [txt]: 1 }) + } else if (this.data.bn_goods.yck_off == 1) { + this.setData({ [txt]: 2 }) + } + this.calculatePrice2()//计算金额 + }, + //计算商品预存款前置方法------------------------------------ + async beforAdvancesum(cartList) { + // let cartList= this.data.cartlist + // let cartList= arr + // let length = cartList.length + if(!this.data.is_pre_cut){ + return {} + } + wx.showLoading({ + title: '加载中', + mask: true + }) + // for (let i = 0; i < length; i++) { + let item = cartList; + let goods = item.goods + let keyid = item.sto.keyid + let listform = [] + goods.map(ite => { + let obj = { + wareno: ite.goods_sn, + price: ite.goods_price, + qty: ite.goods_num + } + listform.push(obj) + }) + let arr = await this.getGoodsAdvancesum(keyid, listform, cartList) + // } + wx.hideLoading() + return arr + }, + //计算商品预存款请求方法------------------------------------ + async getGoodsAdvancesum(storageid, listform, cartList) { + if(!getApp().globalData.config){ + await getApp().request.promiseGet("/api/weshop/store/get/" + os.stoid,{ + }).then(res=>{ + if(res.data.code==0){ + getApp().globalData.config = res.data.data + } + }) + } + if(!getApp().globalData.config) return false; + + let res = await getApp().request.promisePost(`/api/weshop/delphiapi/saveErpApi`, { + data: { + accdb: getApp().globalData.config.erpid, + ApiName: 'api.pos.shop.advancesum.seek', + usercode: "admin", + vipid: this.data.userinfo.erpvipid, + oddsum: "0", + advancesum: cartList.order_amount, + storageid: storageid, + listform + }, + is_json: 1 + }) + console.log('计算商品的预存款'); + console.log(res); + let yck = 0 + let yckid = "" + let yckIdArr = [] + let pre_json = null + if (res.data.code == 0 && res.data.data && res.data.data.length > 0) { + let resData = res.data.data + resData.map(ite => { + yck += ite.advancesum*1 + yckIdArr.push(ite.advanceitemid) + }) + pre_json = resData + } + yckid = yckIdArr.join() + let obj = {} + if (yck * 1 > 0) { + obj.yck_off = 1 + } else { + obj.yck_off = 0 + } + obj.yck = yck.toFixed(2) + obj.yckid = yckid + obj.pre_json = pre_json + return obj + }, + //-------------------获取物流--------------- + get_wuliu(func) { + var th = this; + to.getwuliu(function (e) { + if (th.data.is_default_logistics) { + //如果第一个不是开启默认,说明要让用户自己选 + if (!e[0].is_default) { + th.setData({ is_default_logistics: 0 }); + } + } + th.setData({ wu_arr: e }) + typeof func == "function" && func(); + }) + }, + //------获取会员信息-----先获取用户信息,在进行下一步--- + get_info: function (func) { + var user_id = t.globalData.user_id; + to.auth.get_u(func); + }, + + //------获取会员收货地址----- + getuser_addr: function (func) { + var th = this; + a.get("/api/weshop/useraddress/page", { + data: { user_id: to.globalData.user_id, store_id: oo.stoid, pageSize: 600, t: Math.random() }, + success: function (su) { + + var item = null; + if (su.data.code == 0 && su.data.data && su.data.data.pageData) { + var user_addr = su.data.data.pageData; + var def_item = null; + for (var i = 0; i < user_addr.length; i++) { + if (user_addr[i]['is_default'] == 1) { def_item = user_addr[i]; } + if (user_addr[i]['is_pickup'] == 1) { item = user_addr[i]; } + } + + if (item == null) item = def_item; + if (item == null) item = user_addr[0]; + } + + if (item == undefined) item = null; + if (!item) th.setData({ user_addr: null }); //地址为空的时候,要清空,因为返回的时候,有缓存 + func(item); + } + }); + }, + + //----------------展示页面,是再获取用户信息之后-------------- + show_page:async function () { + var th = this, ta = this.data.param; + //th.setData({ userinfo: getApp().globalData.userInfo,}); + //获取用户预存款 + await th.getAdvancesum() + + var user = getApp().globalData.userInfo; + getApp().request.get("/api/weshop/users/get/" + oo.stoid + "/" + user.user_id, { + data: { r: Math.random() }, + success: function (e) { + + getApp().globalData.userInfo = e.data.data; + th.setData({ userinfo: e.data.data }); + + //选获取地址 + th.getuser_addr(function (addr) { + th.setData({ user_addr: addr }); + //--------------------------立即购买------------------ + if (ta.is_bnow == 1) { + //读取门店 + to.get_allsto(function (e) { + th.setData({ allsto: e }); + //获取立即购买的商品信息 + th.get_buy_goods(ta.goods_id); + }); + } + }); + //获取提现金额 + getApp().request.get("/api/weshop/withdrawals/summoney", { + data: { user_id: to.globalData.user_id, store_id: oo.stoid, status: 0 }, + success: function (su) { + if (su.data.code == 0) { + var yuer = parseFloat(th.data.userinfo.user_money - + (th.data.userinfo.frozen_money > 0 ? th.data.userinfo.frozen_money : 0) - su.data.data.summoney).toFixed(2); + th.setData({ txmon: su.data.data.summoney, yuer: yuer }); + } + } + }); + + }, + }) + + + }, + + //-----获取立即购买的商品信息,入口---- + get_buy_goods: function (e) { + var th = this; + var gg = to.get_b_now(); + //--------如果goods_id一样,就是要立即购买----- + if (e == gg.goods_id) { + a.get("/api/weshop/goods/get/" + oo.stoid + "/" + e, { + success: async function (t) { + var gd = t.data.data; + if (!gd) return false; + + //-- 如果商品有同城配送的参数的时候,一件代发商品不能显示同城配送按钮 -- + if(gd.is_same_city && th.data.is_same_city && gd.whsle_id<=0){ + + await getApp().request.promiseGet("/api/weshop/pickup/get/"+os.stoid+"/"+gg.pick_id, {}).then(res=>{ + if(res.data.code==0){ + var pk=res.data.data; + if(pk && pk.is_same_city){ + th.setData({show_same_city:1}) + } + } + + }) + + } + + + t.data.data.original_img = oo.imghost + t.data.data.original_img; + t.data.data['buynum'] = gg.goods_num; + var distr_t = 0, et = 0 + + if(t.data.data.is_minishop==1 && getApp().is_sp_hao()){ + + if(t.data.data.distr_type==1 || gg.pick_dis==1) { + wx.showToast({ + title: "视频号仅支持物流", + icon: 'none', + duration: 2000 + }) + + setTimeout(function(){ + wx.navigateBack({delta: 1}) + },1000) + + + return false + } + + t.data.data.distr_type=2; + th.setData({show_same_city:0}) + + } + + if (t.data.data.distr_type == 0) { + distr_t = gg.pick_dis; + } else { + distr_t = t.data.data.distr_type; + } + switch (distr_t) { + case 0: + et = 1; + //-- 系统后台有设置要默认的 -- + if (th.data.json_d.pickupway && th.data.json_d.pickupway == 1) et = 0; + break; + case 1: et = 1; break; + case 2: et = 0; break; + } + + if(th.data.show_same_city==1 && th.data.json_d.pickupway && th.data.json_d.pickupway == 2 ){ + et = 2; + } + + + if (th.data.bn_goods) et = th.data.bn_exp_type + + var m_wind = 0, def_exp_code = getApp().globalData.userInfo.def_exp_code; + if (et == 0 && def_exp_code && !th.data.is_default_logistics) { + for (var k = 0; k < th.data.wu_arr.length; k++) { + var item = th.data.wu_arr[k]; if (def_exp_code == item.code) { m_wind = k; } + } + } + + //---是不是购买等级卡成功的返回---等级卡显示的判断--- + var is_card_back = getApp().globalData.is_card_back; + if (is_card_back) { + th.data.card_name = th.data.userinfo.card_field; + gg.goods_price = gd[th.data.card_name]; + getApp().globalData.is_card_back = 0; + th.setData({ card_cut_price: 0 }); + //如果是秒杀的返回 + if (gd.prom_type == 4) gd.prom_type = 0; + } else { + //--- 商家等级卡开通的情况下, 会员不是等级会员的情况, 商品有设置等级卡价格,同时等级卡价格小于商品的价格 + //-- 搭配购的商品也可以单独购买,所以此时搭配购的商品要进行计算优惠 -- + if (!gg.collocation_goods && gd['prom_type'] != 6 && th.data.card_name && gd[th.data.card_name] > 0 && gg.goods_price > gd[th.data.card_name] && !th.data.userinfo.card_field) { + var cut_p = (gg.goods_price - gd[th.data.card_name]) * gg.goods_num; + th.setData({ card_cut_price: cut_p }); + } + } + + + if(gg.prom_type==4){ + gd.prom_type =4; + gd.prom_id = gg.prom_id; + } + + switch (gd.prom_type) { + case 0: + case 2: + case 3: + case 5: + case 6: + getApp().my_warnning("商品不是积分活动", 0, th); + wx.navigateBack(); + break; + case 4: //-- 积分购 -- + getApp().request.get("/api/weshop/integralbuy/pageIntegralBuyGoodsList?stype=1&stypeup=1&timetype=2", { + data: { store_id: os.stoid, goods_id: gg.goods_id, user_id: to.globalData.user_id, }, + success: async function (tt) { + if (tt.data.code == 0 && tt.data.data && tt.data.data.pageData) { + var inte_data = tt.data.data.pageData[0]; + t.data.data.shop_price = inte_data.addmoney; + t.data.data.integral = inte_data.integral; + + //-- 计算获得佣金的金额 -- + if (getApp().globalData.userInfo.is_distribut + && th.data.dis_config && th.data.dis_config.is_yongjin_dk) { + var c_num = getApp().get_commission2(th.data.dis_config,inte_data, gg.goods_num); + t.data.data.use_commission = c_num; + + } + + + if (inte_data.is_order_yh) { + th.data.bn_is_order_yh = 1; + } else { + th.data.bn_is_order_yh = 0; + } + + if (inte_data.is_post_temp) { + th.data.bn_is_post_temp = 1; + } else { + th.data.bn_is_post_temp = 0; + } + + + + th.setData({ + bn_goods: t.data.data, bn_pickname: gg.pick_name, bn_exp_type: et, index: m_wind, + bn_pick: gg.pick_id, bn_t_exp_t: distr_t, bn_exp_type: et,inv_is_post:inte_data.is_post + }); + //计算价格 + th.calculatePrice2(); + } else { + getApp().my_warnning("商品不是积分活动", 0, th); + wx.navigateBack(); + } + } + }); + break; + } + }, + }); + } + }, + + //---------------检查是否有收货地址------------------- + checkAddressList: function () { + var t = this; + return !(!this.data.order || null == this.data.order.userAddress) || (wx.showModal({ + title: "请先填写或选择收货地址~", + success: function (a) { + a.confirm ? t.enterAddressPage() : wx.navigateBack(); + }, + fail: function () { + wx.navigateBack(); + } + }), !1); + }, + showInvoice: function () { + this.setData({ + invoiceToggle: !this.data.invoiceToggle + }); + }, + keyUpChangePay1: function (t) { + this.setData({ + payWithUserMoney: !(t.detail.value.length > 0) + }); + }, + keyUpChangePay2: function (t) { + this.setData({ + payWithPoints: !(t.detail.value.length > 0) + }); + }, + keyUpChangeNum: function (t) { + this.setData({ + maxWord: t.detail.value.length + }); + }, + + + //---------计算立即购买---------- + //---------计算立即购买---------- + calculatePrice2:async function () { + var th = this, good = this.data.bn_goods; + + this.setData({submit:1}) + wx.showLoading({ title: "处理中.", mask:true }) + //-----------计算商品总价-------------- + var allpice = good.shop_price * good.buynum; + var all_integral = good.integral * good.buynum; + + var cut_price = 0; + if (good.prom_type == 3 && good.prom_price !== null) { + cut_price = allpice - good.prom_price; + } + allpice = parseFloat(allpice).toFixed(2); + + var txt = "formData.all_price"; + th.setData({ [txt]: allpice, }); + if (cut_price) { + var c_txt = "formData.cut_price"; + th.setData({ [c_txt]: cut_price, }); + } + + + //-- 把订单优惠的判断提前,bn_is_order_yh是确定要不要订单优惠的控制 -- + var condition = parseFloat(allpice-cut_price).toFixed(2); + var ord_prom = null; + var is_ord_prom_post = 0; + + if (condition > 0 && th.data.bn_is_order_yh && !th.data.bn_goods.whsle_id) { + await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", { + data: { store_id: os.stoid, orderAmount: condition, user_id: getApp().globalData.user_id } + }).then(res => { + if (res.data.code == 0) { + var data = res.data.data; + ord_prom = data; + } + }) + if (ord_prom && ord_prom.is_post_temp) { + is_ord_prom_post = 1; + } + } + + + + //to.getwuliuprice(async function (rs) { + + var o_shipping_price = 0, goods_weight = -1, goods_piece = -1; + var out_of_weight = null; //超出多少重量 + + //-----------当地址不为空,且是物流时,计算物流费用,并同时商品不是优惠活动的包邮---------- + if (th.data.user_addr != null && th.data.bn_exp_type == 0 && good.is_free_shipping == 0 && good.is_past != 1 && !th.data.inv_is_post) { + + var user_addr=th.data.user_addr; + var req_d = { + province: user_addr.province, city: user_addr.city, district: user_addr.district, + wuliu: parseFloat(allpice).toFixed(2), store_id: os.stoid + } + var back_data = null; + //判断是不是包邮模板,bn_is_post_temp 和 订单优惠的包邮模板一起控制 + if (th.data.bn_is_post_temp && (!ord_prom || is_ord_prom_post)) { + await getApp().request.promisePost("/api/weshop/order/areaFreight", { + is_json: 1, data: req_d + }).then(rs => { + if (rs.data.code == 0) back_data = rs.data.data; + }); + } + + var gd_arr_list = []; + gd_arr_list.push(good); + var cut_good_weight = 0; + for (let i in gd_arr_list) { + let item = gd_arr_list[i]; + + if (back_data && back_data['is_by_all'] && (!back_data.no_free_goods || back_data.no_free_goods.indexOf(item.goods_id) == -1) ) { + + if (item['exp_sum_type'] == 2 && back_data.weight_free > 0) { + if (goods_weight < 0) goods_weight = 0; + goods_weight += item['weight'] * item['buynum']; + cut_good_weight += item['weight'] * item['buynum']; + } + if (back_data.weight_free > 0) { + out_of_weight = (back_data.weight_free * 1000) - cut_good_weight; + } + continue; + } + + switch (item['exp_sum_type']) { + case 1: + //统一运费 + o_shipping_price += item['uniform_exp_sum']; + break; + case 2: + if (goods_weight < 0) goods_weight = 0; + //累积商品重量 每种商品的重量 * 数量 + goods_weight += item['weight'] * item['buynum']; + + if (back_data && back_data.is_by_all && !back_data.no_free_goods) { + cut_good_weight += item['weight'] * item['buynum']; + if (back_data.weight_free > 0) { + out_of_weight = (back_data.weight_free * 1000) - cut_good_weight; + } + } + break; + case 3: + if (goods_piece < 0) goods_piece = 0; + //累积商品数量 + goods_piece += item['buynum']; + break; + } + } + + //如果是正值的时候 + if (out_of_weight >= 0) out_of_weight = -cut_good_weight; + else out_of_weight = -back_data.weight_free * 1000; + + var code = ""; + if (th.data.wu_arr && th.data.wu_arr[th.data.index]) code = th.data.wu_arr[th.data.index].code; + //--------------开始计算物流------------------ + var shipping_price=0; + // var shipping_price = ut.calculatewuliu(code, o_shipping_price, goods_weight, out_of_weight, + // goods_piece, th.data.user_addr, back_data, rs); + + var w_data={ + store_id:os.stoid, code:code, + o_shipping_price:o_shipping_price, + goods_weight:goods_weight, + out_of_weight:out_of_weight,goods_piece:goods_piece, + user_addr_province:th.data.user_addr.province, + user_addr_city:th.data.user_addr.city, + user_addr_district:th.data.user_addr.district, + is_by_all:back_data && back_data.is_by_all?1:0, + no_free_goods:back_data && back_data.no_free_goods && back_data.no_free_goods.length>0?1:0, + } + + var is_ok=0; + await getApp().request.promisePost('/api/weshop/order/getOrderWuLiPrice', {data:w_data,is_json:1}).then(res=>{ + if(res.data.code==0){ + shipping_price=res.data.data; is_ok=1; + } + }) + + if(!is_ok){ + wx.hideLoading(); + wx.showToast({ + title: "计算物流错误", icon: 'none',duration: 2000 + }) + + return false; + } + + + if (shipping_price <= 0) { + th.data.is_by[th.data.bn_pick] = 1; //已经是包邮了,就不要选择包邮券 + } + + shipping_price = parseFloat(shipping_price).toFixed(2); + var wl_txt = "formData.shipping_price"; + th.setData({ [wl_txt]: shipping_price, }) + + } else if(th.data.bn_exp_type == 1 ) { + var wl_txt = "formData.shipping_price"; + th.setData({ [wl_txt]: 0, }) + } + //---如果有选择优惠券的情况下--- + var quan_price = 0, bn_pick = th.data.bn_pick; + + //-----------------支付价,优惠券不减物流----------------- + var total_m = (parseFloat(allpice)).toFixed(2); + var order_m = (parseFloat(allpice - cut_price) - quan_price).toFixed(2); + var coupon_price = quan_price; //优惠券优惠了多少钱 + if (order_m < 0) { + order_m = 0; coupon_price = parseFloat(order_m).toFixed(2); + } + + //--看一下有没有订单优惠-- + var o_condition = parseFloat(order_m); + if (th.data.bn_goods.whsle_id > 0) { + o_condition = 0; + } + + var order_prom_amount = 0; + var order_prom_id = 0; + if (ord_prom && o_condition > 0) { + //么有使用券,或者活动没有限制使用优惠券 + if (coupon_price <= 0 || !ord_prom.is_xz_yh) { + order_prom_id = ord_prom['id']; + switch (ord_prom['type']) { + case 0: + order_m = Math.round(o_condition * ord_prom['expression']) / 100;//满额打折 + order_prom_amount = (o_condition - order_m).toFixed(2); + break; + case 1: + //-- 如果有优惠促销倍减的时候 -- + var bs = 1; + if (ord_prom.is_bz) { + bs = Math.floor(o_condition / ord_prom.money); + } + + order_m = o_condition - bs * ord_prom['expression'];//满额优惠金额 + order_prom_amount = ord_prom['expression']; + break; + } + } + } + //--订单优惠的显示-- + var order_prom_txt1 = "formData.order_prom_id"; + var order_prom_txt2 = "formData.order_prom_amount"; + if (order_prom_id > 0) { + th.setData({ [order_prom_txt1]: order_prom_id, [order_prom_txt2]: order_prom_amount }) + } else { + th.setData({ [order_prom_txt1]: 0, [order_prom_txt2]: 0 }) + } + + + + //预存金额使用参与计算 + if (th.data.udata && th.data.udata.Balance > 0 && order_m * 1 > 0) { + if (!th.data.bn_goods.keyid) { + //获取门店信息 + await getApp().request.promiseGet("/api/weshop/pickup/list", { + data: { + store_id: os.stoid, + ids: th.data.bn_pick + } + }).then(res => { + if (ut.ajax_ok(res)) { + console.log(res); + if (res.data.code == 0) { + let resData = res.data.data.pageData + if (resData && resData[0]) { + let keyid = resData[0].keyid + let txt = 'bn_goods.keyid' + th.setData({ + [txt]: keyid + }) + } + } + } + }) + } + if (th.data.bn_goods.keyid) { + let cart_yc = await th.beforAdvancesum({ + order_amount: order_m, + goods: [{ + goods_sn: th.data.bn_goods.goods_sn, + goods_price: th.data.bn_goods.shop_price || th.data.bn_goods.goods_price, + goods_num: th.data.bn_goods.buynum || th.data.bn_goods.goods_num, + }], + sto: { + keyid: th.data.bn_goods.keyid + } + }) + + if (!good.yck_off) { + good.yck_off = cart_yc.yck_off + } + good.yck = cart_yc.yck + good.yckid = cart_yc.yckid + good.pre_json = cart_yc.pre_json + let yct1 = 'bn_goods.yck_off'; + let yct2 = 'bn_goods.yck'; + let yct3 = 'bn_goods.yckid'; + let yct4 = 'bn_goods.pre_json'; + th.setData({ + [yct1]: good.yck_off, + [yct2]: good.yck, + [yct3]: good.yckid, + [yct4]: good.pre_json, + }) + + if (good.yck_off && good.yck_off == 2) { + let order_amount = (order_m - good.yck).toFixed(2); + let yck = 0 + if (order_amount * 1 > 0) { + order_m = order_amount; + // all_prestore+=parseFloat(good.yck); + yck = parseFloat(good.yck) + } else { + // all_prestore+=order_m*1 + yck = parseFloat(order_m) + order_m = 0 + } + let atxt10 = "formData.prestore"; //预存金额 + let atxt11 = "formData.pre_json"; //预存json + let atxt12 = "formData.all_yck_arr"; //预存真实抵扣列表 + th.setData({ + [atxt10]: yck, + [atxt11]: [good.pre_json], + [atxt12]: [yck], + }) + // formData.prestore + // all_yck_arr.push(yck) //真实预存款抵扣金额 + // all_pre_json.push(good.pre_json) + // all_prestore = parseFloat(all_prestore); //真实预存款抵扣金额总和 + } + } + } else { + let yct1 = 'bn_goods.yck_off'; + let yct2 = 'bn_goods.yck'; + let yct3 = 'bn_goods.yckid'; + let yct4 = 'bn_goods.pre_json'; + let atxt10 = "formData.prestore"; //预存金额 + let atxt11 = "formData.pre_json"; //预存json + let atxt12 = "formData.all_yck_arr"; //预存真实抵扣列表 + th.setData({ + [yct2]: 0, + [yct3]: '', + [yct4]: '', + [atxt10]: 0, + [atxt11]: '', + [atxt12]: [], + }) + } + + //判断是否同城配送,而且没有调用过 + if(th.data.bn_exp_type==2 && th.data.user_addr) { + + var lon=0;var lat=0; + //-- 获取距离 -- + await getApp().request.promisePost("/api/weshop/order/sameCityExp/getGeocoder", { + is_json: 1, data: {address:th.data.user_addr.more_address+th.data.user_addr.address} + }).then(res=>{ + if(res.data.code==0){ + var data= JSON.parse(res.data.data); + if(data.status==0){ + lon=data.result.location.lng; + lat=data.result.location.lat; + } + } + }) + + + var gd_w = good['weight'] * good['buynum']; + //-- 获取距离 -- + var req_data = { + store_id: os.stoid, + order_amount: order_m, + lon: lon, lat: lat, + pickup_id: bn_pick, + goods_weight: gd_w + } + + var is_next=1; + //获取同城配送参数 + await getApp().request.promisePost("/api/weshop/order/sameCityExp/getMoney", { + is_json: 1, + data: req_data + }).then(res => { + if (res.data.code == 0) { + var wl_txt = "formData.shipping_price"; + th.setData({ [wl_txt]: res.data.data, }) + }else{ + is_next=0; + wx.showToast({ + title: res.data.msg, icon: 'none', duration: 2000 + }) + } + }) + if(!is_next){ + th.setData({show_submit:1, submit: 0,same_ok:0 }) + return false + } + + th.data.lon=lon; + th.data.lat=lat; + th.data.bn_gd_w=gd_w; + th.data.bn_samecity_order_amount=req_data.order_amount; + + } + + + + //--看一下有没有订单优惠--0 + total_m = parseFloat(total_m) + parseFloat(th.data.formData.shipping_price); + order_m = parseFloat(order_m) + parseFloat(th.data.formData.shipping_price); + var atxt = "formData.total_amount"; + th.setData({ [atxt]: total_m, }) + + var txt = "formData.user_money"; + var txt2 = "formData.order_amount"; + var txt4 = "formData.integral"; + + + //-- 最后的金额小于佣金 -- + if(parseFloat(order_m) parseFloat(order_m)) { + order_m = parseFloat(order_m).toFixed(2); + th.setData({ [txt]: order_m, [txt2]: 0, [txt4]: all_integral, show_submit: 1,submit:0 }) + } else { + order_m = parseFloat(order_m - amoney); + order_m = order_m.toFixed(2); + th.setData({ [txt]: amoney, [txt2]: order_m, [txt4]: all_integral, show_submit: 1,submit:0 }) + } + } else { + th.setData({ [txt]: 0, [txt2]: order_m, [txt4]: all_integral, show_submit: 1,submit:0}) + } + wx.hideLoading(); + + //}); + + }, + + //--------------------提交订单----------------------- + async submitForm(t) { + var sub_value = t; + this.setData({submit:1}) + + if (this.data.is_summit_ing == 1) return false; //--提交中退出-- + this.data.is_summit_ing = 1; + var th = this, pdata = new Array(); + var ff = true; + //------------立即购买------------- + if (th.data.is_b_now == 1 && th.data.bn_goods.prom_type != 5) { + + if (th.data.bn_exp_type == 0 && th.data.user_addr == null) { + ff = false; getApp().my_warnning("请选择收货地址", 0, th); + th.data.is_summit_ing = 0; + } + if (!ff) return false; + var addr = th.data.user_addr; + if (th.data.bn_exp_type == 1) addr = null; + + if (th.data.bn_exp_type == 0) + if (th.data.wu_arr == null || th.data.wu_arr.length <= 0) { + getApp().my_warnning("读取物流失败", 0, th); + th.data.is_summit_ing = 0; + return false; + } + + + var integrals = 0; + var get_datas = { + user_id: getApp().globalData.user_id, store_id: o.stoid, + }; + await getApp().request.promiseGet("/api/weshop/users/getAllPoints", { + data: get_datas + }).then(res => { + if (res.data.code == 0) { + integrals = res.data.data.Integral; + } + }) + + //判断积分的情况 + if (th.data.formData.integral && parseFloat(th.data.formData.integral) < parseFloat(integrals)) { + getApp().my_warnning("积分不足", 0, th); + th.data.is_summit_ing = 0; + return false; + } + + var item = { + 'user_id': to.globalData.user_id, + 'consignee': addr == null ? "" : addr.consignee, + 'province': addr == null ? 0 : addr.province, + 'city': addr == null ? 0 : addr.city, + 'district': addr == null ? 0 : addr.district, + 'twon': addr == null ? 0 : addr.twon, + 'address': addr == null ? "" : addr.address, + 'more_address': addr == null ? "" : addr.more_address, + //'mobile': th.data.userinfo.mobile, + 'mobile': addr == null ? th.data.userinfo.mobile : addr.mobile, + 'email': '', + 'shipping_code': th.data.bn_exp_type == 1 ? 0 : th.data.wu_arr[th.data.index].code, + 'shipping_name': th.data.bn_exp_type == 1 ? '' : th.data.wu_arr[th.data.index].name, + 'invoice_title': '', + 'goods_price': th.data.formData.all_price, //商品总价 + 'shipping_price': th.data.formData.shipping_price, //物流金额 + 'user_money': th.data.formData.user_money, //使用余额 + 'total_amount': th.data.formData.total_amount, //订单总价 + 'order_amount': th.data.formData.order_amount, //应付 + 'user_note': t.detail.value.user_note, //用户备注 + 'store_id': oo.stoid, //商家 + 'pickup_id': th.data.bn_pick, //门店 + 'exp_type': th.data.bn_exp_type, //配送方式 + 'order_goods': new Array(), + 'integral': th.data.formData.integral, + }; + //是不是重新提交 + if (th.data.is_continue == 1) item.is_continue = 1; + + //-- 如果有使用佣金抵扣的话 -- + if(th.data.bn_use_commission){ + item.use_commission=th.data.bn_goods.use_commission; + } + var order_prom_list = {}; + //--判断有没有优惠活动-- + if (th.data.formData.order_prom_amount > 0) { + order_prom_list.order_prom_id = th.data.formData.order_prom_id; + order_prom_list.order_prom_amount = th.data.formData.order_prom_amount; + } + item.order_prom_list = order_prom_list; + + if(item.exp_type==2){ + item.lon=th.data.lon?th.data.lon:0; + item.lat=th.data.lat?th.data.lat:0; + item.goods_weight=th.data.bn_gd_w; + item.samecity_order_amount=th.data.bn_samecity_order_amount; + } + + + //获取立即购买的商品的信息 + var gg = to.get_b_now(); + //--商品的房间号-- + if (gg.room_id && gg.room_id > 0) { + item.room_ids = gg.room_id; + } + if(gg.groupchat_id && gg.groupchat_id!='undefined'){ + item.groupchat_ids=gg.groupchat_id + } + + //老会员成为分销下线需要的参数 + if (getApp().globalData.first_leader && !getApp().globalData.userInfo.first_leader) { + //判断一下分享人是不是分享商 + await app.request.promiseGet("/api/weshop/users/get/" + os.stoid + "/" + getApp().globalData.first_leader, {}).then(res => { + if (res.data.code == 0) { + var user = res.data.data; + if (user.is_distribut == 1) { + item.first_leader = parseInt(getApp().globalData.first_leader); + } + } + }) + } + + + var goods = { + 'goods_id': gg.goods_id, + 'goods_name': gg.goods_name, + 'goods_sn': gg.goods_sn, + 'goods_num': gg.goods_num, + 'market_price': th.data.bn_goods.market_price, + 'goods_price': th.data.bn_goods.shop_price, + 'member_goods_price': th.data.bn_goods.shop_price, + 'store_id': oo.stoid, + 'prom_type': th.data.bn_goods.prom_type, //促销活动类型 + 'prom_id': th.data.bn_goods.prom_id, //促销活动id + }; + + if(getApp().globalData.skinface_id){ + goods.skinface_id=getApp().globalData.skinface_id; + } + + if(th.data.bn_goods.whsle_id){ + item.is_whsle=1; + goods.is_whsle_goods=1; + } + + + //-- 把导购的信息填入-- + if (gg.guide_id) { + goods.guide_id = gg.guide_id; + goods.guide_type = gg.guide_type; + //调用接口判断是不是会员 + await getApp().request.promiseGet("/api/weshop/shoppingGuide/getId/" + oo.stoid + "/" + gg.guide_id, {}).then(res => { + if (res.data.code == 0) { + goods.guide_name = res.data.data.salesman; + goods.guide_sn = res.data.data.salesman_no; + } + }) + } + if(gg.groupchat_id && gg.groupchat_id!='undefined'){ + goods.groupchat_id=gg.groupchat_id + } + //--商品的房间号-- + if (gg.room_id && gg.room_id > 0) { + goods.room_id = gg.room_id; + } + + item.order_goods.push(goods); + pdata.push(item); + } + + + if (pdata.length == 0) return; + //如果有使用预存,要处理 + if (th.data.formData && th.data.formData.prestore * 1 > 0 && th.data.bn_goods.yck_off==2) { + let formData = th.data.formData + let pre_json = formData.pre_json + let all_yck_arr = formData.all_yck_arr + pdata.map((item, i) => { + item.pre_cut = all_yck_arr[i] ? all_yck_arr[i].toFixed(2) : 0 + item.pre_preferential = 0 + item.pre_json = pre_json[i] ? JSON.stringify(pre_json[i]) : '' + }) + } + if (!pdata.keyid && th.data.bn_goods) { + pdata.map(ite => { + ite.keyid = th.data.bn_goods.keyid + }) + // pdata.keyid = th.data.bn_goods.keyid + } + //------------------------------------------ + + var str = JSON.stringify(pdata); + + wx.showLoading({ title: "加载中" }); + wx.request({ + url: oo.url + '/api/weshop/order/createWxdOrder', + data: str, + method: 'POST', + header: { + 'content-type': 'application/json' + },// 设置请求的 header + success: function (res) { + wx.hideLoading(); + if (res.statusCode == 200) { + var data = res.data; + if (data.code == 0) { + + //如果是购物车结算,还要删除购物车 + if (th.data.is_b_now == 0) { + var list = th.data.cartlist_y; + for (var i = 0; i < list.length; i++) { + //删除购物车 + a.delete("/api/weshop/cart/del/" + oo.stoid + "/" + list[i].id, {}); + } + } + var order_amount = 0; + pdata.forEach(function (em, ind) { + order_amount += em.order_amount; + }) + //要进行判断,如果是用微信支付,就要跳转到支付界面 + if (order_amount > 0) { + th.setData({ isclose: 0 }); + //void e.jumpToCart4({ + // order_sn: data.data, + //}, 1); + util_pay.pay(data.data, function () { + //app.my_warnning("支付成功",1,th); + //setTimeout(function () { + wx.redirectTo({ + url: "/pages/payment/pay_success/pay_success?type=2&order_sn=" + data.data + }) + //},1000) + + }, function () { + //支付失败 + setTimeout(function () { + wx.navigateBack({ delta: 1 }) + }, 1000) + }, oo.stoid); + + } else { + var dd = { + parent_sn: data.data, + store_id: oo.stoid, + type: 2, + }; + a.post("/api/weshop/order/pay/createOrder", { + data: dd, + success: function (t) { + //console.log(t); + if (t.data.code == 0) { + //app.my_warnning("支付成功",1,th); + //setTimeout(function () { + th.setData({ isclose: 0 }); + wx.redirectTo({ + url: "/pages/payment/pay_success/pay_success?type=2&order_sn=" + data.data, + }) + //}, 1000) + } + }, + fail: function () { + + } + }); + } + + } + else { + //--内容换行-- + var msg = data.msg; + //赠品活动已经取消,无法赠送,是否继续买单? + if (msg.indexOf("是否继续买单") > 0) { + wx.showModal({ + title: "提示", + content: data.msg, + cancelText: '取消', + confirmText: '确定', + showCancel: true, + success(res) { + if (res.cancel) { + th.setData({submit:0}) + return; + } else if (res.confirm) { + th.data.is_continue = 1; + th.submitForm(sub_value); + } + } + }) + return; + } + if (msg.length > 13) { + msg = msg.slice(0, 13) + "\r\n" + msg.slice(13); + } + getApp().confirmBox(msg); + th.data.is_summit_ing = 0; //是否提交中 + } + } else { + th.setData({submit:0}) + th.data.is_summit_ing = 0; //是否提交中 + console.log("index.js wx.request CheckCallUser statusCode" + res.statusCode); + } + }, + fail: function () { + th.setData({submit:0}) + th.data.is_summit_ing = 0; + wx.hideLoading(); + console.log("index.js wx.request CheckCallUser fail"); + }, + complete: function () { } + }) + + }, + + //---确认线下门店的数量足不足--- + async check_store_num(goods_id, pick, goods_num, func) { + var lock = 0, pick_no, plist, erpwareid; + //先读取门店的lock + await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", { + data: { store_id: os.stoid, wareId: goods_id, storageId: pick, pageSize: 1000 } + }).then(res => { + if (res.data.code == 0 && res.data.data.total > 0) { + for (var i in res.data.data.pageData) + lock += res.data.data.pageData[i].outQty; + } + }) + //先获取门店的编号 + await getApp().request.promiseGet("/api/weshop/pickup/get/" + os.stoid + "/" + pick, { + data: { storeId: os.stoid, goodsId: t.goods_id, pickupId: pick } + }).then(res => { + if (res.data.code == 0) { + pick_no = res.data.data.pickup_no; + } + }) + //先获取商品的线下库存 + await getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + goods_id, { + data: { storeId: os.stoid, goodsId: t.goods_id, pickupId: pick } + }).then(res => { + if (res.data.code == 0) { + erpwareid = res.data.data.erpwareid; + } + }) + //读取线下的门店库存 + await getApp().request.promiseGet("/api/weshop/goods/getWareStorages", { + data: { storageNos: pick_no, wareIds: encodeURIComponent(erpwareid), storeId: os.stoid } + }).then(res => { + if (res.data.code == 0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length) { + plist = res.data.data.pageData[0]; + } + }) + var isok = 1; + if (goods_num > plist.CanOutQty - lock) { + isok = 0; + } + func(isok); + }, + + useCoupon: function () { + if (this.data.order.couponNum <= 0) { + getApp().my_warnning("无可用优惠券", 0, this); + return; + } + + var a = { + lid: this.data.coupon ? this.data.coupon.id : "0" + }; + wx.navigateTo({ + url: "/pages/user/checkcoupon/checkcoupon?" + s.Obj2Str(a) + }); + }, + enterAddressPage: function () { + getApp().globalData.is_cart_old = 1; + this.data.isget_by_quan = {}; + this.data.enterAddressPage = !0, wx.navigateTo({ + url: "/pages/user/address_list/address_list" + }); + }, + + + + //--------立即购买时,选择自提和物流---------- + setexptype: function (t) { + var th = this; + var ty = t.currentTarget.dataset.t, def_exp_code = getApp().globalData.userInfo.def_exp_code; + + th.setData({ bn_exp_type: ty,same_ok:1 }); + //当物流为空的时候。 + if (ty == 0 && th.data.wu_arr == null) { + th.data.isget_by_quan = {}; + return th.get_wuliu(th.calculatePrice2()); + } + + //--自提就要把包邮券清理掉-- + if (ty == 1) { + th.data.isget_by_quan = {}; + if (th.data.using_quan && th.data.using_quan[th.data.bn_pick] && th.data.using_quan[th.data.bn_pick].isby == 1) { + th.setData({ using_quan: {} }); + } + } + + //判断有没有默认的物流地址值 + if (def_exp_code != "" && def_exp_code != null && def_exp_code != undefined && !th.data.is_default_logistics) { + var wu_arr = this.data.wu_arr; + if (wu_arr != null && wu_arr != "") { + for (var i = 0; i < wu_arr.length; i++) { + if (wu_arr[i].shipping_code == def_exp_code) { + th.setData({ index: i }); + } + } + } + } + th.calculatePrice2() + + }, + + //--------立即购买时,使用余额-------- + set_bn_useyuer: function () { + var th = this; + th.setData({ bn_use_money: !th.data.bn_use_money }); + th.calculatePrice2(); + }, + set_js_useyuer: function () { + var th = this; + th.setData({ js_use_money: !th.data.js_use_money }); + th.calculatePrice(); + }, + + //----------立即购买,选择物流------------- + bindPickerChange: function (e) { + var ind = e.detail.value + this.setData({ index: ind }); + this.calculatePrice2(); + }, + //----------购物车结算,选择物流------------- + bindPickerChange_w: function (e) { + var ind = e.detail.value, txt = e.currentTarget.dataset.txt; + this.setData({ [txt]: ind }); + this.calculatePrice(); + }, + + cart_set_err: function (e) { + var txt = e.currentTarget.dataset.err; + var ob = {}; + ob[txt] = this.data.imgUrl + "/miniapp/images/default_g_img.gif"; + this.setData(ob); + }, + + //// 开启物流的弹窗 + show_wu_arr: function (e) { + var wu_arr_txt = e.currentTarget.dataset.txt; + var w_sele_index = e.currentTarget.dataset.w_sele_index; + var is_express = null; + var ob = { open_express: 1, wu_arr_txt: wu_arr_txt, disabled: 1 }; + + //--如果是多个门店的时候-- + if (w_sele_index != undefined) { + is_express = this.data.cartlist[w_sele_index].wind; + ob['is_express'] = is_express; + } + this.setData(ob); + }, + // 关闭物流的弹窗 + close_express: function () { + this.setData({ open_express: 0, disabled: 0 }); + }, + // 选择物流 + click_express_name: function (e) { + var express_name = e.currentTarget.dataset.name, shippingcode = e.currentTarget.dataset.shippingcode; + var index = e.currentTarget.dataset.idxe; + var ob = { is_express: index, is_shipping_code: shippingcode, disabled: 0 }; + ob[this.data.wu_arr_txt] = index; + this.setData(ob); + }, + + //点击确定物流 + determine_expres: function (e) { + this.setData({ open_express: 0 }); + this.calculatePrice2(); + }, + + //设置默认物流 + select_default_logistics: function () { + var th = this; + var is_shipping_code = this.data.is_shipping_code + getApp().request.put("/api/weshop/users/update", { + data: { user_id: getApp().globalData.user_id, store_id: oo.stoid, def_exp_code: is_shipping_code }, + success: function (rse) { + if (rse.data.code == 0) { + getApp().globalData.userInfo.def_exp_code = is_shipping_code; + th.setData({ open_express: 0 }); + //----计算此时购物车的价格,这个页面没有calculatePrice(),2021.7.19-------- + //if(th.data.is_b_now==1) th.calculatePrice2(); + //else th.calculatePrice(); + th.calculatePrice2(); + } + } + }) + }, + + //更新下默认,在onshow里面 + update_code() { + var th = this, m_wind = 0, def_exp_code = getApp().globalData.userInfo.def_exp_code; + + + //--定时器,判断wu_arr不未空-- + var uii = setInterval(function () { + if (th.data.wu_arr) { + clearInterval(uii); + if(th.data.is_default_logistics) return false; + for (var k = 0; k < th.data.wu_arr.length; k++) { + var item = th.data.wu_arr[k]; + if (def_exp_code == item.code) { m_wind = k; } + } + //--如果是立即购买-- + th.setData({ index: m_wind, is_express: m_wind }); + + } + }, 500); + }, + + //检查区域是不是包邮 + check_area: function (arr) { + var user_addr = this.data.user_addr; + for (var i in arr) { + var item = arr[i]; + if (user_addr.twon == item || user_addr.district == item + || user_addr.city == item || user_addr.province == item) { + return 0; + } + } + return 1; + }, + + //检查立即购买的商品是不是不包邮 + check_good: function (arr, goods_id) { + if (!goods_id) goods_id = this.data.bn_goods.goods_id; + for (var i in arr) { + var item = arr[i]; + if (goods_id == item) return 0; + } + return 1; + }, + check_by_area: function (region_list) { + var arr = region_list.split(","); + var check = this.check_area(arr); + return !check; + }, + check_by_goods: function (goods_list, goods_id) { + var arr = goods_list.split(","); + var check = this.check_good(arr, goods_id); + return !check; + }, + + + //从优惠的映射中拿出商品从表的item + arr_get_goods: function (goods_id, arr) { + for (var i in arr) { + if (arr[i].goods_id == goods_id) return arr[i]; + } + }, + + //跳转到购买卡 + buycard: function () { + getApp().goto("/pages/user/plus/plus"); + getApp().globalData.plus_buy_back = 1; + }, + + //使用佣金抵扣 + set_bn_commission:function () { + var th = this; + th.setData({bn_use_commission: !th.data.bn_use_commission}); + th.calculatePrice2(); + } + + +}); diff --git a/pages/cart/cart2_inte/cart2_inte.json b/packageE/pages/cart/cart2_inte/cart2_inte.json index 0cfb931..0cfb931 100644 --- a/pages/cart/cart2_inte/cart2_inte.json +++ b/packageE/pages/cart/cart2_inte/cart2_inte.json diff --git a/packageE/pages/cart/cart2_inte/cart2_inte.wxml b/packageE/pages/cart/cart2_inte/cart2_inte.wxml new file mode 100644 index 0000000..49e2ddd --- /dev/null +++ b/packageE/pages/cart/cart2_inte/cart2_inte.wxml @@ -0,0 +1,248 @@ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + {{bn_pickname}} + + + + + + + + {{bn_goods.goods_name}} + + + + {{filters.show_gui_ge(bn_goods.goods_spec,bn_goods.goods_color)}} + + + + + + + {{bn_goods.integral}}积分 + + + {{filters.toFix(bn_goods.shop_price,2)}} + + 佣金:{{filters.toFix(bn_goods.use_commission/bn_goods.buynum,2)}}*{{bn_goods.buynum}} + + x{{bn_goods.buynum}} + + + + + + + + {{order.store_prom}} + + + + + + 优惠券 {{(selected_quan_list?selected_quan_list.length:0)+ (get_by_quan_list?get_by_quan_list.length:0)}}张可用 + + + 不使用 + + ¥{{using_quan[bn_pick].money}}元优惠券 + 包邮券 + + + + + + + + + + + 选择物流 + + {{wu_arr[index].name}} + + + + + + + + + 留言 + + + + + + + + + + 使用预存 + + ¥{{filters.toFix(bn_goods.yck,2)}} + + + + + + + + 使用佣金 :¥{{bn_goods.use_commission}} + + + + + + + + 使用余额 :¥{{yuer}} + + + + + + + + + + 商品金额 + ¥ {{formData.all_price}}元 + + + 可用积分{{integral_can}} + {{formData.integral}}积分 + + + 配送费用 + ¥ {{formData.shipping_price}}元 + + + + + 订单优惠 + - ¥ {{filters.toFix(formData.order_prom_amount,2)}}元 + + + + 使用预存 + - ¥ {{filters.toFix(formData.prestore,2)}}元 + + + 使用余额 + - ¥ {{formData.user_money}}元 + + + + + + + 应付金额:¥{{formData.order_amount}} + 应付积分:{{formData.integral}}积分 + + + +
+ + + + + + + + + + 选择物流名字 + + + × + + + + + + + + Γ + + + + + {{express_list.name}} + + + + + + + 确定 + + + 设为默认 + + + + + + + diff --git a/pages/cart/cart2_inte/cart2_inte.wxss b/packageE/pages/cart/cart2_inte/cart2_inte.wxss index 03c2154..03c2154 100644 --- a/pages/cart/cart2_inte/cart2_inte.wxss +++ b/packageE/pages/cart/cart2_inte/cart2_inte.wxss diff --git a/pages/cart/cart2_inte/filter.wxs b/packageE/pages/cart/cart2_inte/filter.wxs index c0e8d13..c0e8d13 100644 --- a/pages/cart/cart2_inte/filter.wxs +++ b/packageE/pages/cart/cart2_inte/filter.wxs diff --git a/packageE/pages/togoin/togoin.wxml b/packageE/pages/togoin/togoin.wxml index 8f14586..0427781 100644 --- a/packageE/pages/togoin/togoin.wxml +++ b/packageE/pages/togoin/togoin.wxml @@ -17,9 +17,14 @@ - + + + - 我已阅读同意 《用户使用协议》《隐私政策》 + + diff --git a/pages/cart/cart2_inte/cart2_inte.js b/pages/cart/cart2_inte/cart2_inte.js index 45ec9c9..aaef95f 100644 --- a/pages/cart/cart2_inte/cart2_inte.js +++ b/pages/cart/cart2_inte/cart2_inte.js @@ -1,1612 +1,66 @@ -var t = getApp(), app = t, a = t.request, e = require("../../../utils/common.js"), - s = require("../../../utils/util.js"), ut = s, o = require("../../../utils/md5.js"), to = getApp(); -var oo = t.globalData.setting, os = oo; -var regeneratorRuntime = require('../../../utils/runtime.js'); -var util_pay = require("../../../utils/pay.js"); - +// pages/cart/cart2_inte/cart2_inte.js Page({ - data: { - url: t.globalData.setting.url, - imgUrl: t.globalData.setting.imghost, - goods: null, - order: null, - orderPrices: null, - coupons: null, - coupon: null, - invoiceToggle: !0, - payWithUserMoney: !0, - payWithPoints: !0, - maxWord: 0, - enterAddressPage: !1, - firstEnter: !0, - //页面获取的参数 - param: null, - //提交订单的格式 - formData: { - order_amount: 0,//支付金额 - total_amount: 0,//总价 - all_price: 0,//商品卖的总价 - pay_points: 0,//使用积分 - user_money: 0,//使用余额 - couponCode: "",//使用优惠券(多单就用逗号隔开) - shipping_price: 0,//物流费用 - }, - inv_is_post:0,//积分购是否包邮 - - /*----------------立即购买---------------------*/ - is_b_now: 1, //0是购物车结算 1立即购买 - bn_goods: null, //立即购买时候的调用商品 - bn_use_money: 0,//是否使用余额 - bn_exp_type: 1, //0是物流 1自提 - bn_pick: 0, //选择的门店 - bn_pickname: "", //选择的门店名称 - bn_t_exp_t: 0, //判断商品和门店一起决定的物流自提的方式0 都可以 1自提 2物流 - - bn_is_order_yh: 1, //是不是订单优惠 - bn_is_post_temp: 1, //是不是进行计算包邮模板 - - bn_plus_cut_price: 0, //显示等级卡会优惠多少钱 - /*------------------------*/ - user_addr: null,//物流 - userinfo: null, //获取会员 - /*----------物流选择--------*/ - wu_arr: null, - index: 0, - w_sele_index: 0, - - //判断页面是返回回来的还是 首次进入的 - isclose: 1, - //申请提现的金额 - txmon: 0, - yuer: 0, - //提交中,不重复提交 - is_summit_ing: 0, - - disabled: 0, - open_express: 0,//控制选择物流名列表 的属性 - - is_express: 0, //选中物流的属性 - expres_name: "", //点击选定 - is_shipping_code: "",//插入用户默认地址 - wu_arr_txt: "", //要更新的物流的字段 - - //如果是全场包邮了,或者是全场不包邮了,就不要选包邮券 - is_no_by: {}, - is_by: {}, - is_quan_by: {}, - //--购买赠送的商品-- - buy_now_gift_goods: null, - //--订单优惠-- - order_prom: {}, - show_submit: 0, //提交按钮变正常显示 - udata: null,//用户预存值,数据 - is_pre_cut:0, //是否可以使用预存 0是不可以1的可以 - }, - onLoad: function (t) { - wx.setNavigationBarTitle({ title: "填写订单", }) - var th = this; - th.data.param = t; - //清空is_pick_up - getApp().request.put("/api/weshop/useraddress/updatePickUp", { - data: { user_id: getApp().globalData.user_id, is_pickup: 0 }, - success: function (s) { - } - }); - - //先获取是否有关闭使用优惠券 - getApp().getConfig2(function (ee) { - var json_d = JSON.parse(ee.switch_list); - th.data.json_d = json_d; - th.data.ispt_goods = json_d.ispt_goods; //是不是平摊到单品的控制参数赋值 - var is_default_logistics = json_d.is_default_logistics; - var is_same_city = json_d.is_same_city; - th.setData({is_pre_cut:json_d.is_pre_cut, is_close_quan: json_d.is_close_quan, sales_rules: ee.sales_rules, - rank_switch: json_d.rank_switch, is_default_logistics: is_default_logistics,is_same_city:is_same_city }); - - var rank_switch = json_d.rank_switch; - var max_price = -1; - var show_card = null; - var name = ""; - //如果有开等级卡的时候, - //因为都是调接口,要返回在计算 - if (rank_switch == 2) { - //-- 获取所有的等级卡, -- - getApp().request.promiseGet("/api/weshop/plus/vip/mem/bership/list?storeId=" + os.stoid, - {}).then(res => { - if (res.data.code == 0) { - var plusCard = res.data.data; - //-- 循环判断,拿到最贵的那张卡 -- - for (var ih in plusCard) { - if (plusCard[ih].IsStopBuy == true) { continue; } - if (max_price < 0) { - max_price = plusCard[ih].CardFee; - name = 'card' + plusCard[ih]['CorrPrice']; - show_card = plusCard[ih]; - } else { - if (max_price < plusCard[ih].CardFee) { - max_price = plusCard[ih].CardFee; - name = 'card' + plusCard[ih]['CorrPrice']; - show_card = plusCard[ih]; - } - } - } - - if (show_card) { - name = name.toLowerCase(); - th.setData({ card_name: name, show_card: show_card }) - } - } - //-----先获取物流,再获取用户信息,再展示页面----- - th.get_wuliu(th.get_info(th.show_page)); - }) - } else { - //-----先获取物流,再获取用户信息,再展示页面----- - th.get_wuliu(th.get_info(th.show_page)); - } - }, 1); - - - //判断是不是佣金抵扣 - getApp().is_distribut(this); - - - }, - onUnload: function () { this.setData({ isclose: 1 }) }, - onHide: function () { - this.setData({ - is_no_by: {}, - is_by: {} - }) - }, - - //----------子页返回父页触发---------- - onShow: function () { - - var fy=ut.fy_back('',1,function (){ - var cps = getCurrentPages(); - if (cps.length > 1) { - wx.navigateBack({ delta: 1 }) - } else { - getApp().goto("/pages/index/index/index"); - } - }); - - if(fy) return false; - - util_pay.set_fir(); - - var th = this; - th.data.g_cart_q_time = null; - - if (th.data.isclose == 0) { - wx.navigateTo({ - url: "/pages/index/index/index" - }) - - } else { - this.getuser_addr(function (ie) { - - //th.data.prom_goods_map={}; - //更换地址回来要重新调用计算价钱的接口 - if (!th.data.user_addr || th.data.user_addr.address_id != ie.address_id) { - th.setData({ user_addr: ie }); - if (th.data.is_b_now == 1) { - if (th.data.bn_goods) { - th.setData({ add_back: 1 }); - th.calculatePrice2(); - } - } - } else { - th.setData({ user_addr: ie }); - } - var going = 0; - - }); - //--更新默认地址--,看一下是不是跳到地址页面 - if (!getApp().globalData.is_cart_old) { - this.update_code(); - } else { - getApp().globalData.is_cart_old = 0; - } - } - - }, - //获取预存款余额 - async getAdvancesum() { - /*-----获取线下会员的预存款和优惠券的数量-----*/ - let url = "/api/weshop/users/getinfo/" + os.stoid + "/" + getApp().globalData.userInfo.user_id - await getApp().request.promiseGet(url, { - data: { - isShowLoading: 0, - }, - }).then(su => { - if (su.data.code == 0 && su.data.data) { - var data = su.data.data; - if (!data) data = {}; - data.cashcount = parseInt(data.cashcount); - this.setData({ - udata: data, - }); - } - }) - - }, - //购物车预存开启关闭 - prestore(e) { - let ind = e.currentTarget.dataset.ind; - let item = e.currentTarget.dataset.item - let txt = 'cartlist[' + ind + '].yck_off'; - let txt1 = 'old_cartlist[' + ind + '].yck_off'; - if (item.yck_off == 2) { - this.setData({ [txt]: 1, [txt1]: 1 }) - } else if (item.yck_off == 1) { - this.setData({ [txt]: 2, [txt1]: 2 }) - } - this.calculatePrice()//计算金额 - }, - //直接购买预存开启关闭 - prestore2() { - let txt = 'bn_goods.yck_off'; - if (this.data.bn_goods.yck_off == 2) { - this.setData({ [txt]: 1 }) - } else if (this.data.bn_goods.yck_off == 1) { - this.setData({ [txt]: 2 }) - } - this.calculatePrice2()//计算金额 - }, - //计算商品预存款前置方法------------------------------------ - async beforAdvancesum(cartList) { - // let cartList= this.data.cartlist - // let cartList= arr - // let length = cartList.length - if(!this.data.is_pre_cut){ - return {} - } - wx.showLoading({ - title: '加载中', - mask: true - }) - // for (let i = 0; i < length; i++) { - let item = cartList; - let goods = item.goods - let keyid = item.sto.keyid - let listform = [] - goods.map(ite => { - let obj = { - wareno: ite.goods_sn, - price: ite.goods_price, - qty: ite.goods_num - } - listform.push(obj) - }) - let arr = await this.getGoodsAdvancesum(keyid, listform, cartList) - // } - wx.hideLoading() - return arr - }, - //计算商品预存款请求方法------------------------------------ - async getGoodsAdvancesum(storageid, listform, cartList) { - if(!getApp().globalData.config){ - await getApp().request.promiseGet("/api/weshop/store/get/" + os.stoid,{ - }).then(res=>{ - if(res.data.code==0){ - getApp().globalData.config = res.data.data - } - }) - } - if(!getApp().globalData.config) return false; - - let res = await getApp().request.promisePost(`/api/weshop/delphiapi/saveErpApi`, { - data: { - accdb: getApp().globalData.config.erpid, - ApiName: 'api.pos.shop.advancesum.seek', - usercode: "admin", - vipid: this.data.userinfo.erpvipid, - oddsum: "0", - advancesum: cartList.order_amount, - storageid: storageid, - listform - }, - is_json: 1 - }) - console.log('计算商品的预存款'); - console.log(res); - let yck = 0 - let yckid = "" - let yckIdArr = [] - let pre_json = null - if (res.data.code == 0 && res.data.data && res.data.data.length > 0) { - let resData = res.data.data - resData.map(ite => { - yck += ite.advancesum*1 - yckIdArr.push(ite.advanceitemid) - }) - pre_json = resData - } - yckid = yckIdArr.join() - let obj = {} - if (yck * 1 > 0) { - obj.yck_off = 1 - } else { - obj.yck_off = 0 - } - obj.yck = yck.toFixed(2) - obj.yckid = yckid - obj.pre_json = pre_json - return obj - }, - //-------------------获取物流--------------- - get_wuliu(func) { - var th = this; - to.getwuliu(function (e) { - if (th.data.is_default_logistics) { - //如果第一个不是开启默认,说明要让用户自己选 - if (!e[0].is_default) { - th.setData({ is_default_logistics: 0 }); - } - } - th.setData({ wu_arr: e }) - typeof func == "function" && func(); - }) - }, - //------获取会员信息-----先获取用户信息,在进行下一步--- - get_info: function (func) { - var user_id = t.globalData.user_id; - to.auth.get_u(func); - }, - - //------获取会员收货地址----- - getuser_addr: function (func) { - var th = this; - a.get("/api/weshop/useraddress/page", { - data: { user_id: to.globalData.user_id, store_id: oo.stoid, pageSize: 600, t: Math.random() }, - success: function (su) { - - var item = null; - if (su.data.code == 0 && su.data.data && su.data.data.pageData) { - var user_addr = su.data.data.pageData; - var def_item = null; - for (var i = 0; i < user_addr.length; i++) { - if (user_addr[i]['is_default'] == 1) { def_item = user_addr[i]; } - if (user_addr[i]['is_pickup'] == 1) { item = user_addr[i]; } - } - - if (item == null) item = def_item; - if (item == null) item = user_addr[0]; - } - - if (item == undefined) item = null; - if (!item) th.setData({ user_addr: null }); //地址为空的时候,要清空,因为返回的时候,有缓存 - func(item); - } - }); - }, - - //----------------展示页面,是再获取用户信息之后-------------- - show_page:async function () { - var th = this, ta = this.data.param; - //th.setData({ userinfo: getApp().globalData.userInfo,}); - //获取用户预存款 - await th.getAdvancesum() - - var user = getApp().globalData.userInfo; - getApp().request.get("/api/weshop/users/get/" + oo.stoid + "/" + user.user_id, { - data: { r: Math.random() }, - success: function (e) { - - getApp().globalData.userInfo = e.data.data; - th.setData({ userinfo: e.data.data }); - - //选获取地址 - th.getuser_addr(function (addr) { - th.setData({ user_addr: addr }); - //--------------------------立即购买------------------ - if (ta.is_bnow == 1) { - //读取门店 - to.get_allsto(function (e) { - th.setData({ allsto: e }); - //获取立即购买的商品信息 - th.get_buy_goods(ta.goods_id); - }); - } - }); - //获取提现金额 - getApp().request.get("/api/weshop/withdrawals/summoney", { - data: { user_id: to.globalData.user_id, store_id: oo.stoid, status: 0 }, - success: function (su) { - if (su.data.code == 0) { - var yuer = parseFloat(th.data.userinfo.user_money - - (th.data.userinfo.frozen_money > 0 ? th.data.userinfo.frozen_money : 0) - su.data.data.summoney).toFixed(2); - th.setData({ txmon: su.data.data.summoney, yuer: yuer }); - } - } - }); - - }, - }) - - - }, - - //-----获取立即购买的商品信息,入口---- - get_buy_goods: function (e) { - var th = this; - var gg = to.get_b_now(); - //--------如果goods_id一样,就是要立即购买----- - if (e == gg.goods_id) { - a.get("/api/weshop/goods/get/" + oo.stoid + "/" + e, { - success: async function (t) { - var gd = t.data.data; - if (!gd) return false; - - //-- 如果商品有同城配送的参数的时候,一件代发商品不能显示同城配送按钮 -- - if(gd.is_same_city && th.data.is_same_city && gd.whsle_id<=0){ - - await getApp().request.promiseGet("/api/weshop/pickup/get/"+os.stoid+"/"+gg.pick_id, {}).then(res=>{ - if(res.data.code==0){ - var pk=res.data.data; - if(pk && pk.is_same_city){ - th.setData({show_same_city:1}) - } - } - - }) - - } - - - t.data.data.original_img = oo.imghost + t.data.data.original_img; - t.data.data['buynum'] = gg.goods_num; - var distr_t = 0, et = 0 - - if(t.data.data.is_minishop==1 && getApp().is_sp_hao()){ - - if(t.data.data.distr_type==1 || gg.pick_dis==1) { - wx.showToast({ - title: "视频号仅支持物流", - icon: 'none', - duration: 2000 - }) - - setTimeout(function(){ - wx.navigateBack({delta: 1}) - },1000) - - - return false - } - - t.data.data.distr_type=2; - th.setData({show_same_city:0}) - - } - - if (t.data.data.distr_type == 0) { - distr_t = gg.pick_dis; - } else { - distr_t = t.data.data.distr_type; - } - switch (distr_t) { - case 0: - et = 1; - //-- 系统后台有设置要默认的 -- - if (th.data.json_d.pickupway && th.data.json_d.pickupway == 1) et = 0; - break; - case 1: et = 1; break; - case 2: et = 0; break; - } - - if (th.data.bn_goods) et = th.data.bn_exp_type - - var m_wind = 0, def_exp_code = getApp().globalData.userInfo.def_exp_code; - if (et == 0 && def_exp_code && !th.data.is_default_logistics) { - for (var k = 0; k < th.data.wu_arr.length; k++) { - var item = th.data.wu_arr[k]; if (def_exp_code == item.code) { m_wind = k; } - } - } - - //---是不是购买等级卡成功的返回---等级卡显示的判断--- - var is_card_back = getApp().globalData.is_card_back; - if (is_card_back) { - th.data.card_name = th.data.userinfo.card_field; - gg.goods_price = gd[th.data.card_name]; - getApp().globalData.is_card_back = 0; - th.setData({ card_cut_price: 0 }); - //如果是秒杀的返回 - if (gd.prom_type == 4) gd.prom_type = 0; - } else { - //--- 商家等级卡开通的情况下, 会员不是等级会员的情况, 商品有设置等级卡价格,同时等级卡价格小于商品的价格 - //-- 搭配购的商品也可以单独购买,所以此时搭配购的商品要进行计算优惠 -- - if (!gg.collocation_goods && gd['prom_type'] != 6 && th.data.card_name && gd[th.data.card_name] > 0 && gg.goods_price > gd[th.data.card_name] && !th.data.userinfo.card_field) { - var cut_p = (gg.goods_price - gd[th.data.card_name]) * gg.goods_num; - th.setData({ card_cut_price: cut_p }); - } - } - - - if(gg.prom_type==4){ - gd.prom_type =4; - gd.prom_id = gg.prom_id; - } - - switch (gd.prom_type) { - case 0: - case 2: - case 3: - case 5: - case 6: - getApp().my_warnning("商品不是积分活动", 0, th); - wx.navigateBack(); - break; - case 4: //-- 积分购 -- - getApp().request.get("/api/weshop/integralbuy/pageIntegralBuyGoodsList?stype=1&stypeup=1&timetype=2", { - data: { store_id: os.stoid, goods_id: gg.goods_id, user_id: to.globalData.user_id, }, - success: async function (tt) { - if (tt.data.code == 0 && tt.data.data && tt.data.data.pageData) { - var inte_data = tt.data.data.pageData[0]; - t.data.data.shop_price = inte_data.addmoney; - t.data.data.integral = inte_data.integral; - - //-- 计算获得佣金的金额 -- - if (getApp().globalData.userInfo.is_distribut - && th.data.dis_config && th.data.dis_config.is_yongjin_dk) { - var c_num = getApp().get_commission2(th.data.dis_config,inte_data, gg.goods_num); - t.data.data.use_commission = c_num; - - } - - - if (inte_data.is_order_yh) { - th.data.bn_is_order_yh = 1; - } else { - th.data.bn_is_order_yh = 0; - } - - if (inte_data.is_post_temp) { - th.data.bn_is_post_temp = 1; - } else { - th.data.bn_is_post_temp = 0; - } - - - - th.setData({ - bn_goods: t.data.data, bn_pickname: gg.pick_name, bn_exp_type: et, index: m_wind, - bn_pick: gg.pick_id, bn_t_exp_t: distr_t, bn_exp_type: et,inv_is_post:inte_data.is_post - }); - //计算价格 - th.calculatePrice2(); - } else { - getApp().my_warnning("商品不是积分活动", 0, th); - wx.navigateBack(); - } - } - }); - break; - } - }, - }); - } - }, - - //---------------检查是否有收货地址------------------- - checkAddressList: function () { - var t = this; - return !(!this.data.order || null == this.data.order.userAddress) || (wx.showModal({ - title: "请先填写或选择收货地址~", - success: function (a) { - a.confirm ? t.enterAddressPage() : wx.navigateBack(); - }, - fail: function () { - wx.navigateBack(); - } - }), !1); - }, - showInvoice: function () { - this.setData({ - invoiceToggle: !this.data.invoiceToggle - }); - }, - keyUpChangePay1: function (t) { - this.setData({ - payWithUserMoney: !(t.detail.value.length > 0) - }); - }, - keyUpChangePay2: function (t) { - this.setData({ - payWithPoints: !(t.detail.value.length > 0) - }); - }, - keyUpChangeNum: function (t) { - this.setData({ - maxWord: t.detail.value.length - }); - }, - - - //---------计算立即购买---------- - //---------计算立即购买---------- - calculatePrice2:async function () { - var th = this, good = this.data.bn_goods; - - this.setData({submit:1}) - wx.showLoading({ title: "处理中.", mask:true }) - //-----------计算商品总价-------------- - var allpice = good.shop_price * good.buynum; - var all_integral = good.integral * good.buynum; - - var cut_price = 0; - if (good.prom_type == 3 && good.prom_price !== null) { - cut_price = allpice - good.prom_price; - } - allpice = parseFloat(allpice).toFixed(2); - - var txt = "formData.all_price"; - th.setData({ [txt]: allpice, }); - if (cut_price) { - var c_txt = "formData.cut_price"; - th.setData({ [c_txt]: cut_price, }); - } - - - //-- 把订单优惠的判断提前,bn_is_order_yh是确定要不要订单优惠的控制 -- - var condition = parseFloat(allpice-cut_price).toFixed(2); - var ord_prom = null; - var is_ord_prom_post = 0; - - if (condition > 0 && th.data.bn_is_order_yh && !th.data.bn_goods.whsle_id) { - await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", { - data: { store_id: os.stoid, orderAmount: condition, user_id: getApp().globalData.user_id } - }).then(res => { - if (res.data.code == 0) { - var data = res.data.data; - ord_prom = data; - } - }) - if (ord_prom && ord_prom.is_post_temp) { - is_ord_prom_post = 1; - } - } - - - - //to.getwuliuprice(async function (rs) { - - var o_shipping_price = 0, goods_weight = -1, goods_piece = -1; - var out_of_weight = null; //超出多少重量 - - //-----------当地址不为空,且是物流时,计算物流费用,并同时商品不是优惠活动的包邮---------- - if (th.data.user_addr != null && th.data.bn_exp_type == 0 && good.is_free_shipping == 0 && good.is_past != 1 && !th.data.inv_is_post) { - var user_addr=th.data.user_addr; - var req_d = { - province: user_addr.province, city: user_addr.city, district: user_addr.district, - wuliu: parseFloat(allpice).toFixed(2), store_id: os.stoid - } - var back_data = null; - //判断是不是包邮模板,bn_is_post_temp 和 订单优惠的包邮模板一起控制 - if (th.data.bn_is_post_temp && (!ord_prom || is_ord_prom_post)) { - await getApp().request.promisePost("/api/weshop/order/areaFreight", { - is_json: 1, data: req_d - }).then(rs => { - if (rs.data.code == 0) back_data = rs.data.data; - }); - } - - var gd_arr_list = []; - gd_arr_list.push(good); - var cut_good_weight = 0; - for (let i in gd_arr_list) { - let item = gd_arr_list[i]; - - if (back_data && back_data['is_by_all'] && (!back_data.no_free_goods || back_data.no_free_goods.indexOf(item.goods_id) == -1) ) { - - if (item['exp_sum_type'] == 2 && back_data.weight_free > 0) { - if (goods_weight < 0) goods_weight = 0; - goods_weight += item['weight'] * item['buynum']; - cut_good_weight += item['weight'] * item['buynum']; - } - if (back_data.weight_free > 0) { - out_of_weight = (back_data.weight_free * 1000) - cut_good_weight; - } - continue; - } - - switch (item['exp_sum_type']) { - case 1: - //统一运费 - o_shipping_price += item['uniform_exp_sum']; - break; - case 2: - if (goods_weight < 0) goods_weight = 0; - //累积商品重量 每种商品的重量 * 数量 - goods_weight += item['weight'] * item['buynum']; - - if (back_data && back_data.is_by_all && !back_data.no_free_goods) { - cut_good_weight += item['weight'] * item['buynum']; - if (back_data.weight_free > 0) { - out_of_weight = (back_data.weight_free * 1000) - cut_good_weight; - } - } - break; - case 3: - if (goods_piece < 0) goods_piece = 0; - //累积商品数量 - goods_piece += item['buynum']; - break; - } - } - - //如果是正值的时候 - if (out_of_weight >= 0) out_of_weight = -cut_good_weight; - else out_of_weight = -back_data.weight_free * 1000; - - var code = ""; - if (th.data.wu_arr && th.data.wu_arr[th.data.index]) code = th.data.wu_arr[th.data.index].code; - //--------------开始计算物流------------------ - var shipping_price=0; - // var shipping_price = ut.calculatewuliu(code, o_shipping_price, goods_weight, out_of_weight, - // goods_piece, th.data.user_addr, back_data, rs); - - var w_data={ - store_id:os.stoid, code:code, - o_shipping_price:o_shipping_price, - goods_weight:goods_weight, - out_of_weight:out_of_weight,goods_piece:goods_piece, - user_addr_province:th.data.user_addr.province, - user_addr_city:th.data.user_addr.city, - user_addr_district:th.data.user_addr.district, - is_by_all:back_data && back_data.is_by_all?1:0, - no_free_goods:back_data && back_data.no_free_goods && back_data.no_free_goods.length>0?1:0, - } - - var is_ok=0; - await getApp().request.promisePost('/api/weshop/order/getOrderWuLiPrice', {data:w_data,is_json:1}).then(res=>{ - if(res.data.code==0){ - shipping_price=res.data.data; is_ok=1; - } - }) - - if(!is_ok){ - wx.hideLoading(); - wx.showToast({ - title: "计算物流错误", icon: 'none',duration: 2000 - }) - - return false; - } - - - if (shipping_price <= 0) { - th.data.is_by[th.data.bn_pick] = 1; //已经是包邮了,就不要选择包邮券 - } - - shipping_price = parseFloat(shipping_price).toFixed(2); - var wl_txt = "formData.shipping_price"; - th.setData({ [wl_txt]: shipping_price, }) - - } else if(th.data.bn_exp_type == 1 ) { - var wl_txt = "formData.shipping_price"; - th.setData({ [wl_txt]: 0, }) - } - //---如果有选择优惠券的情况下--- - var quan_price = 0, bn_pick = th.data.bn_pick; - - //-----------------支付价,优惠券不减物流----------------- - var total_m = (parseFloat(allpice)).toFixed(2); - var order_m = (parseFloat(allpice - cut_price) - quan_price).toFixed(2); - var coupon_price = quan_price; //优惠券优惠了多少钱 - if (order_m < 0) { - order_m = 0; coupon_price = parseFloat(order_m).toFixed(2); - } - - //--看一下有没有订单优惠-- - var o_condition = parseFloat(order_m); - if (th.data.bn_goods.whsle_id > 0) { - o_condition = 0; - } - - var order_prom_amount = 0; - var order_prom_id = 0; - if (ord_prom && o_condition > 0) { - //么有使用券,或者活动没有限制使用优惠券 - if (coupon_price <= 0 || !ord_prom.is_xz_yh) { - order_prom_id = ord_prom['id']; - switch (ord_prom['type']) { - case 0: - order_m = Math.round(o_condition * ord_prom['expression']) / 100;//满额打折 - order_prom_amount = (o_condition - order_m).toFixed(2); - break; - case 1: - //-- 如果有优惠促销倍减的时候 -- - var bs = 1; - if (ord_prom.is_bz) { - bs = Math.floor(o_condition / ord_prom.money); - } - - order_m = o_condition - bs * ord_prom['expression'];//满额优惠金额 - order_prom_amount = ord_prom['expression']; - break; - } - } - } - //--订单优惠的显示-- - var order_prom_txt1 = "formData.order_prom_id"; - var order_prom_txt2 = "formData.order_prom_amount"; - if (order_prom_id > 0) { - th.setData({ [order_prom_txt1]: order_prom_id, [order_prom_txt2]: order_prom_amount }) - } else { - th.setData({ [order_prom_txt1]: 0, [order_prom_txt2]: 0 }) - } - - - - //预存金额使用参与计算 - if (th.data.udata && th.data.udata.Balance > 0 && order_m * 1 > 0) { - if (!th.data.bn_goods.keyid) { - //获取门店信息 - await getApp().request.promiseGet("/api/weshop/pickup/list", { - data: { - store_id: os.stoid, - ids: th.data.bn_pick - } - }).then(res => { - if (ut.ajax_ok(res)) { - console.log(res); - if (res.data.code == 0) { - let resData = res.data.data.pageData - if (resData && resData[0]) { - let keyid = resData[0].keyid - let txt = 'bn_goods.keyid' - th.setData({ - [txt]: keyid - }) - } - } - } - }) - } - if (th.data.bn_goods.keyid) { - let cart_yc = await th.beforAdvancesum({ - order_amount: order_m, - goods: [{ - goods_sn: th.data.bn_goods.goods_sn, - goods_price: th.data.bn_goods.shop_price || th.data.bn_goods.goods_price, - goods_num: th.data.bn_goods.buynum || th.data.bn_goods.goods_num, - }], - sto: { - keyid: th.data.bn_goods.keyid - } - }) - - if (!good.yck_off) { - good.yck_off = cart_yc.yck_off - } - good.yck = cart_yc.yck - good.yckid = cart_yc.yckid - good.pre_json = cart_yc.pre_json - let yct1 = 'bn_goods.yck_off'; - let yct2 = 'bn_goods.yck'; - let yct3 = 'bn_goods.yckid'; - let yct4 = 'bn_goods.pre_json'; - th.setData({ - [yct1]: good.yck_off, - [yct2]: good.yck, - [yct3]: good.yckid, - [yct4]: good.pre_json, - }) - - if (good.yck_off && good.yck_off == 2) { - let order_amount = (order_m - good.yck).toFixed(2); - let yck = 0 - if (order_amount * 1 > 0) { - order_m = order_amount; - // all_prestore+=parseFloat(good.yck); - yck = parseFloat(good.yck) - } else { - // all_prestore+=order_m*1 - yck = parseFloat(order_m) - order_m = 0 - } - let atxt10 = "formData.prestore"; //预存金额 - let atxt11 = "formData.pre_json"; //预存json - let atxt12 = "formData.all_yck_arr"; //预存真实抵扣列表 - th.setData({ - [atxt10]: yck, - [atxt11]: [good.pre_json], - [atxt12]: [yck], - }) - // formData.prestore - // all_yck_arr.push(yck) //真实预存款抵扣金额 - // all_pre_json.push(good.pre_json) - // all_prestore = parseFloat(all_prestore); //真实预存款抵扣金额总和 - } - } - } else { - let yct1 = 'bn_goods.yck_off'; - let yct2 = 'bn_goods.yck'; - let yct3 = 'bn_goods.yckid'; - let yct4 = 'bn_goods.pre_json'; - let atxt10 = "formData.prestore"; //预存金额 - let atxt11 = "formData.pre_json"; //预存json - let atxt12 = "formData.all_yck_arr"; //预存真实抵扣列表 - th.setData({ - [yct2]: 0, - [yct3]: '', - [yct4]: '', - [atxt10]: 0, - [atxt11]: '', - [atxt12]: [], - }) - } - - //判断是否同城配送,而且没有调用过 - if(th.data.bn_exp_type==2 && th.data.user_addr) { - - var lon=0;var lat=0; - //-- 获取距离 -- - await getApp().request.promisePost("/api/weshop/order/sameCityExp/getGeocoder", { - is_json: 1, data: {address:th.data.user_addr.more_address+th.data.user_addr.address} - }).then(res=>{ - if(res.data.code==0){ - var data= JSON.parse(res.data.data); - if(data.status==0){ - lon=data.result.location.lng; - lat=data.result.location.lat; - } - } - }) - - - var gd_w = good['weight'] * good['buynum']; - //-- 获取距离 -- - var req_data = { - store_id: os.stoid, - order_amount: order_m, - lon: lon, lat: lat, - pickup_id: bn_pick, - goods_weight: gd_w - } - - var is_next=1; - //获取同城配送参数 - await getApp().request.promisePost("/api/weshop/order/sameCityExp/getMoney", { - is_json: 1, - data: req_data - }).then(res => { - if (res.data.code == 0) { - var wl_txt = "formData.shipping_price"; - th.setData({ [wl_txt]: res.data.data, }) - }else{ - is_next=0; - wx.showToast({ - title: res.data.msg, icon: 'none', duration: 2000 - }) - } - }) - if(!is_next) return false - } - - - - //--看一下有没有订单优惠--0 - total_m = parseFloat(total_m) + parseFloat(th.data.formData.shipping_price); - order_m = parseFloat(order_m) + parseFloat(th.data.formData.shipping_price); - var atxt = "formData.total_amount"; - th.setData({ [atxt]: total_m, }) - - var txt = "formData.user_money"; - var txt2 = "formData.order_amount"; - var txt4 = "formData.integral"; - - - //-- 最后的金额小于佣金 -- - if(parseFloat(order_m) parseFloat(order_m)) { - order_m = parseFloat(order_m).toFixed(2); - th.setData({ [txt]: order_m, [txt2]: 0, [txt4]: all_integral, show_submit: 1,submit:0 }) - } else { - order_m = parseFloat(order_m - amoney); - order_m = order_m.toFixed(2); - th.setData({ [txt]: amoney, [txt2]: order_m, [txt4]: all_integral, show_submit: 1,submit:0 }) - } - } else { - th.setData({ [txt]: 0, [txt2]: order_m, [txt4]: all_integral, show_submit: 1,submit:0}) - } - wx.hideLoading(); - - //}); - - }, - - //--------------------提交订单----------------------- - async submitForm(t) { - var sub_value = t; - this.setData({submit:1}) - - if (this.data.is_summit_ing == 1) return false; //--提交中退出-- - this.data.is_summit_ing = 1; - var th = this, pdata = new Array(); - var ff = true; - //------------立即购买------------- - if (th.data.is_b_now == 1 && th.data.bn_goods.prom_type != 5) { - - if (th.data.bn_exp_type == 0 && th.data.user_addr == null) { - ff = false; getApp().my_warnning("请选择收货地址", 0, th); - th.data.is_summit_ing = 0; - } - if (!ff) return false; - var addr = th.data.user_addr; - if (th.data.bn_exp_type == 1) addr = null; - - if (th.data.bn_exp_type == 0) - if (th.data.wu_arr == null || th.data.wu_arr.length <= 0) { - getApp().my_warnning("读取物流失败", 0, th); - th.data.is_summit_ing = 0; - return false; - } - - - var integrals = 0; - var get_datas = { - user_id: getApp().globalData.user_id, store_id: o.stoid, - }; - await getApp().request.promiseGet("/api/weshop/users/getAllPoints", { - data: get_datas - }).then(res => { - if (res.data.code == 0) { - integrals = res.data.data.Integral; - } - }) - - //判断积分的情况 - if (th.data.formData.integral && parseFloat(th.data.formData.integral) < parseFloat(integrals)) { - getApp().my_warnning("积分不足", 0, th); - th.data.is_summit_ing = 0; - return false; - } - - - var item = { - 'user_id': to.globalData.user_id, - 'consignee': addr == null ? "" : addr.consignee, - 'province': addr == null ? 0 : addr.province, - 'city': addr == null ? 0 : addr.city, - 'district': addr == null ? 0 : addr.district, - 'twon': addr == null ? 0 : addr.twon, - 'address': addr == null ? "" : addr.address, - 'more_address': addr == null ? "" : addr.more_address, - //'mobile': th.data.userinfo.mobile, - 'mobile': addr == null ? th.data.userinfo.mobile : addr.mobile, - 'email': '', - 'shipping_code': th.data.bn_exp_type == 1 ? 0 : th.data.wu_arr[th.data.index].code, - 'shipping_name': th.data.bn_exp_type == 1 ? '' : th.data.wu_arr[th.data.index].name, - 'invoice_title': '', - 'goods_price': th.data.formData.all_price, //商品总价 - 'shipping_price': th.data.formData.shipping_price, //物流金额 - 'user_money': th.data.formData.user_money, //使用余额 - 'total_amount': th.data.formData.total_amount, //订单总价 - 'order_amount': th.data.formData.order_amount, //应付 - 'user_note': t.detail.value.user_note, //用户备注 - 'store_id': oo.stoid, //商家 - 'pickup_id': th.data.bn_pick, //门店 - 'exp_type': th.data.bn_exp_type, //配送方式 - 'order_goods': new Array(), - 'integral': th.data.formData.integral, - }; - //是不是重新提交 - if (th.data.is_continue == 1) item.is_continue = 1; - - //-- 如果有使用佣金抵扣的话 -- - if(th.data.bn_use_commission){ - item.use_commission=th.data.bn_goods.use_commission; - } - var order_prom_list = {}; - //--判断有没有优惠活动-- - if (th.data.formData.order_prom_amount > 0) { - order_prom_list.order_prom_id = th.data.formData.order_prom_id; - order_prom_list.order_prom_amount = th.data.formData.order_prom_amount; - } - item.order_prom_list = order_prom_list; - - - //获取立即购买的商品的信息 - var gg = to.get_b_now(); - //--商品的房间号-- - if (gg.room_id && gg.room_id > 0) { - item.room_ids = gg.room_id; - } - if(gg.groupchat_id && gg.groupchat_id!='undefined'){ - item.groupchat_ids=gg.groupchat_id - } - - //老会员成为分销下线需要的参数 - if (getApp().globalData.first_leader && !getApp().globalData.userInfo.first_leader) { - //判断一下分享人是不是分享商 - await app.request.promiseGet("/api/weshop/users/get/" + os.stoid + "/" + getApp().globalData.first_leader, {}).then(res => { - if (res.data.code == 0) { - var user = res.data.data; - if (user.is_distribut == 1) { - item.first_leader = parseInt(getApp().globalData.first_leader); - } - } - }) - } - - - var goods = { - 'goods_id': gg.goods_id, - 'goods_name': gg.goods_name, - 'goods_sn': gg.goods_sn, - 'goods_num': gg.goods_num, - 'market_price': th.data.bn_goods.market_price, - 'goods_price': th.data.bn_goods.shop_price, - 'member_goods_price': th.data.bn_goods.shop_price, - 'store_id': oo.stoid, - 'prom_type': th.data.bn_goods.prom_type, //促销活动类型 - 'prom_id': th.data.bn_goods.prom_id, //促销活动id - }; - - if(getApp().globalData.skinface_id){ - goods.skinface_id=getApp().globalData.skinface_id; - } - - if(th.data.bn_goods.whsle_id){ - item.is_whsle=1; - goods.is_whsle_goods=1; - } - - - //-- 把导购的信息填入-- - if (gg.guide_id) { - goods.guide_id = gg.guide_id; - goods.guide_type = gg.guide_type; - //调用接口判断是不是会员 - await getApp().request.promiseGet("/api/weshop/shoppingGuide/getId/" + oo.stoid + "/" + gg.guide_id, {}).then(res => { - if (res.data.code == 0) { - goods.guide_name = res.data.data.salesman; - goods.guide_sn = res.data.data.salesman_no; - } - }) - } - if(gg.groupchat_id && gg.groupchat_id!='undefined'){ - goods.groupchat_id=gg.groupchat_id - } - //--商品的房间号-- - if (gg.room_id && gg.room_id > 0) { - goods.room_id = gg.room_id; - } - - item.order_goods.push(goods); - pdata.push(item); - } - - - if (pdata.length == 0) return; - //如果有使用预存,要处理 - if (th.data.formData && th.data.formData.prestore * 1 > 0 && th.data.bn_goods.yck_off==2) { - let formData = th.data.formData - let pre_json = formData.pre_json - let all_yck_arr = formData.all_yck_arr - pdata.map((item, i) => { - item.pre_cut = all_yck_arr[i] ? all_yck_arr[i].toFixed(2) : 0 - item.pre_preferential = 0 - item.pre_json = pre_json[i] ? JSON.stringify(pre_json[i]) : '' - }) - } - if (!pdata.keyid && th.data.bn_goods) { - pdata.map(ite => { - ite.keyid = th.data.bn_goods.keyid - }) - // pdata.keyid = th.data.bn_goods.keyid - } - //------------------------------------------ - - var str = JSON.stringify(pdata); - - wx.showLoading({ title: "加载中" }); - wx.request({ - url: oo.url + '/api/weshop/order/createWxdOrder', - data: str, - method: 'POST', - header: { - 'content-type': 'application/json' - },// 设置请求的 header - success: function (res) { - wx.hideLoading(); - if (res.statusCode == 200) { - var data = res.data; - if (data.code == 0) { - - //如果是购物车结算,还要删除购物车 - if (th.data.is_b_now == 0) { - var list = th.data.cartlist_y; - for (var i = 0; i < list.length; i++) { - //删除购物车 - a.delete("/api/weshop/cart/del/" + oo.stoid + "/" + list[i].id, {}); - } - } - var order_amount = 0; - pdata.forEach(function (em, ind) { - order_amount += em.order_amount; - }) - //要进行判断,如果是用微信支付,就要跳转到支付界面 - if (order_amount > 0) { - th.setData({ isclose: 0 }); - //void e.jumpToCart4({ - // order_sn: data.data, - //}, 1); - util_pay.pay(data.data, function () { - //app.my_warnning("支付成功",1,th); - //setTimeout(function () { - wx.redirectTo({ - url: "/pages/payment/pay_success/pay_success?type=2&order_sn=" + data.data - }) - //},1000) - - }, function () { - //支付失败 - setTimeout(function () { - wx.navigateBack({ delta: 1 }) - }, 1000) - }, oo.stoid); - - } else { - var dd = { - parent_sn: data.data, - store_id: oo.stoid, - type: 2, - }; - a.post("/api/weshop/order/pay/createOrder", { - data: dd, - success: function (t) { - //console.log(t); - if (t.data.code == 0) { - //app.my_warnning("支付成功",1,th); - //setTimeout(function () { - th.setData({ isclose: 0 }); - wx.redirectTo({ - url: "/pages/payment/pay_success/pay_success?type=2&order_sn=" + data.data, - }) - //}, 1000) - } - }, - fail: function () { - - } - }); - } - - } - else { - //--内容换行-- - var msg = data.msg; - //赠品活动已经取消,无法赠送,是否继续买单? - if (msg.indexOf("是否继续买单") > 0) { - wx.showModal({ - title: "提示", - content: data.msg, - cancelText: '取消', - confirmText: '确定', - showCancel: true, - success(res) { - if (res.cancel) { - th.setData({submit:0}) - return; - } else if (res.confirm) { - th.data.is_continue = 1; - th.submitForm(sub_value); - } - } - }) - return; - } - if (msg.length > 13) { - msg = msg.slice(0, 13) + "\r\n" + msg.slice(13); - } - getApp().confirmBox(msg); - th.data.is_summit_ing = 0; //是否提交中 - } - } else { - th.setData({submit:0}) - th.data.is_summit_ing = 0; //是否提交中 - console.log("index.js wx.request CheckCallUser statusCode" + res.statusCode); - } - }, - fail: function () { - th.setData({submit:0}) - th.data.is_summit_ing = 0; - wx.hideLoading(); - console.log("index.js wx.request CheckCallUser fail"); - }, - complete: function () { } - }) - - }, + /** + * 页面的初始数据 + */ + data: { - //---确认线下门店的数量足不足--- - async check_store_num(goods_id, pick, goods_num, func) { - var lock = 0, pick_no, plist, erpwareid; - //先读取门店的lock - await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", { - data: { store_id: os.stoid, wareId: goods_id, storageId: pick, pageSize: 1000 } - }).then(res => { - if (res.data.code == 0 && res.data.data.total > 0) { - for (var i in res.data.data.pageData) - lock += res.data.data.pageData[i].outQty; - } - }) - //先获取门店的编号 - await getApp().request.promiseGet("/api/weshop/pickup/get/" + os.stoid + "/" + pick, { - data: { storeId: os.stoid, goodsId: t.goods_id, pickupId: pick } - }).then(res => { - if (res.data.code == 0) { - pick_no = res.data.data.pickup_no; - } - }) - //先获取商品的线下库存 - await getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + goods_id, { - data: { storeId: os.stoid, goodsId: t.goods_id, pickupId: pick } - }).then(res => { - if (res.data.code == 0) { - erpwareid = res.data.data.erpwareid; - } - }) - //读取线下的门店库存 - await getApp().request.promiseGet("/api/weshop/goods/getWareStorages", { - data: { storageNos: pick_no, wareIds: encodeURIComponent(erpwareid), storeId: os.stoid } - }).then(res => { - if (res.data.code == 0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length) { - plist = res.data.data.pageData[0]; - } - }) - var isok = 1; - if (goods_num > plist.CanOutQty - lock) { - isok = 0; - } - func(isok); }, - useCoupon: function () { - if (this.data.order.couponNum <= 0) { - getApp().my_warnning("无可用优惠券", 0, this); - return; - } + /** + * 生命周期函数--监听页面加载 + */ + onLoad(options) { - var a = { - lid: this.data.coupon ? this.data.coupon.id : "0" - }; - wx.navigateTo({ - url: "/pages/user/checkcoupon/checkcoupon?" + s.Obj2Str(a) - }); - }, - enterAddressPage: function () { - getApp().globalData.is_cart_old = 1; - this.data.isget_by_quan = {}; - this.data.enterAddressPage = !0, wx.navigateTo({ - url: "/pages/user/address_list/address_list" - }); }, - - - //--------立即购买时,选择自提和物流---------- - setexptype: function (t) { - var th = this; - var ty = t.currentTarget.dataset.t, def_exp_code = getApp().globalData.userInfo.def_exp_code; - th.setData({ bn_exp_type: ty }); - //当物流为空的时候。 - if (ty == 0 && th.data.wu_arr == null) { - th.data.isget_by_quan = {}; - return th.get_wuliu(th.calculatePrice2()); - } - - //--自提就要把包邮券清理掉-- - if (ty == 1) { - th.data.isget_by_quan = {}; - if (th.data.using_quan && th.data.using_quan[th.data.bn_pick] && th.data.using_quan[th.data.bn_pick].isby == 1) { - th.setData({ using_quan: {} }); - } - } - - //判断有没有默认的物流地址值 - if (def_exp_code != "" && def_exp_code != null && def_exp_code != undefined && !th.data.is_default_logistics) { - var wu_arr = this.data.wu_arr; - if (wu_arr != null && wu_arr != "") { - for (var i = 0; i < wu_arr.length; i++) { - if (wu_arr[i].shipping_code == def_exp_code) { - th.setData({ index: i }); - } - } - } - } - th.calculatePrice2() + /** + * 生命周期函数--监听页面初次渲染完成 + */ + onReady() { }, - //--------立即购买时,使用余额-------- - set_bn_useyuer: function () { - var th = this; - th.setData({ bn_use_money: !th.data.bn_use_money }); - th.calculatePrice2(); - }, - set_js_useyuer: function () { - var th = this; - th.setData({ js_use_money: !th.data.js_use_money }); - th.calculatePrice(); - }, - - //----------立即购买,选择物流------------- - bindPickerChange: function (e) { - var ind = e.detail.value - this.setData({ index: ind }); - this.calculatePrice2(); - }, - //----------购物车结算,选择物流------------- - bindPickerChange_w: function (e) { - var ind = e.detail.value, txt = e.currentTarget.dataset.txt; - this.setData({ [txt]: ind }); - this.calculatePrice(); - }, + /** + * 生命周期函数--监听页面显示 + */ + onShow() { - cart_set_err: function (e) { - var txt = e.currentTarget.dataset.err; - var ob = {}; - ob[txt] = this.data.imgUrl + "/miniapp/images/default_g_img.gif"; - this.setData(ob); }, - //// 开启物流的弹窗 - show_wu_arr: function (e) { - var wu_arr_txt = e.currentTarget.dataset.txt; - var w_sele_index = e.currentTarget.dataset.w_sele_index; - var is_express = null; - var ob = { open_express: 1, wu_arr_txt: wu_arr_txt, disabled: 1 }; + /** + * 生命周期函数--监听页面隐藏 + */ + onHide() { - //--如果是多个门店的时候-- - if (w_sele_index != undefined) { - is_express = this.data.cartlist[w_sele_index].wind; - ob['is_express'] = is_express; - } - this.setData(ob); - }, - // 关闭物流的弹窗 - close_express: function () { - this.setData({ open_express: 0, disabled: 0 }); - }, - // 选择物流 - click_express_name: function (e) { - var express_name = e.currentTarget.dataset.name, shippingcode = e.currentTarget.dataset.shippingcode; - var index = e.currentTarget.dataset.idxe; - var ob = { is_express: index, is_shipping_code: shippingcode, disabled: 0 }; - ob[this.data.wu_arr_txt] = index; - this.setData(ob); }, - //点击确定物流 - determine_expres: function (e) { - this.setData({ open_express: 0 }); - this.calculatePrice2(); - }, - - //设置默认物流 - select_default_logistics: function () { - var th = this; - var is_shipping_code = this.data.is_shipping_code - getApp().request.put("/api/weshop/users/update", { - data: { user_id: getApp().globalData.user_id, store_id: oo.stoid, def_exp_code: is_shipping_code }, - success: function (rse) { - if (rse.data.code == 0) { - getApp().globalData.userInfo.def_exp_code = is_shipping_code; - th.setData({ open_express: 0 }); - //----计算此时购物车的价格,这个页面没有calculatePrice(),2021.7.19-------- - //if(th.data.is_b_now==1) th.calculatePrice2(); - //else th.calculatePrice(); - th.calculatePrice2(); - } - } - }) - }, - - //更新下默认,在onshow里面 - update_code() { - var th = this, m_wind = 0, def_exp_code = getApp().globalData.userInfo.def_exp_code; - - - //--定时器,判断wu_arr不未空-- - var uii = setInterval(function () { - if (th.data.wu_arr) { - clearInterval(uii); - if(th.data.is_default_logistics) return false; - for (var k = 0; k < th.data.wu_arr.length; k++) { - var item = th.data.wu_arr[k]; - if (def_exp_code == item.code) { m_wind = k; } - } - //--如果是立即购买-- - th.setData({ index: m_wind, is_express: m_wind }); + /** + * 生命周期函数--监听页面卸载 + */ + onUnload() { - } - }, 500); }, - //检查区域是不是包邮 - check_area: function (arr) { - var user_addr = this.data.user_addr; - for (var i in arr) { - var item = arr[i]; - if (user_addr.twon == item || user_addr.district == item - || user_addr.city == item || user_addr.province == item) { - return 0; - } - } - return 1; - }, + /** + * 页面相关事件处理函数--监听用户下拉动作 + */ + onPullDownRefresh() { - //检查立即购买的商品是不是不包邮 - check_good: function (arr, goods_id) { - if (!goods_id) goods_id = this.data.bn_goods.goods_id; - for (var i in arr) { - var item = arr[i]; - if (goods_id == item) return 0; - } - return 1; - }, - check_by_area: function (region_list) { - var arr = region_list.split(","); - var check = this.check_area(arr); - return !check; - }, - check_by_goods: function (goods_list, goods_id) { - var arr = goods_list.split(","); - var check = this.check_good(arr, goods_id); - return !check; }, + /** + * 页面上拉触底事件的处理函数 + */ + onReachBottom() { - //从优惠的映射中拿出商品从表的item - arr_get_goods: function (goods_id, arr) { - for (var i in arr) { - if (arr[i].goods_id == goods_id) return arr[i]; - } }, - //跳转到购买卡 - buycard: function () { - getApp().goto("/pages/user/plus/plus"); - getApp().globalData.plus_buy_back = 1; - }, + /** + * 用户点击右上角分享 + */ + onShareAppMessage() { - //使用佣金抵扣 - set_bn_commission:function () { - var th = this; - th.setData({bn_use_commission: !th.data.bn_use_commission}); - th.calculatePrice2(); } - - -}); +}) \ No newline at end of file diff --git a/pages/cart/cart2_inte/cart2_inte.wxml b/pages/cart/cart2_inte/cart2_inte.wxml index 1cd8270..f0db95a 100644 --- a/pages/cart/cart2_inte/cart2_inte.wxml +++ b/pages/cart/cart2_inte/cart2_inte.wxml @@ -1,248 +1,2 @@ - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - {{bn_pickname}} - - - - - - - - {{bn_goods.goods_name}} - - - - {{filters.show_gui_ge(bn_goods.goods_spec,bn_goods.goods_color)}} - - - - - - - {{bn_goods.integral}}积分 - + - {{filters.toFix(bn_goods.shop_price,2)}} - - 佣金:{{filters.toFix(bn_goods.use_commission/bn_goods.buynum,2)}}*{{bn_goods.buynum}} - - x{{bn_goods.buynum}} - - - - - - - - {{order.store_prom}} - - - - - - 优惠券 {{(selected_quan_list?selected_quan_list.length:0)+ (get_by_quan_list?get_by_quan_list.length:0)}}张可用 - - - 不使用 - - ¥{{using_quan[bn_pick].money}}元优惠券 - 包邮券 - - - - - - - - - - - 选择物流 - - {{wu_arr[index].name}} - - - - - - - - - 留言 - - - - - - - - - - 使用预存 - - ¥{{filters.toFix(bn_goods.yck,2)}} - - - - - - - - 使用佣金 :¥{{bn_goods.use_commission}} - - - - - - - - 使用余额 :¥{{yuer}} - - - - - - - - - - 商品金额 - ¥ {{formData.all_price}}元 - - - 可用积分{{integral_can}} - {{formData.integral}}积分 - - - 配送费用 - ¥ {{formData.shipping_price}}元 - - - - - 订单优惠 - - ¥ {{filters.toFix(formData.order_prom_amount,2)}}元 - - - - 使用预存 - - ¥ {{filters.toFix(formData.prestore,2)}}元 - - - 使用余额 - - ¥ {{formData.user_money}}元 - - - - - - - 应付金额:¥{{formData.order_amount}} - 应付积分:{{formData.integral}}积分 - - - -
- - - - - - - - - - 选择物流名字 - - - × - - - - - - - - Γ - - - - - {{express_list.name}} - - - - - - - 确定 - - - 设为默认 - - - - - - - + +pages/cart/cart2_inte/cart2_inte.wxml diff --git a/pages/cart/cart2_pt/cart2_pt.js b/pages/cart/cart2_pt/cart2_pt.js index ed306e1..71cf5b0 100644 --- a/pages/cart/cart2_pt/cart2_pt.js +++ b/pages/cart/cart2_pt/cart2_pt.js @@ -72,6 +72,8 @@ Page({ bn_is_order_yh:1, //是不是订单优惠 bn_is_post_temp:1, //是不是进行计算包邮模板 + + same_ok:1, //同城配送的控制,默认ok }, onLoad: function (t) { console.log("onLoad_pt_cart"); @@ -380,6 +382,10 @@ Page({ break; } + if(th.data.show_same_city==1 && th.data.json_d.pickupway && th.data.json_d.pickupway == 2 ){ + et = 2; + } + t.data.data.shop_price = gg.goods_price; //--如果是普通购买的时候-- if (gg.is_normal == 1) { @@ -564,6 +570,10 @@ Page({ //先获取是否有关闭使用优惠券 getApp().getConfig2(function (ee) { var json_d = JSON.parse(ee.switch_list); + + //测试强行写死,后面一定要删除 + //json_d.pickupway=2; + th.data.json_d = json_d; th.data.ispt_goods = json_d.ispt_goods; //是不是平摊到单品的控制参数赋值 var is_default_logistics = json_d.is_default_logistics; @@ -851,7 +861,17 @@ Page({ }) } }) - if (!is_next) return false + if (!is_next){ + th.setData({show_submit:1, submit: 0,same_ok:0 }) + return false + } + + th.data.lon=lon; + th.data.lat=lat; + th.data.bn_gd_w=gd_w; + th.data.bn_samecity_order_amount=req_data.order_amount; + + } //-- 如果是订单优惠的时候,allpice要拿来减掉一些 -- @@ -1112,8 +1132,15 @@ Page({ 'order_goods': new Array(), }; + //-- 同城配送检验的参数 -- + if(item.exp_type==2){ + item.lon=th.data.lon?th.data.lon:0; + item.lat=th.data.lat?th.data.lat:0; + item.goods_weight=th.data.bn_gd_w; + item.samecity_order_amount=th.data.bn_samecity_order_amount; + } - //--判断有没有优惠活动-- + //--判断有没有优惠活动-- if (th.data.formData.order_prom_amount > 0) { var order_prom_list = {}; order_prom_list.order_prom_id = th.data.formData.order_prom_id; @@ -1404,7 +1431,7 @@ Page({ setexptype_w: function (t) { var th = this; var ty = t.currentTarget.dataset.t, txt = t.currentTarget.dataset.txt; - th.setData({ [txt]: ty }); + th.setData({ [txt]: ty,same_ok:1 }); var iszt = 1; if (ty == 0) { th.setData({ is_all_zt: 0 }); @@ -1426,7 +1453,7 @@ Page({ setexptype: function (t) { var th = this; var ty = t.currentTarget.dataset.t; - th.setData({ bn_exp_type: ty }); + th.setData({ bn_exp_type: ty, same_ok:1 }); //当物流为空的时候。 if (ty == 0 && th.data.wu_arr == null) { return th.get_wuliu(th.calculatePrice2()); diff --git a/pages/cart/cart2_pt/cart2_pt.wxml b/pages/cart/cart2_pt/cart2_pt.wxml index 87cefab..68aa51e 100644 --- a/pages/cart/cart2_pt/cart2_pt.wxml +++ b/pages/cart/cart2_pt/cart2_pt.wxml @@ -198,7 +198,7 @@ 应付金额:¥{{formData.order_amount}}
- +
diff --git a/pages/cart/cart_wk/cart_wk.js b/pages/cart/cart_wk/cart_wk.js index 0b2f618..4d5e79e 100644 --- a/pages/cart/cart_wk/cart_wk.js +++ b/pages/cart/cart_wk/cart_wk.js @@ -50,7 +50,8 @@ Page({ bn_is_order_yh:1, //是不是订单优惠 bn_is_post_temp:1, //是不是进行计算包邮模板 - paying:0 //支付中 + paying:0, //支付中 + same_ok:1 //同城配送的控制 }, @@ -71,6 +72,11 @@ Page({ //--初始化-- getApp().getConfig2(function (e) { var json_d = JSON.parse(e.switch_list); + + //测试强行写死,后面一定要删除 + //json_d.pickupway=2; + + th.data.json_d = json_d; var is_default_logistics = json_d.is_default_logistics; var is_same_city = json_d.is_same_city; @@ -343,7 +349,7 @@ Page({ //-- 如果商品有同城配送的参数的时候,一件代发商品不能显示同城配送按钮 -- if(goods.is_same_city && th.data.is_same_city && goods.whsle_id<=0){ - getApp().request.promiseGet("/api/weshop/pickup/get/"+os.stoid+"/"+order.pickup_id, {}).then(res=>{ + await getApp().request.promiseGet("/api/weshop/pickup/get/"+os.stoid+"/"+order.pickup_id, {}).then(res=>{ if(res.data.code==0){ var pk=res.data.data; if(pk && pk.is_same_city){ @@ -369,6 +375,12 @@ Page({ break; //物流 } + if(th.data.show_same_city==1 && th.data.json_d.pickupway && th.data.json_d.pickupway == 2 ){ + exp_type = 2; + } + + + order.order_goods = order_goods; //-- 计算获得佣金的金额 -- @@ -416,6 +428,7 @@ Page({ var allpice = th.data.order.order_amount + th.data.order.user_money + th.data.order.tail_money; var o_condition = allpice; var ord_prom=null; + var order_prom_amount=0; if (th.data.bn_is_order_yh) { await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", { @@ -432,6 +445,10 @@ Page({ //--计算物流-- if (th.data.exp_type == 0) { th.calculate_wuliu(); + return false; + }else if(th.data.exp_type == 2){ + th.calculate_same_city(); + return false; } else { var order_prom_id=0; @@ -454,6 +471,10 @@ Page({ } } + + + + //--订单优惠的显示-- var order_prom_txt1 = "formData.order_prom_id"; var order_prom_txt2 = "formData.order_prom_amount"; @@ -498,7 +519,7 @@ Page({ set_wuliu: function (e) { var type = e.currentTarget.dataset.type, th = this; this.setData({ - exp_type: type + exp_type: type,same_ok:1 }); //--计算物流的值-- if (type == 0) { @@ -525,6 +546,7 @@ Page({ //如果有再计算价格的过程中,不能提交订单 if(this.data.submit){ return false} + if(!this.data.same_ok){ return false} //--物流支付时要有地址-- if (this.data.exp_type == 0 && this.data.user_addr == null) { @@ -564,7 +586,7 @@ Page({ tail_pay_type: ind,//0微信支付 1余额支付 }; - if (th.data.exp_type == 0) { + if (th.data.exp_type == 0 && th.data.exp_type == 2) { var index = th.data.index; dd.shipping_code = th.data.wu_arr[index].code; dd.shipping_name = th.data.wu_arr[index].name; @@ -573,10 +595,18 @@ Page({ } //如果是同城配送的时候 - if(th.data.exp_type==2){ - dd.shipping_price = parseFloat(th.data.exp_price); + // if(th.data.exp_type==2){ + // dd.shipping_price = parseFloat(th.data.exp_price); + // } + + if(dd.exp_type==2){ + dd.lon=th.data.lon?th.data.lon:0; + dd.lat=th.data.lat?th.data.lat:0; + dd.goods_weight=th.data.bn_gd_w; + dd.samecity_order_amount=th.data.bn_samecity_order_amount; } + if(getApp().globalData.scene){ dd.scene=getApp().globalData.scene; } @@ -612,6 +642,12 @@ Page({ //---用微信支付--- if (dd.tail_pay_type == 0) { + if (t.data.code != 0) { + getApp().my_warnning(t.data.msg, 1, th); + th.data.paying=0; + return false; + } + util_pay.pay_data(t,function (){ var allmoney = th.data.allpice; th.jumpPaymentPage(th.data.order.order_sn, allmoney); @@ -984,7 +1020,15 @@ Page({ }) } }) - if(!is_next) return false + if(!is_next) { + th.setData({show_submit:1, submit: 0,same_ok:0 }) + return false + } + + th.data.lon=lon; + th.data.lat=lat; + th.data.bn_gd_w=gd_w; + th.data.bn_samecity_order_amount=req_data.order_amount; var exp_price = parseFloat(shipping_price).toFixed(2); allpice = parseFloat(exp_price) + parseFloat(allpice); diff --git a/pages/cart/cart_wk/cart_wk.wxml b/pages/cart/cart_wk/cart_wk.wxml index 8fbfebb..d030b69 100644 --- a/pages/cart/cart_wk/cart_wk.wxml +++ b/pages/cart/cart_wk/cart_wk.wxml @@ -135,7 +135,7 @@ ¥{{filters.toFix(order.tail_money+exp_price,2)}}
--> 支付合计:¥{{filters.toFix(order.tail_money+exp_price-(bn_use_commission?goods.use_commission:0)-formData.order_prom_amount ,2)}} - 支付尾款 + 支付尾款 diff --git a/pages/goods/goodsInfo/goodsInfo.js b/pages/goods/goodsInfo/goodsInfo.js index 255145f..b148c9b 100644 --- a/pages/goods/goodsInfo/goodsInfo.js +++ b/pages/goods/goodsInfo/goodsInfo.js @@ -2358,7 +2358,7 @@ Page({ if (e.prom_type == 4) { s.set_b_now(e); - var url = "/pages/cart/cart2_inte/cart2_inte?is_bnow=1&goods_id=" + e.goods_id; + var url = "/packageE/pages/cart/cart2_inte/cart2_inte?is_bnow=1&goods_id=" + e.goods_id; getApp().goto(url); } else { //要判断积分购的普通购买有没有参加优惠活动 @@ -6113,20 +6113,20 @@ Page({ //---自定义海报 产品质量保证 if(th.data.share_b_img && th.data.poster.show_quality==1 && type!=4){ var g_path = "../../../images/share/s_gou.png"; - context.drawImage(g_path, 56 * unit, 640 * unit, 22 * unit, 22 * unit); + context.drawImage(g_path, 56 * unit, 644 * unit, 22 * unit, 22 * unit); context.setFillStyle("red") context.setFontSize(18 * unit) - context.fillText("正品保证", 84 * unit, 660 * unit); + context.fillText("正品保证", 84 * unit, 664 * unit); - context.drawImage(g_path, 218 * unit, 640 * unit, 22 * unit, 22 * unit); + context.drawImage(g_path, 218 * unit, 644 * unit, 22 * unit, 22 * unit); context.setFillStyle("red") context.setFontSize(18 * unit) - context.fillText("纯实体店", 246 * unit, 660 * unit); + context.fillText("纯实体店", 246 * unit, 664 * unit); - context.drawImage(g_path, 388 * unit, 640 * unit, 22 * unit, 22 * unit); + context.drawImage(g_path, 388 * unit, 644 * unit, 22 * unit, 22 * unit); context.setFillStyle("red") context.setFontSize(18 * unit) - context.fillText("官方验证", 420 * unit, 660 * unit); + context.fillText("官方验证", 420 * unit, 664 * unit); } //-------大图后面就不一样了----------- @@ -6136,10 +6136,11 @@ Page({ break } //---画线--- - context.setLineWidth(1 * unit) - context.moveTo(32 * unit, 710 * unit) - context.lineTo(520 * unit, 710 * unit) - context.stroke(); + // context.setLineWidth(1 * unit) + // context.moveTo(32 * unit, 710 * unit) + // context.lineTo(520 * unit, 710 * unit) + // context.stroke(); + //---文字--- context.setFillStyle("black") context.setFontSize(22 * unit) @@ -6214,10 +6215,10 @@ Page({ //---画线--- - context.setLineWidth(1 * unit) - context.moveTo(32 * unit, 710 * unit) - context.lineTo(520 * unit, 710 * unit) - context.stroke(); + // context.setLineWidth(1 * unit) + // context.moveTo(32 * unit, 710 * unit) + // context.lineTo(520 * unit, 710 * unit) + // context.stroke(); //---文字--- context.setFillStyle("black") @@ -6259,10 +6260,10 @@ Page({ break } //---画线--- - context.setLineWidth(1 * unit) - context.moveTo(32 * unit, 670 * unit) - context.lineTo(520 * unit, 670 * unit) - context.stroke(); + // context.setLineWidth(1 * unit) + // context.moveTo(32 * unit, 670 * unit) + // context.lineTo(520 * unit, 670 * unit) + // context.stroke(); //画秒杀的图片 if(th.data.is_share_text){ @@ -6300,10 +6301,11 @@ Page({ break } //---画线--- - context.setLineWidth(1 * unit) - context.moveTo(32 * unit, 690 * unit) - context.lineTo(520 * unit, 690 * unit) - context.stroke(); + // context.setLineWidth(1 * unit) + // context.moveTo(32 * unit, 690 * unit) + // context.lineTo(520 * unit, 690 * unit) + // context.stroke(); + //---文字--- context.setFillStyle("black") context.setFontSize(24 * unit) @@ -6348,10 +6350,10 @@ Page({ break } //---画线--- - context.setLineWidth(1 * unit) - context.moveTo(32 * unit, 690 * unit) - context.lineTo(520 * unit, 690 * unit) - context.stroke(); + // context.setLineWidth(1 * unit) + // context.moveTo(32 * unit, 690 * unit) + // context.lineTo(520 * unit, 690 * unit) + // context.stroke(); //---文字--- context.setFillStyle("black") context.setFontSize(24 * unit) @@ -6395,10 +6397,10 @@ Page({ case -1: //秒杀商品的展示 //---画线--- - context.setLineWidth(1 * unit) - context.moveTo(32 * unit, 670 * unit) - context.lineTo(520 * unit, 670 * unit) - context.stroke(); + // context.setLineWidth(1 * unit) + // context.moveTo(32 * unit, 670 * unit) + // context.lineTo(520 * unit, 670 * unit) + // context.stroke(); context.setFillStyle("black") diff --git a/pages/test/test.js b/pages/test/test.js deleted file mode 100644 index 2f6f550..0000000 --- a/pages/test/test.js +++ /dev/null @@ -1,53 +0,0 @@ -var ut = require("../../utils/util.js"); -var os=getApp().globalData.setting; - -var regeneratorRuntime = require('../../utils/runtime.js'); - -Page({ - data:{ - store:null, - imghots: os.imghost, - msg:"", - qyid:'wwc96c9375cd8d185a' - }, - - onLoad:function(t){ - - var that=this; - - wx.qy.login({ - success: function (res) { - //var qyid = that.data.qyid; - var req_data = { - js_code: res.code, - //qyid: qyid - }; - - - //调用接口获取userid - getApp().request.promiseGet('/api/weshop/qywechat/getjscode2session', { - data: req_data - }).then(rs => { - if (rs.data.code == 0) { - - - wx.qy.getCurExternalChat ({ - success: function(res) { - var chatId = res.chatId //返回当前外部群的群聊ID - - console.log(chatId); - getApp().confirmBox(chatId+"---"); - - } - }) - - - } - }) - } - }) - }, - - - -}); diff --git a/pages/test/test.json b/pages/test/test.json deleted file mode 100644 index 9e26dfe..0000000 --- a/pages/test/test.json +++ /dev/null @@ -1 +0,0 @@ -{} \ No newline at end of file diff --git a/pages/test/test.wxml b/pages/test/test.wxml deleted file mode 100644 index e69de29..0000000 --- a/pages/test/test.wxml +++ /dev/null diff --git a/pages/test/test.wxss b/pages/test/test.wxss deleted file mode 100644 index f09d0b3..0000000 --- a/pages/test/test.wxss +++ /dev/null @@ -1,26 +0,0 @@ -.all_page{ - position: fixed; - height: 100%; - width: 100%; - background: #fff; - justify-content: center;/*水平居中*/ -} -.all_page .content{ - font-size: 30rpx; - text-align: center; - height: 400px; - width: 100%; - position: absolute; - top: 50%; - margin-top:-200px; -} -.logo{width: 140rpx; height: 140rpx; border-radius:50% } -.all_page .content .title{ - font-size: 36rpx; margin: 20rpx 0 -} - -.all_page .err{ - color:red; - font-size: 36rpx; - margin-top: 300rpx; -} \ No newline at end of file diff --git a/pages/user/order_detail/order_detail.js b/pages/user/order_detail/order_detail.js index 709d5de..76707b0 100644 --- a/pages/user/order_detail/order_detail.js +++ b/pages/user/order_detail/order_detail.js @@ -1767,9 +1767,17 @@ Page({ click_contact:function () { getApp().globalData.no_clear=1; + }, + + + //-- 查看物流 -- + go_wuliu:function (e) { + getApp().go_wuliu(e); } + + }); \ No newline at end of file diff --git a/pages/user/order_detail/order_detail.wxml b/pages/user/order_detail/order_detail.wxml index 7ae0539..22e512e 100644 --- a/pages/user/order_detail/order_detail.wxml +++ b/pages/user/order_detail/order_detail.wxml @@ -1,6 +1,6 @@ - + {{order.consignee}}{{'  '}}{{order.mobile}} @@ -175,7 +175,9 @@ 删除订单 - + diff --git a/pages/user/order_detail/order_detail.wxss b/pages/user/order_detail/order_detail.wxss index d0b0b02..9dbaf3a 100644 --- a/pages/user/order_detail/order_detail.wxss +++ b/pages/user/order_detail/order_detail.wxss @@ -29,6 +29,7 @@ .order-meg { margin-bottom: 20rpx; font-size: 30rpx; + margin-top: 20rpx; } .order-state { diff --git a/pages/user/order_list/order_list.js b/pages/user/order_list/order_list.js index f0c3277..7553b06 100644 --- a/pages/user/order_list/order_list.js +++ b/pages/user/order_list/order_list.js @@ -2836,6 +2836,12 @@ Page({ }, + //-- 查看物流 -- + go_wuliu:function (e) { + getApp().go_wuliu(e); + } + + diff --git a/pages/user/order_list/order_list.wxml b/pages/user/order_list/order_list.wxml index 75c3025..f338b31 100644 --- a/pages/user/order_list/order_list.wxml +++ b/pages/user/order_list/order_list.wxml @@ -245,8 +245,11 @@ 重新退款 退款详情 - - + + + 订单详情 订单详情 diff --git a/pages/user/plus/plus.js b/pages/user/plus/plus.js index 1f8cb09..27d2327 100644 --- a/pages/user/plus/plus.js +++ b/pages/user/plus/plus.js @@ -66,7 +66,7 @@ Page({ }) - //二维码的带入 + //二维码的带入, 生成海报 和 后台plus邀请码 var fir_leader = options.scene; if (fir_leader){ @@ -465,8 +465,9 @@ Page({ // }) } else { t_pay.set_pay_url('/api/weshop/plus/create/plus/order'); - t_pay.pay(req, th.success, function () { - getApp().my_warnning("支付失败", 0, th); + t_pay.pay(req, th.success, function (msg) { + if(!msg) msg='支付失败'; + getApp().my_warnning(msg, 0, th); th.setData({ is_select:0, focus:true, @@ -499,8 +500,10 @@ Page({ }) }else{ t_pay.set_pay_url('/api/weshop/plus/create/plus/order'); - t_pay.pay(req, th.success, function () { - getApp().my_warnning("支付失败", 0, th); + t_pay.pay(req, th.success, function (msg) { + if(!msg) msg="支付失败"; + + getApp().my_warnning(msg, 0, th); th.setData({ is_select:0, focus:true,