import * as WebBrowser from "expo-web-browser"; import * as React from "react"; import { StyleSheet } from "react-native"; import { useModel } from "flooks"; import { useFocusEffect, useRoute } from "@react-navigation/native"; import { Layout, Button, useTheme, Divider, Input, Text, } from "@ui-kitten/components"; import NavHeaderBar from "../../components/NavHeaderBar"; import BankCard from "../../components/BankCard"; const styles = StyleSheet.create({ list: { flex: 1, backgroundColor: "#EEEEEE", paddingVertical: 7, }, separatorStyle: { height: 6, backgroundColor: "#EEEEEE", }, subBtn: { paddingHorizontal: 15, paddingVertical: 20, width: "100%", position: "absolute", bottom: 90, left: 0, backgroundColor: "transparent", }, input: { marginTop: 7, paddingTop: 10, paddingHorizontal: 13, paddingBottom: 28, }, left: { fontWeight: "normal", marginRight: 18, }, }); export default function RechargeScreen({ navigation }) { const theme = useTheme(); const { changeBackground } = useModel("barModel"); const { rechargeBtnText, ORHSFG, WITHDRAW, applySuccess, BJGTHA, BIZQHZ, } = useModel("wordsModel"); const { getUserInfo, money } = useModel("appUserModel"); const { httpPost, httpGet } = useModel("httpModel", true); const { success } = useModel("loadingModel"); const [bankCardId, setBankCardId] = React.useState(); const [bankCradInfo, setBankCradInfo] = React.useState({}); const [value, setVal] = React.useState(""); const route = useRoute(); useFocusEffect( React.useCallback(() => { changeBackground(theme["color-primary-500"]); const { params } = route; const { selectId } = params || {}; if (selectId) { setBankCardId(selectId); } getUserInfo(); }, []) ); React.useEffect(() => { if (bankCardId) { httpGet(`/bankCard/get/${bankCardId}`).then(res => { setBankCradInfo(res); }); } else { setBankCradInfo({}); } }, [bankCardId]); const canSubmit = React.useMemo(() => { const value1 = Number(value); if (bankCardId && value1 && value1 <= (money || 0)) { return true; } return false; }, [value, bankCardId]); const showMoeny = React.useMemo(() => { if (money) { return money.toFixed(2); } return "0.00"; }, [money]); function submit() { const value1 = Number(value); httpPost( "/withdrawApply/apply", { amount: value1, bankCardId, }, {}, true ).then(res => { success(applySuccess); navigation.replace("RechargeDetail", { id: res.id, }); }); } return ( <> { navigation.navigate("ChooseBank"); }} info={bankCradInfo} /> ( ¥ )} caption={`${BIZQHZ}${showMoeny}${BJGTHA}`} keyboardType="numeric" onChangeText={text => { setVal(text); }} onBlur={() => { const value1 = Number(value); if (value1 > (money || 0)) { setVal(showMoeny); } else { setVal(value1.toFixed(2)); } }} /> ); }