From 034099c23ad4f0a07830cbba891d9b526b8e34bf Mon Sep 17 00:00:00 2001 From: pramod mahajan Date: Thu, 24 Jul 2025 14:20:38 +0530 Subject: [PATCH] set up action properly --- src/components/Expenses/ViewExpense.jsx | 15 ++++++--------- src/hooks/useExpense.js | 20 +++++++++++++++----- 2 files changed, 21 insertions(+), 14 deletions(-) diff --git a/src/components/Expenses/ViewExpense.jsx b/src/components/Expenses/ViewExpense.jsx index 79088512..28142cb4 100644 --- a/src/components/Expenses/ViewExpense.jsx +++ b/src/components/Expenses/ViewExpense.jsx @@ -16,6 +16,7 @@ const ViewExpense = ({ ExpenseId }) => { register, handleSubmit, setValue, + reset, formState: { errors }, } = useForm({ resolver: zodResolver(ActionSchema), @@ -25,11 +26,11 @@ const ViewExpense = ({ ExpenseId }) => { }, }); - const { mutate: MakeAction } = useActionOnExpense(); + const { mutate: MakeAction } = useActionOnExpense(()=>reset()); const onSubmit = (formData) => { const Payload = { - expenseId: ExpenseId?.id, + expenseId: ExpenseId, statusId: formData.selectedStatus, comment: formData.comment, }; @@ -226,7 +227,7 @@ const ViewExpense = ({ ExpenseId }) => { -
+
{data.nextStatus.map((status, index) => ( diff --git a/src/hooks/useExpense.js b/src/hooks/useExpense.js index abf1dce8..c2928acc 100644 --- a/src/hooks/useExpense.js +++ b/src/hooks/useExpense.js @@ -101,9 +101,9 @@ export const useUpdateExpense = (onSuccessCallBack) => { // }; // } // ); - queryClient.removeQueries({queryKey:['Expense', variables.id]}); - queryClient.invalidateQueries({queryKey:['Expenses']}) - showToast('Expense updated Successfully', 'success'); + queryClient.removeQueries({ queryKey: ["Expense", variables.id] }); + queryClient.invalidateQueries({ queryKey: ["Expenses"] }); + showToast("Expense updated Successfully", "success"); if (onSuccessCallBack) onSuccessCallBack(); }, @@ -119,11 +119,11 @@ export const useActionOnExpense = (onSuccessCallBack) => { return response.data; }, onSuccess: (updatedExpense, variables) => { - showToast("Expense updated successfully", "success"); + showToast("Request processed successfully.", "success"); queryClient.setQueriesData( { - queryKey: ["expenses"], + queryKey: ["Expenses"], exact: false, }, (oldData) => { @@ -142,6 +142,16 @@ export const useActionOnExpense = (onSuccessCallBack) => { }; } ); + queryClient.setQueriesData( + { queryKey: ["Expense", updatedExpense.id] }, + (oldData) => { + return { + ...oldData, + nextStatus: updatedExpense.nextStatus, + status: updatedExpense.status, + }; + } + ); if (onSuccessCallBack) onSuccessCallBack(); },