From 60e434b511b6f37117d1977ccad535978fded3c1 Mon Sep 17 00:00:00 2001 From: victorAnumudu Date: Thu, 20 Feb 2025 19:44:17 +0100 Subject: [PATCH] disbursements dummy page added --- src/RouteLinks.js | 7 +- src/SiteRoutes.jsx | 12 +- src/components/Icons.jsx | 10 +- .../ApplicationsLoanCom.jsx} | 18 +-- .../approvedloancom/ApprovedLoanCom.jsx | 16 +-- src/components/breadcrumb/BreadcrumbCom.jsx | 7 +- .../DisbursementsLoanCom.jsx | 107 ++++++++++++++++++ .../layouts/aside/DashboardAside.jsx | 17 +-- .../SelectedLoanCom.jsx} | 18 +-- src/pages/ApplicationsLoanPage.jsx | 8 ++ src/pages/ApplyPage.jsx | 8 -- src/pages/DisbursementsLoanPage.jsx | 8 ++ src/pages/SelectPage.jsx | 8 -- src/pages/SelectedLoanPage.jsx | 8 ++ 14 files changed, 179 insertions(+), 73 deletions(-) rename src/components/{applyloancom/ApplyCom.jsx => applicationsloancom/ApplicationsLoanCom.jsx} (89%) create mode 100644 src/components/disbursementsloancom/DisbursementsLoanCom.jsx rename src/components/{selectloancom/SelectLoanCom.jsx => selectedloancom/SelectedLoanCom.jsx} (87%) create mode 100644 src/pages/ApplicationsLoanPage.jsx delete mode 100644 src/pages/ApplyPage.jsx create mode 100644 src/pages/DisbursementsLoanPage.jsx delete mode 100644 src/pages/SelectPage.jsx create mode 100644 src/pages/SelectedLoanPage.jsx diff --git a/src/RouteLinks.js b/src/RouteLinks.js index c51f845..4709a12 100644 --- a/src/RouteLinks.js +++ b/src/RouteLinks.js @@ -3,9 +3,10 @@ const RouteLinks = { errorPage: '*', homePage: '/', usersPage: '/users', - approvedLoans: '/loans/approved', - applyPage: '/loans/apply', - selectPage: '/loans/select', + approvedLoansPage: '/loans/approved', + applicationsLoanPage: '/loans/apply', + disbursementsLoanPage: '/loans/disbursements', + selectedLoanPage: '/loans/select', } export default RouteLinks \ No newline at end of file diff --git a/src/SiteRoutes.jsx b/src/SiteRoutes.jsx index 9142b3d..261ba46 100644 --- a/src/SiteRoutes.jsx +++ b/src/SiteRoutes.jsx @@ -9,8 +9,9 @@ import LoginPage from './pages/LoginPage' // LOGIN PAGE import HomePage from './pages/HomePage' // Home PAGE import UsersPage from './pages/UsersPage' // Users PAGE import ApprovedLoansPage from './pages/ApprovedLoansPage' // APPROVED LOANS PAGE -import ApplyPage from './pages/ApplyPage' // APPLY LOANS PAGE -import SelectPage from './pages/SelectPage' // SELECT LOANS PAGE +import DisbursementsLoanPage from './pages/DisbursementsLoanPage' // DISBURSEMENTS LOANS PAGE +import ApplicationsLoanPage from './pages/ApplicationsLoanPage' // APPLICATIONS LOANS PAGE +import SelectedLoanPage from './pages/SelectedLoanPage' // SELECTED LOANS PAGE // const Home = lazy(() => import('./pages/Home')); @@ -23,9 +24,10 @@ export default function SiteRoutes() { }> } /> {`*/HOME PAGE*/`} } /> {`*/USERS PAGE*/`} - } /> {`*/APPROVED LOANS PAGE*/`} - } /> {`*/APPLY LOANS PAGE*/`} - } /> {`*/SELECT LOANS PAGE*/`} + } /> {`*/APPROVED LOANS PAGE*/`} + } /> {`*/DISBURSEMENTS LOANS PAGE*/`} + } /> {`*/APPLICATIONS LOANS PAGE*/`} + } /> {`*/SELECTED LOANS PAGE*/`} {/* ERROR PAGE */} diff --git a/src/components/Icons.jsx b/src/components/Icons.jsx index 2aa0354..8bb0232 100644 --- a/src/components/Icons.jsx +++ b/src/components/Icons.jsx @@ -20,15 +20,15 @@ export default function Icons({name, className}) { :name.toLowerCase() == 'product' ? :name.toLowerCase() == 'trash' ? - + :name.toLowerCase() == 'eye' ? - + :name.toLowerCase() == 'next' ? - + :name.toLowerCase() == 'prev' ? - + :name.toLowerCase() == 'edit' ? - + : null } diff --git a/src/components/applyloancom/ApplyCom.jsx b/src/components/applicationsloancom/ApplicationsLoanCom.jsx similarity index 89% rename from src/components/applyloancom/ApplyCom.jsx rename to src/components/applicationsloancom/ApplicationsLoanCom.jsx index bba5614..536efd1 100644 --- a/src/components/applyloancom/ApplyCom.jsx +++ b/src/components/applicationsloancom/ApplicationsLoanCom.jsx @@ -13,7 +13,7 @@ import { applyLoan } from '../../services/siteServices' import getTimeFromDateString from '../../helpers/GetTimeFromDateString'; import getDateFromDateString from '../../helpers/GetDateFromDateString'; -export default function ApplyCom() { +export default function ApplicationsLoanCom() { const {data, isFetching, isError, error} = useQuery({ queryKey: queryKeys.apply_loan, @@ -24,7 +24,7 @@ export default function ApplyCom() { return (
- + {isFetching ? <> @@ -37,7 +37,7 @@ export default function ApplyCom() {

{error.message}

: - + {({ data }) => ( <> @@ -96,15 +96,9 @@ export default function ApplyCom() { */} {/* */} {/* */} - - - - - - - - - + + + )) diff --git a/src/components/approvedloancom/ApprovedLoanCom.jsx b/src/components/approvedloancom/ApprovedLoanCom.jsx index 84d2798..49d5f0c 100644 --- a/src/components/approvedloancom/ApprovedLoanCom.jsx +++ b/src/components/approvedloancom/ApprovedLoanCom.jsx @@ -23,7 +23,7 @@ export default function ApprovedLoanCom() { return (
- + {isFetching ? <> @@ -36,7 +36,7 @@ export default function ApprovedLoanCom() {

{error.message}

: - + {({ data }) => ( <>
@@ -81,15 +81,9 @@ export default function ApprovedLoanCom() { */} {/* */} {/* */} - - - - - - - - - + + + )) diff --git a/src/components/breadcrumb/BreadcrumbCom.jsx b/src/components/breadcrumb/BreadcrumbCom.jsx index 28ea6b0..9542207 100644 --- a/src/components/breadcrumb/BreadcrumbCom.jsx +++ b/src/components/breadcrumb/BreadcrumbCom.jsx @@ -1,10 +1,13 @@ import { MdKeyboardDoubleArrowRight } from 'react-icons/md' import { TiHomeOutline } from 'react-icons/ti' -export default function BreadcrumbCom({title, paths}) { +export default function BreadcrumbCom({title, span, paths}) { return (
-

{title}

+
+

{title}

+ {span && span} +
{paths.map((item, index) => ( diff --git a/src/components/disbursementsloancom/DisbursementsLoanCom.jsx b/src/components/disbursementsloancom/DisbursementsLoanCom.jsx new file mode 100644 index 0000000..08ea406 --- /dev/null +++ b/src/components/disbursementsloancom/DisbursementsLoanCom.jsx @@ -0,0 +1,107 @@ +import React from 'react' +import { useQuery } from "@tanstack/react-query"; +import {Link} from 'react-router-dom' + +import BreadcrumbCom from '../breadcrumb/BreadcrumbCom' +import TableWrapper from '../tableWrapper/TableWrapper' +import Icons from '../Icons' + +import Avatar from '../../assets/user_avatar.jpg' +import queryKeys from '../../services/queryKeys' +import { approvedLoan } from '../../services/siteServices' +import getDateFromDateString from '../../helpers/GetDateFromDateString'; +import getTimeFromDateString from '../../helpers/GetTimeFromDateString'; + +export default function DisbursementsLoanCom() { + + const {data, isFetching, isError, error} = useQuery({ + queryKey: queryKeys.approved_loan, + queryFn: () => approvedLoan() + }) + + const approvedUsers = data?.data?.result_data?.data // DISBURSED LOAN LIST + + return ( +
+ + + {isFetching ? + <> +
+

Loading...

+
+ + : isError ? +
+

{error.message}

+
+ : + + {({ data }) => ( + <> +
+ + + + + + + + + + {(data && data.length > 0) ? data?.map((item, index) => ( + + + + + + + )) + : + + + + } + +
+ Name + + Loan + + Added + + Action +
+ Jese image +
+
{item?.name || ''}
+
{item?.bvn}
+
+
+ {item?.loan} - {item?.description} + +
+ {getDateFromDateString(item?.added)} {getTimeFromDateString(item?.added)} +
+
+ {/* */} + {/* + + */} + {/* */} + {/* */} + + + +
+
+ No Record Found +
+
+ + )} +
+ } + + ) +} \ No newline at end of file diff --git a/src/components/layouts/aside/DashboardAside.jsx b/src/components/layouts/aside/DashboardAside.jsx index 0fc85c0..cc7f593 100644 --- a/src/components/layouts/aside/DashboardAside.jsx +++ b/src/components/layouts/aside/DashboardAside.jsx @@ -45,7 +45,9 @@ export default function DashboardAside({shrinkAside=false}) { let hasSubLinks = (link.subLinks && link.subLinks.length > 0) ? true : false if(active && !hasSubLinks){ return ( - +
+ +
) }else if(active && hasSubLinks){ return ( @@ -59,9 +61,9 @@ export default function DashboardAside({shrinkAside=false}) { let active = subItem.status == 1 ? true : false if(active){ return ( - <> +
- +
) } })} @@ -93,11 +95,12 @@ export default function DashboardAside({shrinkAside=false}) { const asideNavLinks = [ {name:'Dashboard', status:1, icon: 'dashboard', to: RouteLinks.homePage}, {name:'Salary Loan', title:'Loan', status:1, icon: 'money', subLinks: [ - {name: 'Select', status:1, icon: 'dot', to: RouteLinks.selectPage}, - {name: 'Apply', status:1, icon: 'dot', to: RouteLinks.applyPage}, - {name: 'Approved', status:1, icon: 'dot', to: RouteLinks.approvedLoans}, + {name: 'Selected Loans', status:1, icon: 'dot', to: RouteLinks.selectedLoanPage}, + {name: 'Applications', status:1, icon: 'dot', to: RouteLinks.applicationsLoanPage}, + {name: 'Approved Loans', status:1, icon: 'dot', to: RouteLinks.approvedLoansPage}, + {name: 'Disbursements', status:1, icon: 'dot', to: RouteLinks.disbursementsLoanPage}, {name: 'Payments', status:1, icon: 'dot', to: '#'}, - {name: 'Configuration', status:1, icon: 'dot', to: '#'}, + {name: 'Configurations', status:1, icon: 'dot', to: '#'}, ], }, {name:'Product 2', title:'Product 2', status:1, icon: 'product', subLinks: [ diff --git a/src/components/selectloancom/SelectLoanCom.jsx b/src/components/selectedloancom/SelectedLoanCom.jsx similarity index 87% rename from src/components/selectloancom/SelectLoanCom.jsx rename to src/components/selectedloancom/SelectedLoanCom.jsx index 549e4ed..8618caf 100644 --- a/src/components/selectloancom/SelectLoanCom.jsx +++ b/src/components/selectedloancom/SelectedLoanCom.jsx @@ -12,7 +12,7 @@ import { selectLoan } from '../../services/siteServices' import getDateFromDateString from '../../helpers/GetDateFromDateString'; import getTimeFromDateString from '../../helpers/GetTimeFromDateString'; -export default function SelectLoanCom() { +export default function SelectedLoanCom() { const {data, isFetching, isError, error} = useQuery({ queryKey: queryKeys.select_loan, @@ -23,7 +23,7 @@ export default function SelectLoanCom() { return (
- + {isFetching ? <> @@ -36,7 +36,7 @@ export default function SelectLoanCom() {

{error.message}

: - + {({ data }) => ( <> @@ -81,15 +81,9 @@ export default function SelectLoanCom() { */} {/* */} {/* */} - - - - - - - - - + + + )) diff --git a/src/pages/ApplicationsLoanPage.jsx b/src/pages/ApplicationsLoanPage.jsx new file mode 100644 index 0000000..93da2b7 --- /dev/null +++ b/src/pages/ApplicationsLoanPage.jsx @@ -0,0 +1,8 @@ +import React from 'react' +import ApplicationsLoanCom from '../components/applicationsloancom/ApplicationsLoanCom' + +export default function ApplicationsLoanPage() { + return ( + + ) +} diff --git a/src/pages/ApplyPage.jsx b/src/pages/ApplyPage.jsx deleted file mode 100644 index 415ec1a..0000000 --- a/src/pages/ApplyPage.jsx +++ /dev/null @@ -1,8 +0,0 @@ -import React from 'react' -import ApplyCom from '../components/applyloancom/ApplyCom' - -export default function ApplyPage() { - return ( - - ) -} diff --git a/src/pages/DisbursementsLoanPage.jsx b/src/pages/DisbursementsLoanPage.jsx new file mode 100644 index 0000000..ccef316 --- /dev/null +++ b/src/pages/DisbursementsLoanPage.jsx @@ -0,0 +1,8 @@ +import React from 'react' +import DisbursementsLoanCom from '../components/disbursementsloancom/DisbursementsLoanCom' + +export default function DisbursementsLoanPage() { + return ( + + ) +} diff --git a/src/pages/SelectPage.jsx b/src/pages/SelectPage.jsx deleted file mode 100644 index 0f2fc13..0000000 --- a/src/pages/SelectPage.jsx +++ /dev/null @@ -1,8 +0,0 @@ -import React from 'react' -import SelectLoanCom from '../components/selectloancom/SelectLoanCom' - -export default function SelectPage() { - return ( - - ) -} \ No newline at end of file diff --git a/src/pages/SelectedLoanPage.jsx b/src/pages/SelectedLoanPage.jsx new file mode 100644 index 0000000..6894c3a --- /dev/null +++ b/src/pages/SelectedLoanPage.jsx @@ -0,0 +1,8 @@ +import React from 'react' +import SelectedLoanCom from '../components/selectedloancom/SelectedLoanCom' + +export default function SelectedLoanPage() { + return ( + + ) +} \ No newline at end of file