Liuyi
2024-11-12 0ed8e370659ad4e0582301ae31cfa155da114590
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()
   const choosedMoney = ref(50)
   const disabled = ref(true)
   const userInfo = JSON.parse(uni.getStorageSync('userInfo'))
   //选择金额
   const moneyList = ref([
      {value:50,active:true},
@@ -56,13 +57,32 @@
      if(disabled.value){
         money = choosedMoney.value
      }else{
         money = otherMoney.value
         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>