define(['$', 'template', 'api', 'native', 'config', 'user'], function ($, template, api, native, config, user) { var backHash; // 回退页面 var orderID; // 订单ID var orderType; // 订单类型 var orderCoupon = 0; // 使用代金券支付的金额 var orderBalance = 0; // 使用余额支付的金额 var orderPayValue = 0; // 使用微信支付的金额 var isRecharge = false; // 是否是充值 function back() { $(document).trigger('spa:navigate', { hash: backHash, pushData: { dontNeedReload: true, animate: 'slideOutDown' //强制设置动画为落下 } }); } return { title: '壹管家上门服务', body: '', init: function (pageData, dtd) { var $view = this; var $doc = $(document); // 充值的回调 function payResult(res) { $doc.trigger('spa:closeloader'); if (res.success) { var orderInfo = user.getOrderInfo(orderID); var params = { orderInfo: orderInfo, charge: res.data, isSpecial: res.data.body == "双11虹口区日常保洁特价体验" }; native.pay(params, function (resA) { if (resA.success) { if (res.data.body == "双11虹口区日常保洁特价体验"){ /*$doc.trigger('spa:openpanel', ['simpleAlert', { message: "活动产品支付成功了" }]);*/ $doc.trigger('spa:navigate', { hash: 'bargain' }); }else { $doc.trigger('spa:navigate', { hash: 'paySuccess' }); } } else { $doc.trigger('spa:openpanel', ['simpleAlert', { message: resA.message }]); } }); } else { $doc.trigger('spa:openpanel', ['simpleAlert', { message: res.message }]); } } $.newTouch('.pay-option', function (event) { event.preventDefault(); var payChannel = $(this).data('value'); $('.btn-pay', $view).attr('data-pay-channel', payChannel); $(this).addClass('checked').parent().siblings().find('a').removeClass('checked'); }, $view); $.newTouch('.btn-pay', function (event) { event.preventDefault(); var payChannel = $(this).attr('data-pay-channel'); if (config.isWX) { payChannel = 'wx_pub'; } if (!payChannel) return; $doc.trigger('spa:openloader'); var params = { user_id: user.id, order_id: orderID, pay_channel: payChannel }; if (isRecharge){ api.payRecharge(params, function (res) { payResult(res) }); }else { api.getPayCharge(params, function (res) { payResult(res) }); } }, $view); //返回 $.newTouch('.cancel-button', function (event) { event.preventDefault(); back.call(this, event); }, $view); $view.on('tapBackButton', function (event) { event.preventDefault(); back.call(this, event); }); /*$view.on('swipeRight', function (event) { event.preventDefault(); back.call(this, event); });*/ dtd.resolve(); }, beforeopen: function (pageData, dtd) { var $view = this; var pushData = pageData.pushData; orderID = pushData.orderID; backHash = pushData.backHash ? pushData.backHash : ''; isRecharge = pushData.isRecharge; // 在用户的所有订单中找出这个订单 var orders = user.orders[1].data; for (var i = 0, len = orders.length; i < len; i++) { if (orders[i].id == orderID) { var selectOrder = orders[i]; orderType = selectOrder.products[0].product.name; if (selectOrder.coupons && selectOrder.coupons.length){ for (i in selectOrder.coupons){ orderCoupon += parseInt(selectOrder.coupons[i].coupon.value); } } if (selectOrder.pay_price && selectOrder.pay_price != 0){ orderBalance = selectOrder.final_price - selectOrder.pay_price; } if (selectOrder.pay_price && selectOrder.pay_price != 0){ orderPayValue = selectOrder.pay_price; }else { orderPayValue = selectOrder.final_price; } } } var tpl = template('pay/index', { showNavBar: !config.isWX && !config.isChubao, wxPub: true, orderType: orderType, isRecharge: isRecharge, isShow: !isRecharge, orderCoupon: orderCoupon, orderBalance: orderBalance, orderPayValue: orderPayValue }); $('.spa-page-body', $view).html(tpl); dtd.resolve(); // if (config.isAndroid || config.isIOS) { // native.isWxAppInstalled(function(res){ // var showWX = true; // if (res.success && !res.isInstalled) { // showWX = false; // } // if (config.appVersion < '2.2') { // //微信支付2.2版本以下有问题 隐藏按钮 // showWX = false; // } // var tpl = template('pay/index', { // showWX: showWX, // showNavBar: !config.isWX && !config.isChubao, // orderType: orderType, // orderprice: orderprice // }); // $('.spa-page-body', $view).html(tpl); // // dtd.resolve(); // }) // } else if (config.isChubao) { // var tpl = template('pay/index', { // showNavBar: !config.isWX && !config.isChubao, // orderType: orderType, // orderprice: orderprice, // chubao: true // }); // $('.spa-page-body', $view).html(tpl); // dtd.resolve(); // } else { // // } } } })