From 2164b57b59f6af968842a3f4e7b3fd634e8e7a48 Mon Sep 17 00:00:00 2001 From: AmirGoodarzi Date: Fri, 9 May 2025 13:46:14 +0330 Subject: [PATCH] Fix end user refetch survey form after completing it --- package.json | 2 +- src/pages/survey-form/response.tsx | 1 - src/services/SurveyForm.tsx | 10 +++++++++- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index ea098ab..6bacc49 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "enduser.salona", "private": true, - "version": "0.9.5", + "version": "0.9.6", "type": "module", "scripts": { "dev": "vite", diff --git a/src/pages/survey-form/response.tsx b/src/pages/survey-form/response.tsx index bd36b24..67f8ec1 100644 --- a/src/pages/survey-form/response.tsx +++ b/src/pages/survey-form/response.tsx @@ -123,7 +123,6 @@ const ResponseToSurveyForm = () => { { onSuccess: (response) => { if (response.status >= 200 && response.status < 300) { - refetch(); setIsFormCompleted(true); } }, diff --git a/src/services/SurveyForm.tsx b/src/services/SurveyForm.tsx index dc02a9b..70cd260 100644 --- a/src/services/SurveyForm.tsx +++ b/src/services/SurveyForm.tsx @@ -1,5 +1,5 @@ import { appointmentClient, client } from '@/utils/axios-interceptor'; -import { useMutation, useQuery } from '@tanstack/react-query'; +import { useMutation, useQuery, useQueryClient } from '@tanstack/react-query'; import { queryKeys } from '@/utils/queryKeys'; import { useSearchParams } from 'react-router-dom'; import { ISurvey, ISurveyAnswers } from '@/utils/types'; @@ -86,6 +86,7 @@ export const useGetSurveyChoicesById = (surveyFormQuestionId?: number) => { }); }; export const useCompleteSurveyForm = () => { + const queryClient = useQueryClient(); return useMutation({ mutationFn: async ({ formId, @@ -95,5 +96,12 @@ export const useCompleteSurveyForm = () => { answers: ISurveyAnswers; }) => await appointmentClient.post(`/complete_survey_form/${formId}`, answers), + onSuccess: (response) => { + if (response.status >= 200 && response.status < 300) { + queryClient.invalidateQueries({ + queryKey: [queryKeys.SURVEYFROMS], + }); + } + }, }); };