define(['$', 'template', 'api', 'native', 'config', 'user'], function ($, template, api, native, config, user) { function back(backHash) { $(document).trigger('spa:navigate', { hash: 'myOrder/1', pushData: { dontNeedReload: true, animate: 'slideOutDown' //强制设置动画为落下 } }); } return { title: '壹管家上门服务', body: '', init: function (pageData, dtd) { var $view = this; var $doc = $(document); $.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 orderID = $view.data('orderID'); var appendID = $view.data('appendID'); var payChannel = $(this).attr('data-pay-channel'); if (config.isWX) { payChannel = 'wx_pub'; } if (!payChannel) return; $doc.trigger('spa:openloader'); api.getAppendPayCharge({ user_id: user.id, order_id: orderID, pay_channel: payChannel, append_id: appendID }, function (res) { $doc.trigger('spa:closeloader'); if (res.success) { var orderInfo = user.getOrderInfo(orderID); var params = { orderInfo: orderInfo, charge: res.data } native.pay(params, function (resA) { if (resA.success) { $doc.trigger('spa:navigate', { hash: 'paySuccess' }); } else { $doc.trigger('spa:openpanel', ['simpleAlert', { message: resA.message }]); } }); } else { $doc.trigger('spa:openpanel', ['simpleAlert', { message: res.message }]); } }); }, $view); //返回 $.newTouch('.cancel-button', function (event) { event.preventDefault(); back($view.data('backHash')); }, $view); $view.on('tapBackButton', function(event) { event.preventDefault(); back($view.data('backHash')); }); dtd.resolve(); }, beforeopen: function(pageData, dtd){ var $view = this; var pushData = pageData.pushData; var orderID = pushData.orderID; var appendID = pushData.appendID; $view.data('appendID', appendID); $view.data('orderID', orderID); var appendOrder = user.appendOrder; if (!config.isWX && !config.isChubao) { 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: appendOrder.products_str, orderprice: appendOrder.price }); $('.spa-page-body', $view).html(tpl); dtd.resolve(); }) } else { var tpl = template('pay/index', { showNavBar: !config.isWX && !config.isChubao, wxPub: true, orderType: appendOrder.products_str, orderprice: appendOrder.price }); $('.spa-page-body', $view).html(tpl); dtd.resolve(); } } } })