diff --git a/src/components/FamilyAcc/FamilyManageTabs.jsx b/src/components/FamilyAcc/FamilyManageTabs.jsx index e9ad72d..a3a3033 100644 --- a/src/components/FamilyAcc/FamilyManageTabs.jsx +++ b/src/components/FamilyAcc/FamilyManageTabs.jsx @@ -187,6 +187,7 @@ export default function FamilyManageTabs({ familyData={details.familyWaitList.data} accountDetails={accountDetails} loader={details.familyWaitList.loading} + setUpdatePage={setUpdatePage} /> ), Pending: ( diff --git a/src/components/FamilyAcc/FamilyPopout/AssignTaskPopout.jsx b/src/components/FamilyAcc/FamilyPopout/AssignTaskPopout.jsx index b4c2e23..33c766c 100644 --- a/src/components/FamilyAcc/FamilyPopout/AssignTaskPopout.jsx +++ b/src/components/FamilyAcc/FamilyPopout/AssignTaskPopout.jsx @@ -1,4 +1,4 @@ -import React, { useState } from "react"; +import React, { useEffect, useState } from "react"; import { useDispatch } from "react-redux"; import { useLocation } from "react-router-dom"; import usersService from "../../../services/UsersService"; @@ -24,12 +24,13 @@ const AssignTaskPopout = ({ const apiCall = new usersService(); let { pathname, state } = useLocation(); - const [selectedFamilyUid, setSelectedFamilyUid] = useState(null); + const [selectedFamilyUid, setSelectedFamilyUid] = useState(''); const handleFamChange = (event) => { setSelectedFamilyUid(event.target.value); }; + const dispatch = useDispatch(); const getFamilySession = JSON.parse(sessionStorage.getItem("family_list")); @@ -73,6 +74,14 @@ const AssignTaskPopout = ({ const assignFamilyTask = () => { setRequestStatus({ loading: true, status: false, message: "" }); + + if(!selectedFamilyUid){ // If no family found, throw error + setRequestStatus({ loading: false, status: false, message: "Please Select Family Member" }); + return setTimeout(() => { + setRequestStatus({ loading: false, status: false, message: "" }); + }, 3000); + } + let reqData = {}; if (taskType == "select") { // RUNS HERE IF TASK TYPE IS SELECT @@ -147,48 +156,42 @@ const AssignTaskPopout = ({ timeline_days, title, assign_mode: 110055, - family_uid: details?.family_uid || familyDetailsData?.uid, + family_uid: selectedFamilyUid + ? selectedFamilyUid + : familyDetailsData?.uid || details?.family_uid, }; } apiCall .assignFamilyTask(reqData) .then((res) => { - console.log("Assign task 1", res); if (res.status != 200 || res.data.internal_return < 0) { - console.log("Assign task 2"); setRequestStatus({ loading: false, status: false, message: "failed to assign task", }); - console.log("Assign task 3"); return setTimeout(() => { setRequestStatus({ loading: false, status: false, message: "" }); }, 5000); } if (res.status === 200) { - console.log("Assign task 4"); setRequestStatus({ loading: false, status: true, message: "action successful", }); - console.log("Assign task 5"); - // setUpdatePage(prev => !prev); // Updates family task page by calling the useeffect hook - console.log("Assign task 6"); + setUpdatePage(prev => !prev); // Updates family task page by calling the useeffect hook dispatch(tableReload({ type: "WALLETTABLE" })); // RELOADS USER WALLET - console.log("Assign task 7"); setTimeout(() => { setRequestStatus({ loading: false, status: false, message: "" }); action(); // FUNCTION THAT CLOSES THE MODAL BOX }, 5000); - console.log("Assign task 8"); } }) .catch((err) => { @@ -198,13 +201,22 @@ const AssignTaskPopout = ({ message: "An Error occured, try again", }); - console.log("This is a test error " + err); setTimeout(() => { setRequestStatus({ loading: false, status: false, message: "" }); }, 5000); }); }; + useEffect(()=>{ // effect to update family UID when components mounts + if(familyDetailsData?.uid){ + setSelectedFamilyUid(familyDetailsData?.uid) + }else if(details?.family_uid){ + setSelectedFamilyUid(details?.family_uid) + }else{ + setSelectedFamilyUid('') + } + },[]) + return ( <> @@ -226,7 +238,7 @@ const AssignTaskPopout = ({ onChange={handleFamChange} value={selectedFamilyUid} > - {familyList} @@ -358,7 +370,7 @@ const AssignTaskPopout = ({
-
-
- -
+ + {/* Dummy, no value found for created! thus commented*/} + {/*
-
+
*/}
-