// pages/copyright/publicPay/publicPay.js import PayApi from '../../../net/api/payApi' import { uploadImgUrl } from "../../../net/http"; const dateTimePicker = require('../../../utils/util'); const Cache = require('../../../utils/storage') const app = getApp() Page({ /** * 页面的初始数据 */ data: { imgAssets: app.globalData.imgAssetsUrl, incomeEnterprise: {}, showError: false, errorHint: '', dateTimeArray: null, dateTime: null, selectTime: '', startYear: 2010, endYear: 2050, files: [], companyName: '', //公司名称 companyBank: '', //开户行 companyBankNum: '', //账户号码 packageId: '', //套餐ID payMoney: 0, //金额 packageName: '', //套餐名称 accountRechargeId: '', //订单ID }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { //判断是选择的套餐包或直接输入的金额 console.log(options.packageId) console.log(options.money) wx.setNavigationBarTitle({ title: '对公转账', }) wx.setNavigationBarColor({ frontColor: '#000000', // 必写项,字体颜色仅支持#ffffff和#000000 backgroundColor: '#F0F0F0', // 传递的颜色值,仅支持十六进制颜色 animation: { // 可选项 duration: 500, timingFunc: 'easeIn' } }) // 获取完整的年月日时分秒,以及默认显示的数组 const obj = dateTimePicker.dateTimePicker(this.data.startYear, this.data.endYear); console.log(obj.dateTime) console.log(typeof options.packageId) this.setData({ packageId: options.packageId && options.packageId != 'undefined' ? options.packageId : '', //套餐包 packageName: options.name, payMoney: options.money, //金额 dateTimeArray: obj.dateTimeArray, dateTime: obj.dateTime, selectFile: this.selectFile.bind(this), uploadFile: this.uploadFile.bind(this), }); this.buildCurrentTime() this.getEnterpriseAccountInfo() //获取订单 console.log(this.data.packageId) this.doGetOrder() }, //公司名称 inputCompanyName(e) { this.setData({ companyName: e.detail.value }) }, //公司名称 inputCompanyBank(e) { this.setData({ companyBank: e.detail.value }) }, //账号 inputCompanyNum(e) { this.setData({ companyBankNum: e.detail.value }) }, changeDateTime(e) { // 处理日期时间选择变化的逻辑 console.log('选择的日期时间发生变化:', e.detail.value); this.setData({ dateTime: e.detail.value }); this.buildCurrentTime() }, //构建选中的时间 buildCurrentTime() { const _self = this const array = _self.data.dateTimeArray const times = _self.data.dateTime const time = `${array[0][times[0]]}-${array[1][times[1]]}-${array[2][times[2]]} ${array[3][times[3]]}:${array[4][times[4]]}:${array[5][times[5]]}` console.log(time) _self.setData({ selectTime: time }) }, changeDateTimeColumn(e) { // 处理日期时间选择器列变化的逻辑 console.log('选择器的列发生变化:', e.detail.column, e.detail.value); }, //获取订单编号 doGetOrder() { wx.showLoading({ title: '加载中...', }) const _self = this console.log(_self.data.packageId) const data = { packageInfoId: _self.data.packageId ? _self.data.packageId : '', rechargeMoney: _self.data.payMoney, thirdParty: "对公转账" } PayApi.doGetOrder(data) .then(res => { wx.hideLoading() if (res.accountRechargeId && res.accountRechargeId != '') { _self.setData({ accountRechargeId: res.accountRechargeId }) } else { _self.setData({ showError: true, errorHint: '获取订单失败,请重试' }) setTimeout(() => { wx.navigateBack() }, 1000); } console.log(res) }, err => { wx.hideLoading() console.log(err) _self.setData({ showError: true, errorHint: '获取订单失败,请重试' }) setTimeout(() => { wx.navigateBack() }, 1000); }) }, //获取收款方信息 getEnterpriseAccountInfo() { const _self = this wx.showLoading({ title: '加载中...', }) PayApi.doGetEnterpriseAccountInfo() .then(res => { wx.hideLoading() console.log(res) _self.setData({ incomeEnterprise: res }) }, err => { wx.hideLoading() _self.setData({ showError: true, errorHint: err.msg ? err.msg : '网络错误,请重试' }) console.log(err) }) }, previewImage(e) { wx.previewImage({ current: e.currentTarget.id, // 当前显示图片的http链接 urls: this.data.files // 需要预览的图片http链接列表 }) }, selectFile(files) { console.log('files', files) // 返回false可以阻止某次文件上传 }, uploadFile(files) { const tempFilePaths = files.tempFilePaths; const token = Cache.get('token') const header = {} if (token) { header.Auth = `Bearer ${token}`; } var that = this for (let i = 0; i < tempFilePaths.length; i++) { wx.uploadFile({ url: uploadImgUrl, header: header, filePath: tempFilePaths[i], name: 'image', success(res) { console.log(res) let result = JSON.parse(res.data) that.data.files.push(result.data) // do something,例如把上传成功后的图片地址保存起来 }, fail(err) { console.log(err); // do something when upload failed } }) } // 文件上传的函数,返回一个promise return new Promise((resolve, reject) => { var result = {}; result['urls'] = tempFilePaths; resolve(result); }) }, deleteImage: function (e) { var index = e.detail.index; this.data.files.splice(index, 1); }, uploadError(e) { console.log('upload error', e.detail) }, uploadSuccess(e) { console.log('upload success', e.detail) }, //完成充值 checkParams() { const _self = this if (_self.data.companyName == '') { _self.setData({ errorHint: '请输入公司名称', showError: true }) return false } if (_self.data.companyBank == '') { _self.setData({ errorHint: '请输入开户银行', showError: true }) return false } if (_self.data.companyBankNum == '') { _self.setData({ errorHint: '请输入银行账号', showError: true }) return false } if (_self.data.files.length <= 0) { _self.setData({ errorHint: '请上传打款凭证', showError: true }) return false } return true }, //提交 completePay() { const _self = this var isLegal = _self.checkParams() if (!isLegal) { return } wx.showLoading({ title: '提交中...', }) const fileIdStr = _self.data.files.map(file => file.fileId).join(','); const data = { orgBank: _self.data.companyBank, orgName: _self.data.companyName, orgNumber: _self.data.companyBankNum, packageInfoId: _self.data.packageId ? _self.data.packageId : '', rechargeFinalTime: _self.data.selectTime, rechargeMoney: _self.data.payMoney, rechargeRemark: "", rechargeVoucher: fileIdStr, thirdParty: "对公转账" } PayApi.doCompleteEnterprisePay(_self.data.accountRechargeId, data) .then(res => { wx.hideLoading() console.log(res) wx.redirectTo({ url: '/pages/copyright/common/payState?type=1', }) }, err => { wx.hideLoading() console.log(err) _self.setData({ errorHint: err.msg ? err.msg : '网络错误,请稍后重试', showError: true }) }) } })