| | |
| | | <script setup> |
| | | import{ ref ,onMounted} from 'vue' |
| | | import { wxPayApi,buyWaterApi } from '../../api/index.js' |
| | | import { wxPayApi,buyWaterApi,getPriceBySnApi } from '../../api/index.js' |
| | | import { onLoad } from "@dcloudio/uni-app" |
| | | |
| | | const choosedMoney = ref(1) |
| | |
| | | }) |
| | | moneyList.value[index1].active = true |
| | | choosedMoney.value = moneyList.value[index1].value |
| | | // if(index1 == 5){ |
| | | // disabled.value = false |
| | | // choosedMoney.value = '' |
| | | // }else{ |
| | | // choosedMoney.value = moneyList.value[index1].value |
| | | // otherMoney.value = '' |
| | | // disabled.value = true |
| | | // } |
| | | } |
| | | //输入金额 |
| | | // const otherMoney = ref() |
| | | //支付方式 |
| | | const userBalance = ref(JSON.parse(uni.getStorageSync('userInfo')).balance) |
| | | const payMethod = ref(2) |
| | |
| | | console.log('index',index1,payMethod.value) |
| | | } |
| | | async function submit(){ |
| | | // let money = '' |
| | | // if(disabled.value){ |
| | | // money = choosedMoney.value |
| | | // }else{ |
| | | // money = Number(otherMoney.value) |
| | | // } |
| | | if(payMethod.value == 1){ |
| | | let data = { |
| | | payType:payMethod.value, |
| | | card:JSON.parse(uni.getStorageSync('userInfo')).waterCardNumber, |
| | | amount:choosedMoney.value, |
| | | // sn:1060003979 |
| | | sn:facilityCode.value |
| | | } |
| | | //余额支付回 |
| | | await buyWaterApi(data).then((res) =>{ |
| | | console.log('余额',res,data) |
| | | console.log('余额支付回调',res,'传参',data) |
| | | if(res.code == 200){ |
| | | uni.navigateTo({ |
| | | url:'/pages/scanSuccess/index' |
| | |
| | | let data = { |
| | | businessType:3, |
| | | tradeAmount:choosedMoney.value, |
| | | // facilityCode:'1066012684', |
| | | facilityCode:facilityCode.value, |
| | | } |
| | | |
| | | console.log('data',data) |
| | | await wxPayApi(data).then((res) =>{ |
| | | console.log('微信',res,'data',data) |
| | | console.log('微信支付回调',res,'传参',data) |
| | | if(res.code == 200){ |
| | | //调用微信官方支付接口弹出付款界面,输入密码扣款 |
| | | wx.requestPayment({ |
| | |
| | | icon:'none' |
| | | }); |
| | | } |
| | | |
| | | }, |
| | | fail (res) { |
| | | uni.showToast({ |
| | |
| | | onLoad((option) =>{ |
| | | facilityCode.value = option.facilityCode |
| | | }) |
| | | //设置水价及支付方式 |
| | | async function getWaterPrice(){ |
| | | await getPriceBySnApi(facilityCode.value).then((res) =>{ |
| | | moneyList.value.forEach((item,index) =>{ |
| | | item.value = ((index + 1) * res.data.price).toFixed(1) |
| | | item.volume = ((index + 1) * res.data.yield).toFixed(1) |
| | | }) |
| | | choosedMoney.value = res.data.price |
| | | console.log('水价设置回调',res,'传参',facilityCode.value) |
| | | }) |
| | | let waterCardNumber = JSON.parse(uni.getStorageSync('userInfo')).waterCardNumber |
| | | if(!waterCardNumber){ |
| | | payList.value.splice(1,1) |
| | | } |
| | | } |
| | | onMounted(async() =>{ |
| | | await getWaterPrice() |
| | | }) |
| | | |
| | | </script> |
| | | <template> |
| | | <view class="container"> |
| | |
| | | </block> |
| | | </view> |
| | | </view> |
| | | <!-- <view class="other-money"> |
| | | <view class="money-title"> |
| | | <view class="title-icon"></view> |
| | | <view class="title-text">其他金额</view> |
| | | </view> |
| | | <view class="money-input"> |
| | | <input :disabled = 'disabled' :focus = '!disabled' placeholder="请输入其他金额" v-model="otherMoney"/> |
| | | </view> |
| | | </view> --> |
| | | <view class="pay-methods"> |
| | | <view class="money-title"> |
| | | <view class="title-icon"></view> |
| | |
| | | } |
| | | } |
| | | } |
| | | // .other-money{ |
| | | // width: 100%; |
| | | // height:164rpx; |
| | | // margin-top:58rpx; |
| | | // .money-input{ |
| | | // margin:40rpx auto 0; |
| | | // width:calc(100% - 40rpx); |
| | | // height: 80rpx; |
| | | // box-sizing: border-box; |
| | | // border-radius:8rpx; |
| | | // border: 2rpx solid #75C8EB; |
| | | // input{ |
| | | // width:94%; |
| | | // height: 80rpx; |
| | | // margin-left:6%; |
| | | // } |
| | | // } |
| | | // } |
| | | .pay-methods{ |
| | | width: 100%; |
| | | margin-top:58rpx; |