From 8139fbb090d70bd6ebefddbfd578742ee744c8b6 Mon Sep 17 00:00:00 2001 From: Ebube Date: Tue, 23 Jan 2024 09:33:56 +0100 Subject: [PATCH] added third --- src/components/FamilyAcc/FamilyManageTabs.jsx | 5 +- .../FamilySettings/Tabs/FamilyBanner.jsx | 3 +- .../FamilyAcc/Tabs/FamilyProfile.jsx | 1 - .../Tabs/wallet/FamilyAddFundPopout.jsx | 459 +++++++++------- src/components/FamilyAcc/index.jsx | 8 +- src/components/JobGroups/AddGroup.jsx | 142 +++-- src/components/JobGroups/MemberList.jsx | 519 ++++++++++-------- .../MyPendingJobs/DeleteTaskModal.jsx | 70 ++- .../MyPendingJobs/SendReminderModal.jsx | 103 ++-- .../Settings/Tabs/PersonalInfoTab.jsx | 3 +- src/components/UploadProduct/index.jsx | 3 +- src/components/jobPopout/EditJobPopout.jsx | 3 +- src/components/jobPopout/JobListPopout.jsx | 12 +- src/services/SiteService.js | 3 +- src/services/UsersService.js | 6 +- 15 files changed, 743 insertions(+), 597 deletions(-) diff --git a/src/components/FamilyAcc/FamilyManageTabs.jsx b/src/components/FamilyAcc/FamilyManageTabs.jsx index ff745c5..e9ad72d 100644 --- a/src/components/FamilyAcc/FamilyManageTabs.jsx +++ b/src/components/FamilyAcc/FamilyManageTabs.jsx @@ -13,6 +13,7 @@ import usersService from "../../services/UsersService"; import LoadingSpinner from "../Spinners/LoadingSpinner"; import AssignTaskPopout from "./FamilyPopout/AssignTaskPopout"; import FamilyWallet from "./Tabs/FamilyWallet"; +import { apiConst } from "../../lib/apiConst"; // Lazy Imports for components const FamilyWaitlist = lazy(() => import("./Tabs/FamilyWaitlist")); @@ -127,7 +128,7 @@ export default function FamilyManageTabs({ file_type: uploadedFile?.type?.split("/")[0]?.toLowerCase(), file_data: base64Img, msg_type: 'FILE', - action: 11305 + action: apiConst.WRENCHBOARD_PICTURE_FAMMEMBER } setUploadStatus({loading: true, status: false, message:'Loading...'}) apiCall.sendFiles(reqData).then(res=>{ @@ -285,7 +286,7 @@ export default function FamilyManageTabs({ limit: 30, offset: 0, job_type: "FAMILY", - action: 13005, + action: apiConst.WRENCHBOARD_PICTURE_FAMMEMBER, }; if (checkFamilyTask) { diff --git a/src/components/FamilyAcc/FamilySettings/Tabs/FamilyBanner.jsx b/src/components/FamilyAcc/FamilySettings/Tabs/FamilyBanner.jsx index f4476ae..e23de15 100644 --- a/src/components/FamilyAcc/FamilySettings/Tabs/FamilyBanner.jsx +++ b/src/components/FamilyAcc/FamilySettings/Tabs/FamilyBanner.jsx @@ -1,5 +1,6 @@ import React, { useMemo, useRef, useState } from "react"; import usersService from "../../../../services/UsersService"; +import { apiConst } from "../../../../lib/apiConst"; const FamilyBanner = ({ imageServer }) => { const uploadedImage = `${imageServer}${localStorage.getItem( @@ -65,7 +66,7 @@ const FamilyBanner = ({ imageServer }) => { file_type: uploadedFile?.type?.split("/")[0]?.toLowerCase(), file_data: base64Img, msg_type: "FILE", - action: 11303, + action: apiConst.WRENCHBOARD_PICTURE_JOB, }; setUploadStatus({ loading: true, diff --git a/src/components/FamilyAcc/Tabs/FamilyProfile.jsx b/src/components/FamilyAcc/Tabs/FamilyProfile.jsx index 64aa27e..90b9a5e 100644 --- a/src/components/FamilyAcc/Tabs/FamilyProfile.jsx +++ b/src/components/FamilyAcc/Tabs/FamilyProfile.jsx @@ -55,7 +55,6 @@ export default function FamilyProfile({ familyData, className }) { year: familyData?.year, month: familyData?.month, enable_traking: familyData?.enable_traking, - action: 22020, }; // const handleChange = ({ target: { name, value } }) => { diff --git a/src/components/FamilyAcc/Tabs/wallet/FamilyAddFundPopout.jsx b/src/components/FamilyAcc/Tabs/wallet/FamilyAddFundPopout.jsx index 5e0bbac..5793e06 100644 --- a/src/components/FamilyAcc/Tabs/wallet/FamilyAddFundPopout.jsx +++ b/src/components/FamilyAcc/Tabs/wallet/FamilyAddFundPopout.jsx @@ -1,15 +1,16 @@ -import React, { useEffect, useState } from 'react' -import ModalCom from '../../../Helpers/ModalCom' -import InputCom from '../../../Helpers/Inputs/InputCom' +import React, { useEffect, useState } from "react"; +import ModalCom from "../../../Helpers/ModalCom"; +import InputCom from "../../../Helpers/Inputs/InputCom"; import { Form, Formik } from "formik"; import * as Yup from "yup"; -import {AmountTo2DP} from '../../../Helpers/PriceFormatter' -import usersService from '../../../../services/UsersService'; -import LoadingSpinner from '../../../Spinners/LoadingSpinner'; -import { PriceFormatter } from '../../../Helpers/PriceFormatter'; -import { tableReload } from '../../../../store/TableReloads'; -import { useDispatch } from 'react-redux'; +import { AmountTo2DP } from "../../../Helpers/PriceFormatter"; +import usersService from "../../../../services/UsersService"; +import LoadingSpinner from "../../../Spinners/LoadingSpinner"; +import { PriceFormatter } from "../../../Helpers/PriceFormatter"; +import { tableReload } from "../../../../store/TableReloads"; +import { useDispatch } from "react-redux"; +import { apiConst } from "../../../../lib/apiConst"; const validationSchema = Yup.object().shape({ // amount: Yup.string() @@ -22,104 +23,149 @@ const validationSchema = Yup.object().shape({ // return true; // }) // .required("Amount is required"), - amount: Yup.number('Please enter a number') - .min(1, "Price must be greater than 0") - .required("Amount is required"), - comment: Yup.string() - .required("Comment is required"), + amount: Yup.number("Please enter a number") + .min(1, "Price must be greater than 0") + .required("Amount is required"), + comment: Yup.string().required("Comment is required"), }); -function FamilyAddFundPopout({action, situation, wallet, familyData}) { +function FamilyAddFundPopout({ action, situation, wallet, familyData }) { + const dispatch = useDispatch(); - const dispatch = useDispatch() + const apiUrl = new usersService(); - const apiUrl = new usersService() - - const [startTransfer, setStartTransfer] = useState({loading:true, data: {}}) - - const [requestStatus, setRequestStatus] = useState({loading:false, status:false, message:''}) + const [startTransfer, setStartTransfer] = useState({ + loading: true, + data: {}, + }); + const [requestStatus, setRequestStatus] = useState({ + loading: false, + status: false, + message: "", + }); // initial values for formik let initialValues = { - amount: '', - from : AmountTo2DP(startTransfer?.data?.origing_current_balance*0.01), + amount: "", + from: AmountTo2DP(startTransfer?.data?.origing_current_balance * 0.01), to: `${familyData.firstname} ${familyData.lastname}`, - comment: '' + comment: "", }; // FUNCTION TO PERFORM FAMILY TRANSFER const handleAddFund = (values) => { - setRequestStatus({loading:true, status:false, message:''}) + setRequestStatus({ loading: true, status: false, message: "" }); - let senderBal = startTransfer?.data?.origing_current_balance || '' // SENDER'S ACCOUNT BALANCE - let senderLimit = startTransfer?.data?.origing_transfer_limit || '' // SENDER'S TRANSFER LIMIT + let senderBal = startTransfer?.data?.origing_current_balance || ""; // SENDER'S ACCOUNT BALANCE + let senderLimit = startTransfer?.data?.origing_transfer_limit || ""; // SENDER'S TRANSFER LIMIT - let reqData = { // API REQUEST DATA - family_uid : familyData.uid, - wallet_uid : wallet.wallet_uid, - origing_wallet_uid : startTransfer?.data?.origing_wallet_uid, - currency : startTransfer?.data?.currency, - amount : values.amount*100, - description : values.comment, - family_transfer_mode : 100, - action : 22014 + let reqData = { + // API REQUEST DATA + family_uid: familyData.uid, + wallet_uid: wallet.wallet_uid, + origing_wallet_uid: startTransfer?.data?.origing_wallet_uid, + currency: startTransfer?.data?.currency, + amount: values.amount * 100, + description: values.comment, + family_transfer_mode: 100, + action: apiConst.WRENCHBOARD_FAMILY_TRANSFER, + }; + + if (!senderBal || !senderLimit) { + // RETURNS UNAUTHORIZED, IF SENDER BAL OR LIMIT IS NOT AVAILABLE + setRequestStatus({ + loading: false, + status: false, + message: "Unauthorized, try again later", + }); + return setTimeout(() => { + setRequestStatus({ loading: false, status: false, message: "" }); + }, 5000); } - if(!senderBal || !senderLimit){ // RETURNS UNAUTHORIZED, IF SENDER BAL OR LIMIT IS NOT AVAILABLE - setRequestStatus({loading:false, status:false, message:'Unauthorized, try again later'}) - return setTimeout(()=>{ - setRequestStatus({loading:false, status:false, message:''}) - }, 5000) + if (values.amount > senderBal * 0.01) { + // CHECKS TO SEE IF SENDER IS SENDING MORE THAN HIS BALANCE + setRequestStatus({ + loading: false, + status: false, + message: "You cannot send more than your balance", + }); + return setTimeout(() => { + setRequestStatus({ loading: false, status: false, message: "" }); + }, 5000); } - if(values.amount > senderBal*0.01){ // CHECKS TO SEE IF SENDER IS SENDING MORE THAN HIS BALANCE - setRequestStatus({loading:false, status:false, message:'You cannot send more than your balance'}) - return setTimeout(()=>{ - setRequestStatus({loading:false, status:false, message:''}) - }, 5000) + if (values.amount > senderLimit * 0.01) { + // CHECKS TO SEE IF SENDER IS SENDING MORE THAN HIS LIMIT + setRequestStatus({ + loading: false, + status: false, + message: `You cannot exceed ${senderLimit * 0.01} ${ + startTransfer?.data?.origing_currency.charAt(0).toUpperCase() + + startTransfer?.data?.origing_currency.slice(1).toLowerCase() + }`, + }); + return setTimeout(() => { + setRequestStatus({ loading: false, status: false, message: "" }); + }, 5000); } - if(values.amount > senderLimit*0.01){ // CHECKS TO SEE IF SENDER IS SENDING MORE THAN HIS LIMIT - setRequestStatus({loading:false, status:false, message:`You cannot exceed ${senderLimit*0.01} ${startTransfer?.data?.origing_currency.charAt(0).toUpperCase() + startTransfer?.data?.origing_currency.slice(1).toLowerCase()}`}) - return setTimeout(()=>{ - setRequestStatus({loading:false, status:false, message:''}) - }, 5000) - } - - apiUrl.familyTransfer(reqData).then(({data}) => { - if(data.internal_return < 0 || data.credit_confirm == '' || data.pay_confirm == ''){ - setRequestStatus({loading:false, status:false, message:'Transfer Failed'}) - return setTimeout(()=>{ - setRequestStatus({loading:false, status:false, message:''}) - }, 5000) - } - setRequestStatus({loading:false, status:true, message:'Transfer Successful'}) - setTimeout(()=>{ - setRequestStatus({loading:false, status:false, message:''}) - dispatch(tableReload({ type: "WALLETTABLE" })); // UPDATES PARENT WALLET ACCOUNT - action() // TO CLOSE THE MODAL - }, 5000) - }).catch(error => { - setRequestStatus({loading:false, status:false, message:'Network Error, try again'}) - setTimeout(()=>{ - setRequestStatus({loading:false, status:false, message:''}) - }, 5000) - }) - } + apiUrl + .familyTransfer(reqData) + .then(({ data }) => { + if ( + data.internal_return < 0 || + data.credit_confirm == "" || + data.pay_confirm == "" + ) { + setRequestStatus({ + loading: false, + status: false, + message: "Transfer Failed", + }); + return setTimeout(() => { + setRequestStatus({ loading: false, status: false, message: "" }); + }, 5000); + } + setRequestStatus({ + loading: false, + status: true, + message: "Transfer Successful", + }); + setTimeout(() => { + setRequestStatus({ loading: false, status: false, message: "" }); + dispatch(tableReload({ type: "WALLETTABLE" })); // UPDATES PARENT WALLET ACCOUNT + action(); // TO CLOSE THE MODAL + }, 5000); + }) + .catch((error) => { + setRequestStatus({ + loading: false, + status: false, + message: "Network Error, try again", + }); + setTimeout(() => { + setRequestStatus({ loading: false, status: false, message: "" }); + }, 5000); + }); + }; // LOAD FAMILY START TRANSFER - useEffect(()=>{ + useEffect(() => { let reqData = { family_uid: familyData.uid, wallet_uid: wallet.wallet_uid, - action: 22013 - } - apiUrl.familyTransferStart(reqData).then(response => { - setStartTransfer({loading:false, data:response?.data }) - }).catch(err => { - setStartTransfer({loading:false, data: {}}) - }) - },[]) + action: apiConst.WRENCHBOARD_FAMILY_TRANSFERSTART, + }; + apiUrl + .familyTransferStart(reqData) + .then((response) => { + setStartTransfer({ loading: false, data: response?.data }); + }) + .catch((err) => { + setStartTransfer({ loading: false, data: {} }); + }); + }, []); return ( @@ -155,116 +201,125 @@ function FamilyAddFundPopout({action, situation, wallet, familyData}) {
- {startTransfer.loading && } - - { !startTransfer.loading && - - {(props) => ( -
-
-
- {/* AMOUNT */} -
- -
+ {startTransfer.loading && ( + + )} - {/* FROM */} -
- -
- - {/* TO */} -
- -
- - {/* COMMENT */} -
-
- -