var _request = require('../../../../utils/request.js') var rid function formatTransferStateText (state) { if (state === 'WAIT_USER_CONFIRM') { return '待确认,确认后到帐' } return state || '' } function normalizeTransferDetail (data) { data = data || {} data.count = Number(data.count) || 0 data.ctime = data.ctime || data.created_at || 0 data.source_name = data.source_name || '提现' data.relate_id = data.relate_id || data.order_id || data.id || '' data.remark = data.remark || data.state_cn || '' data.transfer_state_text = formatTransferStateText(data.transfer_state || data.state_cn) return data } Page({ data: { detail: {}, confirmingTransfer: false, confirmedTransfer: false }, onLoad: function (options) { rid = options.id || options.cash_id || options.balance_id || options.rid || options.order_id if (rid) { this.getRadish() return } this.getLatestWithdrawRecord() }, getRadish () { var that = this var url = 'v1/user/cash/balance/' + rid var params = { } var success = function (res) { var data = normalizeTransferDetail(res.data) if (that.data.confirmedTransfer) { data.can_confirm_transfer = false } that.setData({ detail: data }) } _request.$get(url, params, success) }, getLatestWithdrawRecord () { var that = this var url = 'v1/user/takecash/flow' var params = { page: 1, per_page: 1 } var success = function (res) { var list = (res.data && res.data.list) || [] if (list.length > 0) { that.setData({ detail: normalizeTransferDetail(list[0]) }) return } wx.showToast({ title: '暂无提现记录', icon: 'none', duration: 2000 }) wx.redirectTo({ url: '/packageUser/pages/user/withdraw/withdraw' }) } var fail = function () { wx.redirectTo({ url: '/packageUser/pages/user/withdraw/withdraw' }) } _request.$get(url, params, success, fail) }, confirmMerchantTransfer () { var that = this var detail = that.data.detail || {} if (that.data.confirmingTransfer) { return } if (!detail.can_confirm_transfer || !detail.package_info) { wx.showToast({ title: '当前提现无需确认收款', icon: 'none', duration: 2000 }) return } if (!wx.canIUse || !wx.canIUse('requestMerchantTransfer')) { wx.showToast({ title: '当前微信版本不支持确认收款,请升级微信', icon: 'none', duration: 2000 }) return } detail.can_confirm_transfer = false that.setData({ detail: detail, confirmingTransfer: true }) wx.requestMerchantTransfer({ mchId: String(detail.mch_id || ''), appId: String(detail.app_id || ''), package: detail.package_info, success: function () { wx.showToast({ title: '确认收款已提交', icon: 'none', duration: 2000 }) that.setData({ confirmedTransfer: true }) that.getRadish() }, fail: function (res) { detail.can_confirm_transfer = true that.setData({ detail: detail, confirmingTransfer: false }) wx.showToast({ title: (res && res.errMsg) ? res.errMsg : '确认收款失败', icon: 'none', duration: 3000 }) } }) }, onShareAppMessage: function (val) { return _request.share({ sc: 'xcx_user_radishdetail' }) } })