| | |
| | | // pages/cart/paymentPage/index.js |
| | | import Toast from 'tdesign-miniprogram/toast/index'; |
| | | const app = getApp() |
| | | import { |
| | | getPublicImage |
| | |
| | | * 页面的初始数据 |
| | | */ |
| | | data: { |
| | | loading: true, |
| | | hidden: true, |
| | | myOrderOrderNumber: [], |
| | | orderNumber: null, |
| | | navBarHeight: '', |
| | | barHeight: '', |
| | |
| | | orderGoods: '', |
| | | isPaySuccess: false, |
| | | isPayComplete: false, |
| | | type: '', |
| | | onNorderSaleMethod: '' |
| | | }, |
| | | |
| | | /** |
| | |
| | | orderNumber: options.orderNumber, |
| | | navBarHeight: navBarHeight, |
| | | barHeight: systInfo.statusBarHeight, |
| | | selectedIds: options.selectedIds |
| | | selectedIds: options.selectedIds, |
| | | onNorderSaleMethod: options.onNorderSaleMethod |
| | | }) |
| | | console.log('接收到的订单号:', this.data.orderNumber); |
| | | console.log(this.data.onNorderSaleMethod, 'options'); |
| | | this.getOrderByOrderNumData() |
| | | this.getDataList() |
| | | }, |
| | | |
| | | /** |
| | |
| | | |
| | | |
| | | getOrderByOrderNumData() { |
| | | console.log(this.data.orderNumber, 'this.data.orderNumber'); |
| | | let query = { |
| | | orderNum: this.data.orderNumber, |
| | | fields: { |
| | |
| | | payPrice: res.payPrice.toFixed(2) |
| | | }) |
| | | res.saleMethodLinks.forEach(item => { |
| | | console.log(item.type, 'item.type'); |
| | | |
| | | const type = item.orderSaleMethod.type == 'createProductItemSaleMethod' ? 'item' : 'product'; |
| | | item.type = type; // 将type设置为item对象的属性,而不是使用setData |
| | | item.paymentIcon = getPublicImage(item.orderSaleMethod.product.icon) |
| | | console.log(item.orderSaleMethod.type); |
| | | console.log(item.type, 'item'); |
| | | }) |
| | | this.setData({ |
| | | productList: res.saleMethodLinks, |
| | | // type: item.orderSaleMethod.type == 'createProductItemSaleMethod' ? 'item' : 'product' |
| | | loading: false, |
| | | hidden: false, |
| | | }) |
| | | |
| | | this.setData({ |
| | | productList: res.saleMethodLinks, |
| | | type: item.orderSaleMethod.type == 'createProductItemSaleMethod' ? 'item' : 'product' |
| | | }) |
| | | |
| | | }) |
| | | }, |
| | | getDataList() { |
| | | let data = { |
| | | start: 0, |
| | | size: 999, |
| | | filterList: [{ |
| | | field: 'State', |
| | | value: 'WaitPay' |
| | | }], |
| | | sort: { |
| | | type: 'Desc', |
| | | field: 'CreateDate' |
| | | } |
| | | } |
| | | app.MG.store.getUserOrderList(data).then((res) => { |
| | | res.datas.forEach((item) => { |
| | | this.data.myOrderOrderNumber.push(item.saleMethodLinks[0].orderSaleMethod.id) |
| | | console.log(this.data.myOrderOrderNumber); |
| | | }) |
| | | }) |
| | | }, |
| | | 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) { |
| | | let resOrderNum = { |
| | | orderNum: res.orderNumber, |
| | | platform: "WeChatAppCustom" |
| | | }; |
| | | console.log(resOrderNum, 'resOrderNum'); |
| | | // 用户未绑定微信 报500 |
| | | app.MG.store.makeWeChatPay(resOrderNum).then(payRes => { |
| | | console.log(payRes, '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() |
| | | } |
| | | } |
| | | }); |
| | | }) |
| | | if (this.data.myOrderOrderNumber.includes(parseInt(this.data.onNorderSaleMethod))) { |
| | | Toast({ |
| | | context: this, |
| | | selector: '#t-toast', |
| | | message: '已经在订单中', |
| | | theme: 'warning', |
| | | direction: 'column', |
| | | }); |
| | | } else { |
| | | var that = this; |
| | | let query = { |
| | | orderNum: this.data.orderGoods |
| | | } |
| | | app.MG.store.confirmOrder(query).then(res => { |
| | | console.log(res.orderNumber, 'res'); |
| | | if (res.orderNumber) { |
| | | let resOrderNum = { |
| | | orderNum: res.orderNumber, |
| | | platform: "WeChatAppCustom" |
| | | }; |
| | | console.log(resOrderNum, 'resOrderNum'); |
| | | // 用户未绑定微信 报500 |
| | | app.MG.store.makeWeChatPay(resOrderNum).then(payRes => { |
| | | console.log(payRes, '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() { |