From 10ee3796d3cd3fdc3b4809048cd02d06ddba403a Mon Sep 17 00:00:00 2001 From: Pramod Mahajan Date: Sun, 6 Jul 2025 22:10:13 +0530 Subject: [PATCH] Optimized to avoid unnecessary API calls --- src/components/Employee/ManageEmployee.jsx | 8 +++++++- src/hooks/masterHook/useMaster.js | 12 ++++++------ src/hooks/useEmployees.js | 2 ++ 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/src/components/Employee/ManageEmployee.jsx b/src/components/Employee/ManageEmployee.jsx index 604f5654..2692769b 100644 --- a/src/components/Employee/ManageEmployee.jsx +++ b/src/components/Employee/ManageEmployee.jsx @@ -28,6 +28,7 @@ const { mutate: updateEmployee, isPending } = useUpdateEmployee(); employee, error, loading: empLoading, + refetch } = useEmployeeProfile(employeeId); useEffect(() => { @@ -129,7 +130,12 @@ const { mutate: updateEmployee, isPending } = useUpdateEmployee(); .min(1, { message: "Phone Number is required" }) .regex(mobileNumberRegex, { message: "Invalid phone number " }), jobRoleId: z.string().min(1, { message: "Role is required" }), - }); + } ); + + useEffect( () => + { + refetch() + },[]) const { register, diff --git a/src/hooks/masterHook/useMaster.js b/src/hooks/masterHook/useMaster.js index 7585d2c2..20caff62 100644 --- a/src/hooks/masterHook/useMaster.js +++ b/src/hooks/masterHook/useMaster.js @@ -403,7 +403,7 @@ export const useCreateJobRole = (onSuccessCallback) => { onSuccess: (data) => { showToast("JobRole added successfully.", "success"); - queryClient.invalidateQueries(["masterData", "Job Role"]); + queryClient.invalidateQueries({queryKey:["masterData", "Job Role"]}); if (onSuccessCallback) onSuccessCallback(data); }, @@ -427,7 +427,7 @@ export const useCreateApplicationRole = (onSuccessCallback) => }, onSuccess: ( data ) => { - queryClient.invalidateQueries( [ "masterData", "Application Role" ] ) + queryClient.invalidateQueries( {queryKey:[ "masterData", "Application Role" ]} ) showToast( "Application Role added successfully", "success" ); if(onSuccessCallback) onSuccessCallback(data) }, @@ -476,7 +476,7 @@ export const useCreateActivity = (onSuccessCallback) => }, onSuccess: ( data ) => { - queryClient.invalidateQueries( [ "masterData", "Activity" ] ) + queryClient.invalidateQueries( {queryKey:[ "masterData", "Activity" ]} ) showToast( "Activity added successfully", "success" ); if(onSuccessCallback) onSuccessCallback(data) }, @@ -526,7 +526,7 @@ export const useCreateWorkCategory = (onSuccessCallback) => }, onSuccess: ( data ) => { - queryClient.invalidateQueries( [ "masterData", "Work Category" ] ) + queryClient.invalidateQueries({queryKey: [ "masterData", "Work Category" ]} ) showToast( "Work Category added successfully", "success" ); if(onSuccessCallback) onSuccessCallback(data) }, @@ -577,7 +577,7 @@ export const useCreateContactCategory = (onSuccessCallback) => }, onSuccess: ( data ) => { - queryClient.invalidateQueries( [ "masterData", "Contact Category" ] ) + queryClient.invalidateQueries( {queryKey:[ "masterData", "Contact Category" ]} ) showToast( "Contact Category added successfully", "success" ); if(onSuccessCallback) onSuccessCallback(data) }, @@ -628,7 +628,7 @@ export const useCreateContactTag = (onSuccessCallback) => }, onSuccess: ( data ) => { - queryClient.invalidateQueries( [ "masterData", "Contact Tag" ] ) + queryClient.invalidateQueries( {queryKey:[ "masterData", "Contact Tag" ]} ) showToast( "Contact Tag added successfully", "success" ); if(onSuccessCallback) onSuccessCallback(data) }, diff --git a/src/hooks/useEmployees.js b/src/hooks/useEmployees.js index a3c6bae4..60f805c2 100644 --- a/src/hooks/useEmployees.js +++ b/src/hooks/useEmployees.js @@ -156,6 +156,7 @@ export const useEmployeeProfile = ( employeeId ) => data = null, isLoading: loading, error, + refetch } = useQuery({ queryKey: ['employeeProfile', employeeId], queryFn: async () => { @@ -170,6 +171,7 @@ export const useEmployeeProfile = ( employeeId ) => employee: data, loading, error, + refetch }; };