/** * 支付组件 * @邠心vbe on 2021/04/23 */ import React, { useEffect, useState } from 'react'; import { View, Text, StyleSheet, Image, Pressable } from 'react-native'; import Button, { ElevationObject } from '../../components/Button'; import utils from '../../utils/utils'; import { LowCreditDialog } from '../charge/InfoDialog'; import { PageList } from '../Router'; /** * @is2c2p 控制是否启用2C2P * @DEFAULT 控制默认的支付方式 */ export const PaymentDefault = { is2c2p: false, DEFAULT: { payType: "CreditWallet", payName: "Credit Wallet", isWallet: true, isPayPerUse: false }, DEFAULT2: { payType: "PayPerUse", payName: "Pay Per Use (SGQR)", isWallet: false, isPayPerUse: true } } export const PAYTYPE = { CREDIT_WALLET: "CreditWallet", // 钱包余额支付 PAY_PER_USE: "PayPerUse" // 按次支付 } const Payment = ({ topup, balance, payType = PaymentDefault.DEFAULT.payName, isWallet = PaymentDefault.DEFAULT.isWallet, isPayPerUse = PaymentDefault.DEFAULT.isPayPerUse, canShowLowCreditDialog = false, onMethodChange, refreshId = 0 }) => { const [visible, showDialog] = useState(false) useEffect(() => { if (balance == undefined && canShowLowCreditDialog) { if (userInfo.credit <= 5 && refreshId > 0) { showDialog(true) } } }, [refreshId]); return ( { isWallet || isPayPerUse ? {payType} : Visa/Mastercard Credit/Debit Card } {isWallet ? currency + (balance ?? userInfo.credit) : ''} { topup ?