// 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 }) }); } } })