refactor: Update source code with the NPCI and CBS API

This commit is contained in:
2025-08-25 14:21:40 +05:30
parent 78426747e5
commit 671ea780b3
16 changed files with 392 additions and 173 deletions

View File

@@ -43,11 +43,11 @@ const MockBeneficiaryData =
},
]
export default function SendToBeneficiaryOthers() {
const router = useRouter();
const [authorized, setAuthorized] = useState<boolean | null>(null);
const [accountData, setAccountData] = useState<accountData[]>([]);
const [beneficiaryData, setBeneficiaryData] = useState<any[]>([]);
const [selectedAccNo, setSelectedAccNo] = useState<string | null>(null);
const [beneficiaryAcc, setBeneficiaryAcc] = useState<string | null>(null);
const [beneficiaryName, setBeneficiaryName] = useState<string | null>(null);
@@ -70,31 +70,63 @@ export default function SendToBeneficiaryOthers() {
setGenerateOtp(value);
return value;
}
const FetchBeneficiaryDetails = async () => {
try {
const token = localStorage.getItem("access_token");
const response = await fetch("/api/beneficiary", {
method: "GET",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${token}`,
},
});
const data = await response.json();
console.log(data);
if (response.ok && Array.isArray(data)) {
setBeneficiaryData(data);
} else {
notifications.show({
title: "Error",
message: "Unable to fetch beneficiary list",
color: "red",
});
}
} catch {
notifications.show({
title: "Error",
message: "Something went wrong while fetching beneficiaries",
color: "red",
});
}
};
const selectedAccount = accountData.find((acc) => acc.stAccountNo === selectedAccNo);
const accountOptions = accountData.map((acc) => ({
value: acc.stAccountNo,
label: `${acc.stAccountNo} (${acc.stAccountType})`,
}));
const benAccountOption = MockBeneficiaryData.filter((ben_acc) =>
ben_acc.stBankName !== 'Kangra Central Co-operative Bank')
.map((ben_acc) => ({
value: ben_acc.stBenAccountNo,
label: ben_acc.stBenAccountNo,
const benAccountOption = beneficiaryData.
filter((ben) => !ben.ifscCode?.startsWith("KACE"))
.map((ben) => ({
value: ben.accountNo,
label: `${ben.accountNo} - ${ben.name}`,
}));
const handleBeneficiary = (benAcc: string | null) => {
if (benAcc) {
setBeneficiaryAcc(benAcc);
const selected = MockBeneficiaryData.find((item) => item.stBenAccountNo === benAcc);
if (selected)
setBeneficiaryName(selected.stBenName);
setBeneficiaryIFSC(selected?.stIFSC ?? '');
}
else {
setBeneficiaryAcc('');
setBeneficiaryName('');
setBeneficiaryIFSC('');
const handleBeneficiary = (ben: string | null) => {
if (ben) {
setBeneficiaryAcc(ben);
const selected = beneficiaryData.find((item) => item.accountNo === ben && !item.ifscCode?.startsWith("KACE"));
if (selected) {
setBeneficiaryName(selected.name);
setBeneficiaryIFSC(selected?.ifscCode ?? '');
}
else {
setBeneficiaryAcc('');
setBeneficiaryName('');
setBeneficiaryIFSC('');
}
}
}
@@ -137,6 +169,7 @@ export default function SendToBeneficiaryOthers() {
useEffect(() => {
if (authorized) {
FetchAccountDetails();
FetchBeneficiaryDetails();
}
}, [authorized]);