// pages/cart/paymentPage/index.js const app = getApp() import { getPublicImage } from '../../../assets/js/middleGround/tool'; import drawQrcode from './js/weapp.qrcode' Page({ /** * 页面的初始数据 */ data: { orderNumber: null, navBarHeight: '', barHeight: '', selectedIds: '', purchasedIds: [], productList: [], payPrice: '', orderGoods: '', isPaySuccess: false, isPayComplete: false, }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { const systInfo = wx.getSystemInfoSync(); const menu = wx.getMenuButtonBoundingClientRect(); // 胶囊信息 const navBarHeight = (menu.top - systInfo.statusBarHeight) * 2 + menu.height; // 导航栏高度 this.setData({ orderNumber: options.orderNumber, navBarHeight: navBarHeight, barHeight: systInfo.statusBarHeight, selectedIds: options.selectedIds }) console.log('接收到的订单号:', this.data.orderNumber); this.getOrderByOrderNum() }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady() { }, /** * 生命周期函数--监听页面显示 */ onShow() { }, /** * 生命周期函数--监听页面隐藏 */ onHide() { }, /** * 生命周期函数--监听页面卸载 */ onUnload() { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom() { }, /** * 用户点击右上角分享 */ onShareAppMessage() { }, goBack() { wx.navigateBack(); }, getOrderByOrderNum() { let query = { orderNum: this.data.orderNumber, fields: { content: [], subtitle: [], } } app.MG.store.getOrderByOrderNum(query).then(res => { console.log(res, 'res'); this.setData({ orderGoods: res.orderNumber }) console.log(this.data.orderGoods, 'res.orderNumber'); console.log(res.payPrice); this.setData({ payPrice: res.payPrice.toFixed(2) }) res.saleMethodLinks.forEach(item => { item.paymentIcon = getPublicImage(item.orderSaleMethod.product.icon) console.log(item.orderSaleMethod.type); this.setData({ productList: res.saleMethodLinks, type: item.orderSaleMethod.type == 'createProductItemSaleMethod' ? 'item' : 'product' }) }) }) }, confirmOrderGet() { var that = this; let query = { orderNum: this.data.orderGoods } app.MG.store.confirmOrder(query).then(res => { console.log(res.orderNumber, 'res'); if (res.orderNumber) { const resOrderNum = { orderNum: res.orderNumber, }; // 用户未绑定微信 报500 app.MG.store.makeWeChatPay(resOrderNum).then(payRes => { const payVal = JSON.parse(payRes); wx.requestPayment({ "appId": payVal.appId, "timeStamp": payVal.timeStamp, "nonceStr": payVal.nonceStr, "package": payVal.package, "signType": payVal.signType, "paySign": payVal.paySign, success: function (res) { console.log('支付成功'); if (res.errMsg == 'requestPayment:ok') { that.setData({ isPaySuccess: true }) } }, fail: function (res) { console.log('支付失败'); }, // 无论支付成功失败都会调用 "complete": function (res) { if (res.errMsg == 'requestPayment:ok') { that.setData({ isPayComplete: true }) } if (that.data.isPaySuccess && that.data.isPayComplete) { that.navToBack() } } }); }) } }) // 调取微信二维码支付 }, // 页面返回 navToBack() { // 返回 wx.navigateBack() }, })