diff --git a/frontend/app-user/pages/home/placeOrder.vue b/frontend/app-user/pages/home/placeOrder.vue index c1d8955..0a8f36e 100644 --- a/frontend/app-user/pages/home/placeOrder.vue +++ b/frontend/app-user/pages/home/placeOrder.vue @@ -133,6 +133,8 @@ export default { ddlx: "配送", sfhy: "是", xqList: [], + zflx: "", + openId: null }, adsObj: { name: "", @@ -255,13 +257,32 @@ export default { // uni.navigateTo({ // url:"/pages/home/orderSuccessful" // }) - const result = await this.$api.memberApi.savewDd({...this.orderBody, zffs: '微信', zflx: 'JSAPI'}); + console.log('支付---------》') + let rData = {}; + // 判断环境 + // #ifdef H5 + this.orderBody.zffs = '微信'; + this.orderBody.zflx = 'JSAPI'; + this.orderBody.openId = uni.getStorageSync('openId'); + console.log('H5环境---------》') + console.log('H5环境rData---------》', this.orderBody) + // #endif + + // #ifdef APP-PLUS + this.orderBody.zffs = '微信'; + this.orderBody.zflx = 'APP'; + console.log('app环境rData---------》', this.orderBody) + uni.$u.toast('APP暂不支持在线下单,请前往微信公众号进行在线下单。'); + return false + // #endif + console.log('orderBody---------》', this.orderBody) + const result = await this.$api.memberApi.savewDd(this.orderBody); let { code, value } = result; if (code === 200) { - console.log('value--->',value); + console.log('value--->', value); //在这里唤起支付 this.handlePayment(value); // 处理支付逻辑 } @@ -279,34 +300,56 @@ export default { signType: paymentData.payment.signType, paySign: paymentData.payment.paySign }; - // 调用微信支付 - this.initWechatPay(paymentParams,paymentData); + + // 判断环境 + // #ifdef H5 + this.handleH5Payment(paymentParams, paymentData); + // #endif + + // #ifdef APP-NVUE + this.handleAppPayment(paymentParams, paymentData); + // #endif + }, + //app端支付 + handleAppPayment(paymentParams, paymentData) { + // 假设APP提供了名为`invokeWechatPay`的方法来处理支付 + uni.invoke('invokeWechatPay', paymentParams, (res) => { + if (res.err_msg === 'success') { + console.log('支付成功', paymentParams); + uni.navigateTo({ + url: "/pages/home/orderSuccessful?datas=" + JSON.stringify({ddid: paymentData.ddid}) + }); + } else { + console.error('支付失败', res.err_msg); + } + }); }, - initWechatPay(paymentParams,paymentData) { + //h5端支付 + handleH5Payment(paymentParams, paymentData) { if (typeof WeixinJSBridge == "undefined") { if (document.addEventListener) { document.addEventListener('WeixinJSBridgeReady', () => { - this.onBridgeReady(paymentParams,paymentData); + this.onBridgeReady(paymentParams, paymentData); }, false); } else if (document.attachEvent) { - document.attachEvent('WeixinJSBridgeReady', this.onBridgeReady(paymentParams,paymentData)); - document.attachEvent('onWeixinJSBridgeReady', this.onBridgeReady(paymentParams,paymentData)); + document.attachEvent('WeixinJSBridgeReady', this.onBridgeReady(paymentParams, paymentData)); + document.attachEvent('onWeixinJSBridgeReady', this.onBridgeReady(paymentParams, paymentData)); } } else { - this.onBridgeReady(paymentParams,paymentData); + this.onBridgeReady(paymentParams, paymentData); } }, - onBridgeReady(paymentParams,paymentData) { + onBridgeReady(paymentParams, paymentData) { WeixinJSBridge.invoke( 'getBrandWCPayRequest', paymentParams, res => { if (res.err_msg == "get_brand_wcpay_request:ok") { // 支付成功 - console.log('支付成功',paymentParams); + console.log('支付成功', paymentParams); // 可以跳转到支付成功的页面 uni.navigateTo({ - url: "/pages/home/orderSuccessful?datas=" + JSON.stringify({ddid:paymentData.ddid}) + url: "/pages/home/orderSuccessful?datas=" + JSON.stringify({ddid: paymentData.ddid}) }); } else { // 支付失败 -- libgit2 0.21.2