BUG FIXED - Assign Job with less than amount #398

Merged
ameye merged 1 commits from my-uploads-page into master 2023-08-22 10:58:13 +00:00
+37 -33
View File
@@ -90,14 +90,15 @@ function AddJob({ popUpHandler, categories }) {
});
};
const getWalletDetail = (currency) => {
let { result_list } = walletDetails;
return result_list?.filter((item) => item.country === currency);
const getWalletDetail = (country) => {
const walletChecker = walletDetails.result_list.find(
(item) => item.country === country
);
return walletChecker ? walletChecker.amount : 0;
};
// FUNCTION TO HANDLE ADD JOB FORM
const handleAddJob = (values, helpers) => {
let reqData = {
const handleAddJob = async (values, helpers) => {
const reqData = {
country: values?.country,
price: Number(values.price) * 100,
title: values?.title,
@@ -107,30 +108,34 @@ function AddJob({ popUpHandler, categories }) {
category: values.category?.join("@"),
};
let walletChecker = getWalletDetail(reqData.country);
if (reqData.price > walletChecker[0]?.amount) {
const walletAmount = getWalletDetail(reqData.country);
if (reqData.price > walletAmount) {
setRequestStatus({
loading: false,
status: false,
message: "Insufficient Balance",
});
setTimeout(() => {
setRequestStatus({ loading: false, status: false, message: "" });
}, 1500);
return;
}
setRequestStatus({ loading: true, status: false, message: "" });
ApiCall.jobManagerCreateJob(reqData)
.then((res) => {
if (res.data.internal_return < 1) {
setRequestStatus({
loading: false,
status: false,
message: "Could not complete your request at the moment",
});
setTimeout(() => {
popUpHandler();
}, 1500);
return;
}
try {
const res = await ApiCall.jobManagerCreateJob(reqData);
if (res.data.internal_return < 1) {
setRequestStatus({
loading: false,
status: false,
message: "Could not complete your request at the moment",
});
setTimeout(() => {
popUpHandler();
}, 1500);
} else {
setRequestStatus({
loading: false,
status: true,
@@ -140,19 +145,18 @@ function AddJob({ popUpHandler, categories }) {
dispatch(tableReload({ type: "JOBTABLE" }));
popUpHandler();
}, 1000);
})
.catch((err) => {
setRequestStatus({
loading: false,
status: false,
message: "Opps! something went wrong. Try Again",
});
})
.finally(() => {
setTimeout(() => {
setRequestStatus({ loading: false, status: false, message: "" });
}, 5000);
}
} catch (err) {
setRequestStatus({
loading: false,
status: false,
message: "Oops! Something went wrong. Try Again",
});
} finally {
setTimeout(() => {
setRequestStatus({ loading: false, status: false, message: "" });
}, 5000);
}
};
useEffect(() => {