From 625f721325aaadbf2a3458a408e4e7d586026ccf Mon Sep 17 00:00:00 2001
From: YasinShaikh123 <123150391+YasinShaikh123@users.noreply.github.com>
Date: Wed, 8 Jan 2025 13:16:44 +0530
Subject: [PATCH] correct exchange rate
---
src/Layout/DefaultLayout.jsx | 2 +-
.../InvestorDetails/InvestorDetails.jsx | 6 +--
.../Master/ExchangeRate/EditExchangeRate.jsx | 43 ++++++++++++-------
3 files changed, 31 insertions(+), 20 deletions(-)
diff --git a/src/Layout/DefaultLayout.jsx b/src/Layout/DefaultLayout.jsx
index 23044a7..56976ec 100644
--- a/src/Layout/DefaultLayout.jsx
+++ b/src/Layout/DefaultLayout.jsx
@@ -167,7 +167,7 @@ const DashboardLayout = ({ isOnline }) => {
return (
- Echange rate
+ Exchange rate
);
case path.startsWith("/create-io"):
diff --git a/src/Pages/Investor_Management/InvestorDetails/InvestorDetails.jsx b/src/Pages/Investor_Management/InvestorDetails/InvestorDetails.jsx
index d0f3683..8459cc3 100644
--- a/src/Pages/Investor_Management/InvestorDetails/InvestorDetails.jsx
+++ b/src/Pages/Investor_Management/InvestorDetails/InvestorDetails.jsx
@@ -221,7 +221,7 @@ const InvestorDetails = () => {
variant={"solid"}
>
{/* {item.KYCStatus ? "Completed" : "Not complete"} */}
- {item?.KYCStatus === true ? "Completed" : "NotCompleted"}
+ {item?.KYCStatus === true ? "Completed" : "Not Completed"}
),
@@ -321,7 +321,7 @@ const InvestorDetails = () => {
KYC Status
-
+
@@ -337,7 +337,7 @@ const InvestorDetails = () => {
Country
-
+
diff --git a/src/Pages/Master/ExchangeRate/EditExchangeRate.jsx b/src/Pages/Master/ExchangeRate/EditExchangeRate.jsx
index aaa7ac6..5ee8d30 100644
--- a/src/Pages/Master/ExchangeRate/EditExchangeRate.jsx
+++ b/src/Pages/Master/ExchangeRate/EditExchangeRate.jsx
@@ -48,14 +48,16 @@ import FullscreenLoaders from "../../../Components/Loaders/FullscreenLoaders";
const editExchange = yup.object().shape({
rate: yup
- .number()
+ .string()
.required("Rate is required")
- .positive("Rate must be greater than 0")
+ .matches(
+ /^\d+\.\d{8}$/,
+ "Rate must have exactly 8 decimal places"
+ )
.test(
- "is-decimal",
- "Rate must have exactly 8 decimal places",
- (value) =>
- value !== undefined && value.toString().match(/^\d+(\.\d{8})?$/)
+ "is-positive",
+ "Rate must be greater than 0",
+ (value) => parseFloat(value) > 0
),
});
@@ -86,7 +88,7 @@ const EditExchangeRate = ({
const [isBtnLoading, setIsBtnLoading] = useState(false);
const [rateError, setRateError] = useState("");
- const { data, isLoading, errors,refetch } = useGetExchangeRateByIdQuery(id, {
+ const { data, isLoading, errors,refetch, isFetching } = useGetExchangeRateByIdQuery(id, {
skip: !id,
});
@@ -95,17 +97,23 @@ const EditExchangeRate = ({
const [rate, setRate] = useState("");
const [alert, setAlert] = useState(false);
+ console.log(rate);
+
+
useEffect(() => {
+ if (id) {refetch()}
if (foundObject) {
- setRate(foundObject.rate);
+ const numericRate = parseFloat(foundObject.rate) || 0; // Convert to number or default to 0 if invalid
+ setRate(numericRate.toFixed(8)); // Set rate with exactly 8 decimal places
}
}, [foundObject, isOpen]);
+
- useEffect(()=>{
- if (id) {
- refetch()
- }
- },[isOpen])
+ // useEffect(()=>{
+ // if (id) {
+ // refetch()
+ // }
+ // },[isOpen])
const validateRate = async () => {
try {
@@ -178,7 +186,7 @@ const EditExchangeRate = ({
Edit rate
- {isLoading ? (
+ {isFetching ? (
) : (
<>
@@ -228,8 +236,11 @@ const EditExchangeRate = ({
size={"sm"}
value={rate}
onChange={(e) => {
- return setRate(e.target.value);
- // validateRate()
+ const value = e.target.value;
+ // Match numbers with at most 8 decimal places
+ if (/^\d*\.?\d{0,8}$/.test(value)) {
+ setRate(value);
+ }
}}
/>
{rateError && (