Start credit Api for Dollar acc
This commit is contained in:
@@ -58,7 +58,7 @@ const initialValues = {
|
|||||||
function AddFundDollars(props) {
|
function AddFundDollars(props) {
|
||||||
const navigate = useNavigate();
|
const navigate = useNavigate();
|
||||||
const apiCall = new usersService();
|
const apiCall = new usersService();
|
||||||
|
let countryWallet = props.walletItem.country;
|
||||||
const [tab, setTab] = useState("previous");
|
const [tab, setTab] = useState("previous");
|
||||||
const [loader, setLoader] = useState(false);
|
const [loader, setLoader] = useState(false);
|
||||||
const { userDetails } = useSelector((state) => state?.userDetails);
|
const { userDetails } = useSelector((state) => state?.userDetails);
|
||||||
@@ -82,7 +82,7 @@ function AddFundDollars(props) {
|
|||||||
indexOfLastItem
|
indexOfLastItem
|
||||||
);
|
);
|
||||||
|
|
||||||
const handleSubmit = (values, helpers) => {
|
const handleSubmit = async (values, helpers) => {
|
||||||
props.setInputError("");
|
props.setInputError("");
|
||||||
if (!props.input || props.input === "0") {
|
if (!props.input || props.input === "0") {
|
||||||
props.setInputError("Please Enter Amount");
|
props.setInputError("Please Enter Amount");
|
||||||
@@ -99,13 +99,37 @@ function AddFundDollars(props) {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
setLoader(true);
|
setLoader(true);
|
||||||
const stateData = {
|
let stateData = {
|
||||||
amount: Number(props.input),
|
amount: Number(props.input) * 100,
|
||||||
currency: props.currency,
|
currency: props.walletItem?.code,
|
||||||
card: prevCardDetails["payment-card"],
|
|
||||||
cardType: "prev",
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
try {
|
||||||
|
const res = await apiCall.getStartCredit(stateData);
|
||||||
|
if (res.data.internal_return < 0) {
|
||||||
|
setLoader(false);
|
||||||
|
props.setInputError("An Error Occurred");
|
||||||
|
setTimeout(() => props.setInputError(""), 5000);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
const _response = res.data;
|
||||||
|
stateData.amount = Number(props.input);
|
||||||
|
stateData.card = prevCardDetails["payment-card"];
|
||||||
|
stateData.cardType = "prev";
|
||||||
|
stateData = { ...stateData, ..._response };
|
||||||
|
|
||||||
|
setTimeout(() => {
|
||||||
|
setLoader(false);
|
||||||
|
props.setConfirmCredit({
|
||||||
|
show: true,
|
||||||
|
data: stateData,
|
||||||
|
});
|
||||||
|
}, 1500);
|
||||||
|
} catch (error) {
|
||||||
|
console.log(error);
|
||||||
|
}
|
||||||
|
|
||||||
return setTimeout(() => {
|
return setTimeout(() => {
|
||||||
props.setConfirmCredit({ show: true, data: stateData });
|
props.setConfirmCredit({ show: true, data: stateData });
|
||||||
setLoader(false);
|
setLoader(false);
|
||||||
@@ -142,7 +166,7 @@ function AddFundDollars(props) {
|
|||||||
<div className="flex">
|
<div className="flex">
|
||||||
<form className="add-fund-info flex items-center gap-3">
|
<form className="add-fund-info flex items-center gap-3">
|
||||||
<h1 className="text-xl font-bold text-dark-gray dark:text-white tracking-tighter my-1">
|
<h1 className="text-xl font-bold text-dark-gray dark:text-white tracking-tighter my-1">
|
||||||
{props.currency == "US Dollars" && "Payment Method"}
|
{countryWallet == "US" && "Payment Method"}
|
||||||
</h1>
|
</h1>
|
||||||
<div className="my-1 flex items-center gap-2">
|
<div className="my-1 flex items-center gap-2">
|
||||||
<label
|
<label
|
||||||
|
|||||||
@@ -6,10 +6,17 @@ import InputCom from "../Helpers/Inputs/InputCom";
|
|||||||
import LoadingSpinner from "../Spinners/LoadingSpinner";
|
import LoadingSpinner from "../Spinners/LoadingSpinner";
|
||||||
import AddFundDollars from "./AddFundDollars";
|
import AddFundDollars from "./AddFundDollars";
|
||||||
|
|
||||||
function AddFundPop({ _payment, input, setInput, onClose, setConfirmCredit }) {
|
function AddFundPop({
|
||||||
|
_payment,
|
||||||
|
input,
|
||||||
|
setInput,
|
||||||
|
onClose,
|
||||||
|
setConfirmCredit,
|
||||||
|
walletItem,
|
||||||
|
}) {
|
||||||
const navigate = useNavigate();
|
const navigate = useNavigate();
|
||||||
const apiCall = new usersService();
|
const apiCall = new usersService();
|
||||||
|
let countryWallet = walletItem?.country;
|
||||||
const { payment, currency } = _payment;
|
const { payment, currency } = _payment;
|
||||||
|
|
||||||
const [inputError, setInputError] = useState("");
|
const [inputError, setInputError] = useState("");
|
||||||
@@ -38,8 +45,8 @@ function AddFundPop({ _payment, input, setInput, onClose, setConfirmCredit }) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
let stateData = {
|
let stateData = {
|
||||||
amount: Number(input),
|
amount: Number(input) * 100,
|
||||||
currency: currency.toUpperCase(),
|
currency: walletItem?.code,
|
||||||
};
|
};
|
||||||
|
|
||||||
try {
|
try {
|
||||||
@@ -92,10 +99,11 @@ function AddFundPop({ _payment, input, setInput, onClose, setConfirmCredit }) {
|
|||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
{currency === "US Dollars" && (
|
{countryWallet === "US" && (
|
||||||
<div className="w-full md:px-8 md:pt-4 px-4 pt-2 bg-white dark:bg-dark-white rounded-2xl">
|
<div className="w-full md:px-8 md:pt-4 px-4 pt-2 bg-white dark:bg-dark-white rounded-2xl">
|
||||||
<AddFundDollars
|
<AddFundDollars
|
||||||
setInputError={setInputError}
|
setInputError={setInputError}
|
||||||
|
walletItem={walletItem}
|
||||||
input={input}
|
input={input}
|
||||||
setInput={setInput}
|
setInput={setInput}
|
||||||
currency={currency}
|
currency={currency}
|
||||||
@@ -105,9 +113,9 @@ function AddFundPop({ _payment, input, setInput, onClose, setConfirmCredit }) {
|
|||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
|
|
||||||
{currency !== "US Dollars" && <div className="h-[18rem]"></div>}
|
{countryWallet == "NG" && <div className="h-[18rem]"></div>}
|
||||||
|
|
||||||
{currency !== "US Dollars" && (
|
{countryWallet == "NG" && (
|
||||||
<div className="md:p-8 p-4 add-fund-btn flex justify-end items-center py-4 gap-4">
|
<div className="md:p-8 p-4 add-fund-btn flex justify-end items-center py-4 gap-4">
|
||||||
<button
|
<button
|
||||||
className="px-4 h-11 flex justify-center items-center btn-gradient text-base rounded-full text-white"
|
className="px-4 h-11 flex justify-center items-center btn-gradient text-base rounded-full text-white"
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ import { FlutterWaveButton, closePaymentModal } from "flutterwave-react-v3";
|
|||||||
|
|
||||||
function ConfirmAddFund({ confirmCredit, onClose, walletItem }) {
|
function ConfirmAddFund({ confirmCredit, onClose, walletItem }) {
|
||||||
const __confirmData = confirmCredit?.data;
|
const __confirmData = confirmCredit?.data;
|
||||||
|
const __confirmCountry = walletItem?.country;
|
||||||
const __confirmCardDetails = __confirmData.card
|
const __confirmCardDetails = __confirmData.card
|
||||||
? JSON.parse(__confirmData.card)
|
? JSON.parse(__confirmData.card)
|
||||||
: "";
|
: "";
|
||||||
@@ -46,7 +47,7 @@ function ConfirmAddFund({ confirmCredit, onClose, walletItem }) {
|
|||||||
loading: false,
|
loading: false,
|
||||||
status: true,
|
status: true,
|
||||||
});
|
});
|
||||||
toast.success("Account Topup was sucessful");
|
toast.success("Account Topup was successful");
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
navigate("/my-wallet", { replace: true });
|
navigate("/my-wallet", { replace: true });
|
||||||
}, 1000);
|
}, 1000);
|
||||||
@@ -91,10 +92,8 @@ function ConfirmAddFund({ confirmCredit, onClose, walletItem }) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const handlePrevCard = () => {
|
const handlePrevCard = () => {
|
||||||
console.log("Test me")
|
console.log("Test me");
|
||||||
}
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
const ThePaymentText = ({ value }) => (
|
const ThePaymentText = ({ value }) => (
|
||||||
<div className="my-2 flex items-center gap-5">
|
<div className="my-2 flex items-center gap-5">
|
||||||
@@ -109,7 +108,7 @@ function ConfirmAddFund({ confirmCredit, onClose, walletItem }) {
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
|
|
||||||
// console.log(confirmCredit);
|
console.log(confirmCredit);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="content-wrapper w-full h-[32rem]">
|
<div className="content-wrapper w-full h-[32rem]">
|
||||||
@@ -119,7 +118,11 @@ function ConfirmAddFund({ confirmCredit, onClose, walletItem }) {
|
|||||||
<div className="field w-full mb-3 min-h-[45px]">
|
<div className="field w-full mb-3 min-h-[45px]">
|
||||||
{confirmCredit?.show ? (
|
{confirmCredit?.show ? (
|
||||||
<div className="flex flex-col gap-4">
|
<div className="flex flex-col gap-4">
|
||||||
<div className="flex items-center gap-4">
|
<div
|
||||||
|
className={`flex items-center ${
|
||||||
|
__confirmCountry == "US" ? "gap-14" : "gap-4"
|
||||||
|
}`}
|
||||||
|
>
|
||||||
<h1 className="text-xl font-bold text-dark-gray dark:text-white tracking-tighter my-1">
|
<h1 className="text-xl font-bold text-dark-gray dark:text-white tracking-tighter my-1">
|
||||||
Amount({__confirmData?.currency})
|
Amount({__confirmData?.currency})
|
||||||
</h1>
|
</h1>
|
||||||
@@ -129,13 +132,13 @@ function ConfirmAddFund({ confirmCredit, onClose, walletItem }) {
|
|||||||
}`}
|
}`}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
{__confirmData?.currency == "US Dollars" && (
|
{__confirmCountry == "US" && (
|
||||||
<div className="flex items-center gap-8">
|
<div className="flex items-center gap-8">
|
||||||
<label
|
<label
|
||||||
htmlFor="payment"
|
htmlFor="payment"
|
||||||
className="text-xl font-bold text-dark-gray dark:text-white tracking-tighter my-1"
|
className="text-xl font-bold text-dark-gray dark:text-white tracking-tighter my-1"
|
||||||
>
|
>
|
||||||
{__confirmData?.currency && "Payment Method"}
|
{__confirmCountry == "US" && "Payment Method"}
|
||||||
</label>
|
</label>
|
||||||
<span className="text-[#181c32] dark:text-white ">
|
<span className="text-[#181c32] dark:text-white ">
|
||||||
{__confirmCardDetails ? (
|
{__confirmCardDetails ? (
|
||||||
@@ -147,17 +150,14 @@ function ConfirmAddFund({ confirmCredit, onClose, walletItem }) {
|
|||||||
|
|
||||||
<div
|
<div
|
||||||
className={`${
|
className={`${
|
||||||
__confirmData?.currency == "US Dollars"
|
__confirmCountry == "US" ? "gap-[3.7rem]" : "gap-6"
|
||||||
? "gap-14"
|
|
||||||
: "gap-6"
|
|
||||||
} flex items-center`}
|
} flex items-center`}
|
||||||
>
|
>
|
||||||
<h1 className="text-xl font-bold text-dark-gray dark:text-white tracking-tighter my-1">
|
<h1 className="text-xl font-bold text-dark-gray dark:text-white tracking-tighter my-1">
|
||||||
Reference No
|
Reference No
|
||||||
</h1>
|
</h1>
|
||||||
<span className="text-xl font-bold text-dark-gray dark:text-white tracking-tighter my-1">
|
<span className="text-xl font-bold text-dark-gray dark:text-white tracking-tighter my-1">
|
||||||
{__confirmCardDetails?.card_uid ||
|
{__confirmData?.credit_reference}
|
||||||
__confirmData?.credit_reference}
|
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -165,7 +165,11 @@ function ConfirmAddFund({ confirmCredit, onClose, walletItem }) {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{/* <hr /> */}
|
{/* <hr /> */}
|
||||||
<div className={__confirmData?.currency == "US Dollars" ? "min-h-[163px]":"min-h-[200px]"}></div>
|
<div
|
||||||
|
className={
|
||||||
|
__confirmCountry == "US" ? "min-h-[163px]" : "min-h-[200px]"
|
||||||
|
}
|
||||||
|
></div>
|
||||||
<div className="md:p-8 p-4 add-fund-btn flex justify-end items-center py-4 gap-4">
|
<div className="md:p-8 p-4 add-fund-btn flex justify-end items-center py-4 gap-4">
|
||||||
<button
|
<button
|
||||||
className="px-4 h-11 flex justify-center items-center border-gradient text-base rounded-full"
|
className="px-4 h-11 flex justify-center items-center border-gradient text-base rounded-full"
|
||||||
@@ -173,7 +177,7 @@ function ConfirmAddFund({ confirmCredit, onClose, walletItem }) {
|
|||||||
>
|
>
|
||||||
Cancel
|
Cancel
|
||||||
</button>
|
</button>
|
||||||
{__confirmData?.currency == "US Dollars" && (
|
{__confirmCountry == "US" && (
|
||||||
<button
|
<button
|
||||||
className="px-4 h-11 flex justify-center items-center btn-gradient text-white text-base rounded-full"
|
className="px-4 h-11 flex justify-center items-center btn-gradient text-white text-base rounded-full"
|
||||||
onClick={
|
onClick={
|
||||||
@@ -185,7 +189,7 @@ function ConfirmAddFund({ confirmCredit, onClose, walletItem }) {
|
|||||||
Proceed
|
Proceed
|
||||||
</button>
|
</button>
|
||||||
)}
|
)}
|
||||||
{__confirmData?.currency == "Naira" && (
|
{__confirmCountry == "NG" && (
|
||||||
<FlutterWaveButton
|
<FlutterWaveButton
|
||||||
{...fwConfig}
|
{...fwConfig}
|
||||||
className="px-2 py-1 h-11 flex justify-center items-center btn-gradient text-base rounded-full text-white"
|
className="px-2 py-1 h-11 flex justify-center items-center btn-gradient text-base rounded-full text-white"
|
||||||
|
|||||||
@@ -81,6 +81,7 @@ const CreditPopup = ({ details, onClose, situation, walletItem }) => {
|
|||||||
) : (
|
) : (
|
||||||
<AddFundPop
|
<AddFundPop
|
||||||
_payment={details}
|
_payment={details}
|
||||||
|
walletItem={walletItem}
|
||||||
input={input}
|
input={input}
|
||||||
setInput={setInput}
|
setInput={setInput}
|
||||||
onClose={onClose}
|
onClose={onClose}
|
||||||
|
|||||||
Reference in New Issue
Block a user