// pages/mall/payment/payment.js import { getUserInfo, rechargeRoutine, getRechargeApi } from '../../api/user.js' var app = getApp() Page({ /** * 页面的初始数据 */ data: { picList: [], parameter: { navbar: '1', return: '1', title: '余额充值', color: false }, navRecharge: ['账户充值', '佣金转入'], active: 0, number: '', focus: true, userinfo: {}, placeholder: '0.00', placeholderOther: '其他', activePic: 0, numberPic: '', rechar_id: 0, recharge_attention: [] }, /** * 登录授权回调 */ onLoadFun: function () { this.getUserInfo() this.getRecharge() }, setPlaceholderStatus: function (event) { if (event.detail.value.length == 0) this.setData({ placeholder: '0.00' }) }, setPlaceholder: function () { this.setData({ placeholder: '' }) }, setOtherPlaceholder: function () { this.setData({ placeholderOther: '' }) }, setOtherPlaceholderStatus: function (event) { if (event.detail.value.length == 0) this.setData({ placeholderOther: '其他' }) }, navRecharge: function (e) { this.setData({ active: e.currentTarget.dataset.id, activePic: 0 }) if (this.data.picList.length) { this.setData({ rechar_id: this.data.picList[0].id, numberPic: this.data.picList[0].price }) } }, /** * 选择金额 */ picCharge: function (e) { if (e.currentTarget.dataset.id == 0) { this.setData({ activePic: e.currentTarget.dataset.index, rechar_id: 0, numberPic: '' }) } else { this.setData({ number: '', activePic: e.currentTarget.dataset.index, rechar_id: e.currentTarget.dataset.id, numberPic: e.currentTarget.dataset.quota, placeholderOther: '其他' }) } }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) {}, /** * 充值额度选择 */ getRecharge: function () { var that = this getRechargeApi().then(res => { that.setData({ picList: res.data.recharge_quota, rechar_id: res.data.recharge_quota[0].id, numberPic: res.data.recharge_quota[0].price, recharge_attention: res.data.recharge_attention || [] }) }) }, /** * 获取用户信息 */ getUserInfo: function () { var that = this getUserInfo().then(res => { that.setData({ userinfo: res.data }) // app.globalData.unread = res.data.notice app.setUnread(res.data.notice) }) }, /* * 用户充值 */ submitSub: function (e) { let that = this, value = e.detail.value.number, commissionCount = that.data.userinfo.commissionCount if (that.data.active) { if (parseFloat(value) < 0 || !value) return app.Tips({ title: '请输入金额' }) if (Number(value) > Number(commissionCount)) return app.Tips({ title: '转入金额不能大于' + commissionCount }) wx.showModal({ title: '转入余额', content: '转入余额后无法再次转出,确认是否转入余额', success(res) { if (res.confirm) { rechargeRoutine({ price: value, type: 1 }) .then(res => { that.setData({ 'userinfo.now_money': app.help().Add(value, that.data.userinfo.now_money) }) return app.Tips( { title: '转入成功', icon: 'success' }, { tab: 5, url: '/pages/user_money/index' } ) }) .catch(err => { return app.Tips({ title: err }) }) } else if (res.cancel) { return app.Tips({ title: '已取消' }) } } }) } else { if (this.data.picList.length == this.data.activePic && !value) return app.Tips({ title: '请输入金额' }) wx.showLoading({ title: '正在支付' }) rechargeRoutine({ price: that.data.rechar_id == 0 ? value : that.data.numberPic, type: 0, rechar_id: that.data.rechar_id }) .then(res => { wx.hideLoading() let jsConfig = res.data wx.requestPayment({ timeStamp: jsConfig.timestamp, nonceStr: jsConfig.nonceStr, package: jsConfig.package, signType: jsConfig.signType, paySign: jsConfig.paySign, success: function (res) { that.setData({ 'userinfo.now_money': app.help().Add(value, that.data.userinfo.now_money) }) return app.Tips( { title: '支付成功', icon: 'success' }, { tab: 5, url: '/pages/user_money/index' } ) }, fail: function () { return app.Tips({ title: '支付失败' }) }, complete: function (res) { if (res.errMsg == 'requestPayment:cancel') return app.Tips({ title: '取消支付' }) } }) }) .catch(err => { wx.hideLoading() return app.Tips({ title: err }) }) } } })