From 36cf9fa610b59707eb8c632c928d9ea9d5459635 Mon Sep 17 00:00:00 2001 From: "Siddhesh.More" Date: Thu, 10 Oct 2024 17:09:17 +0530 Subject: [PATCH] update --- .../ApproveRequest/ApproveRequest.jsx | 25 +++++++++++++++++-- src/Pages/Master/Sponser/Sponsers.jsx | 8 +++++- src/Routes/Nav.js | 6 ++--- src/Routes/Routes.js | 8 +++--- src/Services/fawateer.request.service.js | 9 ++++++- 5 files changed, 45 insertions(+), 11 deletions(-) diff --git a/src/Pages/FawateerChecker/ApproveRequest/ApproveRequest.jsx b/src/Pages/FawateerChecker/ApproveRequest/ApproveRequest.jsx index 0dbe812..0dbecb6 100644 --- a/src/Pages/FawateerChecker/ApproveRequest/ApproveRequest.jsx +++ b/src/Pages/FawateerChecker/ApproveRequest/ApproveRequest.jsx @@ -36,6 +36,7 @@ import RequestRejectModal from "./RequestRejectModal"; const [pageSize, setPageSize] = useState(TABLE_PAGINATION?.size); const [currentPage, setCurrentPage] = useState(TABLE_PAGINATION?.page); + const [debouncedSearchTerm, setDebouncedSearchTerm] = useState(""); const formatDate = (date) => { return new Date(date).toLocaleDateString('en-GB', { @@ -45,6 +46,16 @@ import RequestRejectModal from "./RequestRejectModal"; }); }; + + // Debounce the search term to avoid making a request on every keystroke + useEffect(() => { + const handler = setTimeout(() => { + setDebouncedSearchTerm(searchTerm); + }, 500); // Adjust delay as needed + return () => { + clearTimeout(handler); + }; + }, [searchTerm]); const { isOpen: isConfirmOpen, onOpen: onConfirmOpen, @@ -61,7 +72,16 @@ import RequestRejectModal from "./RequestRejectModal"; isLoading: drawalRequestLoading, error, refetch - } = useGetFawateerRequestQuery(); + } = useGetFawateerRequestQuery( + { + page: debouncedSearchTerm ? undefined : currentPage, // Omit pagination for search + size: debouncedSearchTerm ? undefined : pageSize, // Omit pagination for search + searchTerm: debouncedSearchTerm, + }, + { + skip: debouncedSearchTerm === "" && searchTerm !== "", // Skip if search is empty and it's not the initial request + } + ); console.log(data?.data?.rows); @@ -105,6 +125,7 @@ import RequestRejectModal from "./RequestRejectModal"; }); + const role = localStorage?.getItem('role') // ====================================================[Table Setup]================================================================ const tableHeadRow = [ "Sr.no", @@ -115,7 +136,7 @@ import RequestRejectModal from "./RequestRejectModal"; "Phone Number", "Transaction Date", "Transaction Amount", - "Action", + role === "Checker"&&"Action", ]; diff --git a/src/Pages/Master/Sponser/Sponsers.jsx b/src/Pages/Master/Sponser/Sponsers.jsx index 85b7244..2af1bc0 100644 --- a/src/Pages/Master/Sponser/Sponsers.jsx +++ b/src/Pages/Master/Sponser/Sponsers.jsx @@ -236,7 +236,13 @@ const Sponser = () => { {/* ====================[Pagination]===================== */} - + {/* =====================[Add Button]===================== */} diff --git a/src/Routes/Nav.js b/src/Routes/Nav.js index 3400743..307be23 100644 --- a/src/Routes/Nav.js +++ b/src/Routes/Nav.js @@ -110,7 +110,7 @@ export const nav = [ submenu: [ { title: "Create Request", - path: "/fawateer-request", + path: "/fawateer", icon: RiMoneyDollarBoxLine, }, { @@ -127,12 +127,12 @@ export const nav = [ submenu: [ { title: "Pending Request", - path: "/fawateer-approver", + path: "/fawateer", icon: RiMoneyDollarBoxLine, }, { title: "View History", - path: "/approver-history", + path: "/fawateer-history", icon: RiExchangeBoxLine, }, ], diff --git a/src/Routes/Routes.js b/src/Routes/Routes.js index 11cece5..15f422c 100644 --- a/src/Routes/Routes.js +++ b/src/Routes/Routes.js @@ -119,12 +119,12 @@ export const RouteLink = [ // ===============[ fawateer ]=============== - { path: "/fawateer-history", Component: FawateerRequest }, - { path: "/fawateer-request", Component: CreateRequest }, + { path: "/fawateer", Component: localStorage.getItem("role") === "Maker"? CreateRequest:ApproveRequest }, + { path: "/fawateer-history", Component: localStorage.getItem("role") === "Maker"?ApproveRequest: ApproveHistory }, - { path: "/fawateer-approver", Component: ApproveRequest }, - { path: "/approver-history", Component: ApproveHistory }, + // { path: "/fawateer-approver", Component: ApproveRequest }, + // { path: "/approver-history", Component: ApproveHistory }, diff --git a/src/Services/fawateer.request.service.js b/src/Services/fawateer.request.service.js index 05e15f6..bd0c04c 100644 --- a/src/Services/fawateer.request.service.js +++ b/src/Services/fawateer.request.service.js @@ -12,8 +12,15 @@ export const fawateerRequest = createApi({ tagTypes: ["getFawateerRequest"], endpoints: (builder) => ({ + getFawateerRequest: builder.query({ - query: () => `/fawateer/admin/Pending`, + query: ({ page, size, searchTerm }) => { + let baseURL = `/fawateer/admin/Pending?search_data=${searchTerm || ""}`; + if (page !== undefined && size !== undefined) { + baseURL += `&page=${page}&size=${size}`; // Only add pagination if both are defined + } + return baseURL; + }, providesTags: ["getFawateerRequest"], }),