Compare commits

...

14 Commits

Author SHA1 Message Date
YasinShaikh123
cd6cd4659a [ Add comma on Export ] 2025-02-10 13:40:31 +05:30
YasinShaikh123
b405da8657 [ update Export ] 2025-02-10 13:05:48 +05:30
YasinShaikh123
ae7b5bbf41 [ Solve Error ] 2025-02-06 19:07:00 +05:30
YasinShaikh123
e269f6a3b7 Merge branch 'Sprint-10' of http://git.wdipl.com/Siddhesh.More/tanami-admin-panel into Sprint-10 2025-02-04 20:38:24 +05:30
YasinShaikh123
4d6bd87601 [ Change Sidebar Title ] 2025-02-04 20:36:49 +05:30
Swapnil Bendal
b141743190 Merge remote-tracking branch 'origin/main' into Sprint-10 2025-01-22 13:16:43 +05:30
Swapnil Bendal
f9d0b3ce6c Merge remote-tracking branch 'origin/dev' into Sprint-10 2025-01-22 13:16:30 +05:30
Swapnil Bendal
965263a3f2 Merge remote-tracking branch 'origin/sprint10/reversal' into Sprint-10 2025-01-21 16:47:09 +05:30
Swapnil Bendal
96f813f632 Merge branch 'sprint10/reversal' into Sprint-10 2025-01-21 15:31:16 +05:30
Swapnil Bendal
79ec8d92ae Implement debounced search functionality in ApproveHistory component and update API query structure 2025-01-20 20:38:52 +05:30
35d3e07224 Merge pull request 'dev' (#31) from dev into main
Reviewed-on: #31
2025-01-10 13:34:54 +00:00
Swapnil Bendal
651c775c2a Merge remote-tracking branch 'origin/main' into dev 2025-01-10 19:02:33 +05:30
6c2a38becb Merge pull request 'bug-fix/9.0.3' (#30) from bug-fix/9.0.3 into main
Reviewed-on: #30
2024-12-24 12:47:20 +00:00
bddf7381a6 Merge pull request '[fixed] - pending action' (#29) from dev into main
Reviewed-on: #29
2024-12-24 11:07:30 +00:00
5 changed files with 71 additions and 47 deletions

View File

@@ -237,9 +237,21 @@ export const decryptString = (ciphertext) => {
return originalText;
};
export const SUPER_ADMIN_ID = Number(import.meta.env.VITE_SUPER_ADMIN_ID) || 1
export const MAKER_ID = import.meta.env.VITE_MAKER_ID || 1
export const CHECKER_ID = import.meta.env.VITE_CHECKER_ID || 2
// export const SUPER_ADMIN_ID = Number(import.meta.env.VITE_SUPER_ADMIN_ID) || 1
// export const MAKER_ID = import.meta.env.VITE_MAKER_ID || 1
// export const CHECKER_ID = import.meta.env.VITE_CHECKER_ID || 2
// export const isMaker = (role = decryptString(localStorage?.getItem("role"))) => role === import.meta.env.VITE_MAKER;
// export const isChecker = (role = decryptString(localStorage?.getItem("role"))) => role === import.meta.env.VITE_CHECKER;
export const SUPER_ADMIN_ID = Number(import.meta.env?.VITE_SUPER_ADMIN_ID) || 1;
export const MAKER_ID = Number(import.meta.env?.VITE_MAKER_ID) || 1;
export const CHECKER_ID = Number(import.meta.env?.VITE_CHECKER_ID) || 2;
export const isMaker = (role = decryptString(localStorage?.getItem("role") || "")) =>
role === (import.meta.env?.VITE_MAKER || "");
export const isChecker = (role = decryptString(localStorage?.getItem("role") || "")) =>
role === (import.meta.env?.VITE_CHECKER || "");
export const isMaker = (role = decryptString(localStorage?.getItem("role"))) => role === import.meta.env.VITE_MAKER;
export const isChecker = (role = decryptString(localStorage?.getItem("role"))) => role === import.meta.env.VITE_CHECKER;

View File

@@ -61,6 +61,16 @@ const ApproveHistory = () => {
onClose: onRejectClose,
} = useDisclosure();
// 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 {
data,
isLoading: drawalRequestLoading,
@@ -191,11 +201,7 @@ const ApproveHistory = () => {
</Box>
),
"Deposit Date": (
<Box
w={"100px"}
isTruncated={true}
display={"flex"}
>
<Box w={"100px"} isTruncated={true} display={"flex"}>
<Text as={"span"} color={"teal.900"}>
{formatDate(item?.transaction_date)}
</Text>
@@ -221,28 +227,27 @@ const ApproveHistory = () => {
fontWeight={"500"}
className="d-flex align-items-center web-text-small"
>
{item?.spportFile_path&&<Badge
px={2}
py={0.5}
textTransform={"inherit"}
fontWeight={500}
colorScheme={"forestGreen"}
>
<Link
href={import.meta.env.VITE_IMAGE_URL + item?.spportFile_path}
isExternal
display={"flex"}
alignItems={"center"}
{item?.spportFile_path && (
<Badge
px={2}
py={0.5}
textTransform={"inherit"}
fontWeight={500}
colorScheme={"forestGreen"}
>
<Box me={"1px"}
as="span"
cursor={"pointer"}
<Link
href={import.meta.env.VITE_IMAGE_URL + item?.spportFile_path}
isExternal
display={"flex"}
alignItems={"center"}
>
View
</Box>
<ExternalLinkIcon />
</Link>
</Badge>}
<Box me={"1px"} as="span" cursor={"pointer"}>
View
</Box>
<ExternalLinkIcon />
</Link>
</Badge>
)}
</Text>
),
Status: (
@@ -255,12 +260,12 @@ const ApproveHistory = () => {
rounded={4}
colorScheme={
item?.transactionStatus === "Approved"
? "green"
: item?.transactionStatus === "Pending"
? "yellow"
: item?.transactionStatus === "Reject"
? "red"
: "gray" // default border color if status doesn't match any condition
? "green"
: item?.transactionStatus === "Pending"
? "yellow"
: item?.transactionStatus === "Reject"
? "red"
: "gray" // default border color if status doesn't match any condition
}
>
{item.transactionStatus}

View File

@@ -122,8 +122,14 @@ const InvestorDetails = () => {
Country: item?.country?.countryName,
"Phone Number": item?.principal?.mobileNumber, // Skipping integer conversion, as this is likely a string
"E-mail ID": item?.principal?.emailAddress,
"Wallet Balance": item?.principal?.WalletBalance_InInvCur, // Skipping integer conversion, as this is likely a string
"Investor Portfolio": item?.principal?.Portfolio_InInvCur,
"Wallet Balance":parseFloat(item?.WalletBalance_InInvCur || 0).toLocaleString(undefined, {
minimumFractionDigits: 2,
maximumFractionDigits: 2,
}), // Skipping integer conversion, as this is likely a string
"Investor Portfolio": parseFloat(item?.Portfolio_InInvCur || 0).toLocaleString(undefined, {
minimumFractionDigits: 2,
maximumFractionDigits: 2,
}),
// Type: item?.investor_type?.investorTypeName,
// Status: item.ioStatus ? "Ban" : "Unban",
"KYC Status": item.KYCStatus ? "Completed" : "Not complete",

View File

@@ -33,6 +33,7 @@ import { LiaCrownSolid } from "react-icons/lia";
import { PiCrownDuotone } from "react-icons/pi";
import { HiOutlineBanknotes } from "react-icons/hi2";
import { AtSignIcon } from "@chakra-ui/icons";
import { isMaker, MAKER_ID } from "../Constants/Constants";
export const nav = [
{
@@ -109,7 +110,7 @@ export const nav = [
title: "Fawateer Deposit",
submenu: [
{
title: "Approver Request",
title: isMaker() ? "Approve Create" : "Approve Request",
path: "/fawateer",
icon: RiMoneyDollarBoxLine,
},

View File

@@ -9,7 +9,7 @@ import { baseQuery } from "./token.serivce";
export const fawateerRequest = createApi({
reducerPath: "fawateerRequest",
baseQuery: baseQuery,
tagTypes: ["getFawateerRequest" ,"getApproveHistory","getApproveComment","getRejectComment","getFawateerMakerRequest"],
tagTypes: ["getFawateerRequest", "getApproveHistory", "getApproveComment", "getRejectComment", "getFawateerMakerRequest"],
endpoints: (builder) => ({
@@ -37,7 +37,7 @@ export const fawateerRequest = createApi({
}),
getFawateerForMakerRequest: builder.query({
query: ({ page, size, searchTerm }) => {
@@ -89,10 +89,10 @@ export const fawateerRequest = createApi({
// Export hooks for usage in functional components
export const {
useGetFawateerRequestQuery,
useGetApproveHistoryQuery,
useApproveCommentMutation,
useRejectCommentMutation,
useGetFawateerForMakerRequestQuery,
useGetFawateerInvestorsQuery
useGetFawateerRequestQuery,
useGetApproveHistoryQuery,
useApproveCommentMutation,
useRejectCommentMutation,
useGetFawateerForMakerRequestQuery,
useGetFawateerInvestorsQuery
} = fawateerRequest;