/** * 钱包充值页面 * @邠心vbe on 2021/05/08 */ import React, { Component } from 'react'; import { View, Text, ScrollView, StyleSheet, Switch } from 'react-native'; import apiWallet from '../../api/apiWallet'; import Button from '../../components/Button'; import Dialog from '../../components/Dialog'; import { PageList } from '../Router'; import { Balance } from './Payment'; import PaythodList from './PaythodList'; export default class Topup extends Component { constructor(props) { super(props); this.state = { isAuto: false, topupList: [], selectIndex: 0, payType: {}, balance: 0, }; } componentDidMount() { this.props.navigation.addListener('focus', () => { getUserInfo(info => { this.setState({ balance: info.credit }) }, true); }); this.getTopupList(); } getTopupList() { Dialog.showProgressDialog(); apiWallet.getTopUpAmountList().then(res => { Dialog.dismissLoading(); if (res.data.length > 0) { this.setState({ topupList: res.data }); } }).catch(err => { Dialog.dismissLoading(); }) } topup2() { const params = { payAmount: this.state.topupList[this.state.selectIndex]?.key, } apiWallet.doPaymentV2(params).then(res => { Dialog.dismissLoading(); if (res.data.webPaymentUrl) { startPage(PageList.paymentWeb, { amount: params.payAmount, url: res.data.webPaymentUrl, type: 'Topup' }); } else { toastShort('Error 0') } }).catch(err => { Dialog.dismissLoading(); toastShort(err); }); } topup() { const params = { payAmount: this.state.topupList[this.state.selectIndex]?.key, fomoPayType: this.state.payType.fomoPayType } console.log('params',params); if (params.payAmount) { if (params.fomoPayType == 'PAYNOW' || params.fomoPayType == 'GRABPAY') { //PAYNOW支付 Dialog.showProgressDialog(); apiWallet.doPayment(params).then(res => { Dialog.dismissLoading(); if (res.data.fomoId && res.data.qrCodeInBase64) { startPage(PageList.paynow, { amount: params.payAmount, base64: res.data.qrCodeInBase64 }); } else if (res.data.url) { startPage(PageList.paymentWeb, { amount: params.payAmount, url: res.data.url, type: 'Topup' }); } else { toastShort('Error 0') } }).catch(err => { Dialog.dismissLoading(); toastShort(err); }); } else { //信用卡支付 startPage(PageList.formCard, { amount: params.payAmount, payType: params.fomoPayType }); } } else { toastShort('Error 1') } } render() { return ( Top Up Choose Top Up Value: { this.state.topupList.map((item, index) => { return ( 0 && styles.right, index == this.state.selectIndex && styles.selected]} onPress={() => { this.setState({ selectIndex: index }) }} >{currency}{item.key} ); }) } Payment Pay with: { this.setState({ payType: type }); }}/> {/* { this.setState({ isAuto: !this.state.isAuto }); }}>Automatically top up S$20 when wallet balance is below S$5 { this.setState({ isAuto: v }); }}/> */}