From ad876a6fea2df6e2a831d4c9d95cf724855610f4 Mon Sep 17 00:00:00 2001
From: Liuyi <candymxq888@outlook.com>
Date: 星期六, 14 十二月 2024 16:43:35 +0800
Subject: [PATCH] 修复用户微信扫码进入小程序无法跳转及登录问题,修改会员卡解绑接口

---
 pages/recharge/index.vue |   71 ++++++++++++++++++++++++++---------
 1 files changed, 52 insertions(+), 19 deletions(-)

diff --git a/pages/recharge/index.vue b/pages/recharge/index.vue
index 5d64e33..d713d1e 100644
--- a/pages/recharge/index.vue
+++ b/pages/recharge/index.vue
@@ -1,9 +1,10 @@
 <script setup>
 	import{ ref ,onMounted} from 'vue'
-	import { wxPayApi } from '../../api/index.js'
+	import { wxPayApi,rechargeApi } from '../../api/index.js'
 	
 	const choosedMoney = ref(50)
 	const disabled = ref(true)
+	const userInfo = JSON.parse(uni.getStorageSync('userInfo'))
 	//选择金额
 	const moneyList = ref([
 		{value:50,active:true},
@@ -58,11 +59,30 @@
 		}else{
 			money = Number(otherMoney.value)
 		}
-		await wxPayApi({businessType:1,tradeAmount:money}).then((res) =>{
-			console.log('reswxpay',res)
-			
-			  //调用微信官方支付接口弹出付款界面,输入密码扣款
-			  wx.requestPayment({
+		let data = {
+		        cardNumber:userInfo.waterCardNumber,
+		        paymentMethod:1,
+		        rechargeAmount:money
+		    }
+		//生成订单
+		await rechargeApi(data).then(async(res) =>{
+			if(res.code == 200){
+				let data = {
+					businessType:1,
+					businessNo:res.data
+					}
+				//发起支付
+				await wxPay(data)
+			}
+		})
+	}
+	//微信支付
+	async function wxPay(data){
+		
+		await wxPayApi(data).then((res) =>{
+			if(res.code == 200){
+				//调用微信官方支付接口弹出付款界面,输入密码扣款
+				wx.requestPayment({
 				  //预支付订单信息
 				  // appId: res.data.appId,
 				  timeStamp: res.data.timeStamp,     //时间戳 
@@ -70,20 +90,33 @@
 				  package: res.data.package,		//prepay_id
 				  signType: res.data.signType,		//签名算法MD5		
 				  paySign: res.data.paySign ,//微信签名 
-			     success (res) {
-			       if (res.errMsg == "requestPayment:ok"){
-			          console.log('支付成功', res)
-			       }else{
-			          console.log('支付失败')
-			       }
-			     },
-			     fail (res) { 
-			       console.log('支付失败', res)
-			     }
-			  })
+				 success (res) {
+				   if (res.errMsg == "requestPayment:ok"){
+					  console.log('支付成功', res)
+					  uni.showToast({
+						title: '支付成功',
+						duration: 2000,
+					  });
+					  uni.navigateBack()
+				   }else{
+					  uni.showToast({
+						title: '支付失败',
+						duration: 2000,
+						icon:'none'
+					  });
+				   }
+				   
+				 },
+				 fail (res) { 
+				   uni.showToast({
+						title: '微信支付失败',
+						duration: 2000,
+						icon:'none'
+				   });
+				 }
+				})
+			}
 		})
-
-		
 	}
 </script>
 <template>

--
Gitblit v1.9.3