From d470e67ac1997882502b75cbfdaf359626cfaaa8 Mon Sep 17 00:00:00 2001 From: Liuyi <candymxq888@outlook.com> Date: 星期五, 20 十二月 2024 17:27:07 +0800 Subject: [PATCH] 测试修复小程序问题,添加水控机设备 --- pages/recharge/index.vue | 58 +++++++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 47 insertions(+), 11 deletions(-) diff --git a/pages/recharge/index.vue b/pages/recharge/index.vue index 086f8e5..a73b815 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{ ref ,onMounted,onUnmounted} from 'vue' + 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}, @@ -51,16 +52,49 @@ // payList.value[index1].checked = true // payMethod.value = payList.value[index1].value // } - const e = ref('123125') + let timerId + let payStatus = ref(true) async function submit(){ - let money = '' - if(disabled.value){ - money = choosedMoney.value + if(payStatus.value){ + payStatus.value = false + timerId = setTimeout(()=>{ + payStatus.value = true + },20000) + let money = '' + if(disabled.value){ + money = choosedMoney.value + }else{ + money = Number(otherMoney.value) + } + 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) + otherMoney.value = '' + } + }) + }else{ - money = Number(otherMoney.value) + uni.showToast({ + title:'充值间隔20秒,请稍后!', + icon:'none' + }) } - await wxPayApi({businessType:1,tradeAmount:money}).then((res) =>{ - e.value = res + } + //微信支付 + async function wxPay(data){ + + await wxPayApi(data).then((res) =>{ if(res.code == 200){ //调用微信官方支付接口弹出付款界面,输入密码扣款 wx.requestPayment({ @@ -99,6 +133,9 @@ } }) } + onUnmounted(() =>{ + clearTimeout(timerId) + }) </script> <template> <view class="container"> @@ -143,8 +180,7 @@ </view> </view> </view> - <text>{{e}}</text> - <view class="submit-btn" @click="submit()">立即充值</view> + <view :style="{opacity:payStatus ? 1 : 0.7}" class="submit-btn" @click="submit()">立即充值</view> </view> </view> </template> -- Gitblit v1.9.3