From cbbcb5546c35cbe53742eaece9c49ebb193afd80 Mon Sep 17 00:00:00 2001 From: AdityaJ2305 Date: Tue, 24 Dec 2024 23:40:07 +0530 Subject: [PATCH 1/9] Updated to useQuery --- src/components/Facility/DischargeModal.tsx | 35 +++++++++++++++++----- 1 file changed, 28 insertions(+), 7 deletions(-) diff --git a/src/components/Facility/DischargeModal.tsx b/src/components/Facility/DischargeModal.tsx index be71997aa43..0213f3cd307 100644 --- a/src/components/Facility/DischargeModal.tsx +++ b/src/components/Facility/DischargeModal.tsx @@ -1,3 +1,4 @@ +import { useQuery } from "@tanstack/react-query"; import { useEffect, useState } from "react"; import { useTranslation } from "react-i18next"; @@ -20,6 +21,7 @@ import TextAreaFormField from "@/components/Form/FormFields/TextAreaFormField"; import TextFormField from "@/components/Form/FormFields/TextFormField"; import PrescriptionBuilder from "@/components/Medicine/PrescriptionBuilder"; +import useAppHistory from "@/hooks/useAppHistory"; import useConfirmedAction from "@/hooks/useConfirmedAction"; import { DISCHARGE_REASONS } from "@/common/constants"; @@ -28,8 +30,8 @@ import { PLUGIN_Component } from "@/PluginEngine"; import * as Notification from "@/Utils/Notifications"; import dayjs from "@/Utils/dayjs"; import routes from "@/Utils/request/api"; +import query from "@/Utils/request/query"; import request from "@/Utils/request/request"; -import useTanStackQueryInstead from "@/Utils/request/useQuery"; interface PreDischargeFormInterface { new_discharge_reason: number | null; @@ -92,10 +94,29 @@ const DischargeModal = ({ setFacility(referred_to); }, [referred_to]); - const initialDiagnoses = useTanStackQueryInstead(routes.getConsultation, { - pathParams: { id: consultationData.id ?? "" }, - prefetch: !!consultationData.id, - }).data?.diagnoses; + const { goBack } = useAppHistory(); + + const { + isLoading: consultationLoading, + data: consultationDataFetched, + isError: errorOnConsultationData, + } = useQuery({ + queryKey: [routes.getConsultation.path, consultationData.id], + queryFn: () => + query(routes.getConsultation, { + pathParams: { id: consultationData.id }, + }), + enabled: consultationData.id !== undefined, + }); + + if (!errorOnConsultationData) { + console.log(consultationDataFetched); + } + + if (errorOnConsultationData) { + Notification.Error({ msg: "Error loading consultation data" }); + goBack(); + } const discharge_reason = new_discharge_reason ?? preDischargeForm.new_discharge_reason; @@ -177,7 +198,7 @@ const DischargeModal = ({ ? "death_datetime" : "discharge_date" ]; - if (initialDiagnoses == null) { + if (consultationLoading) { return ; } @@ -309,7 +330,7 @@ const DischargeModal = ({ {t("diagnosis_at_discharge")} )} From 7cd082dac5382e280097d60caf642de5eec53ee8 Mon Sep 17 00:00:00 2001 From: AdityaJ2305 Date: Wed, 25 Dec 2024 00:46:00 +0530 Subject: [PATCH 2/9] usequery failure trigger message update --- src/components/Facility/DischargeModal.tsx | 32 ++++++++++++---------- 1 file changed, 18 insertions(+), 14 deletions(-) diff --git a/src/components/Facility/DischargeModal.tsx b/src/components/Facility/DischargeModal.tsx index 0213f3cd307..10aa9228f8c 100644 --- a/src/components/Facility/DischargeModal.tsx +++ b/src/components/Facility/DischargeModal.tsx @@ -97,25 +97,28 @@ const DischargeModal = ({ const { goBack } = useAppHistory(); const { - isLoading: consultationLoading, + isLoading: consultationDataLoading, data: consultationDataFetched, - isError: errorOnConsultationData, + error: errorOnConsultationData, + failureReason: failureReasonOnConsultationData, } = useQuery({ queryKey: [routes.getConsultation.path, consultationData.id], - queryFn: () => - query(routes.getConsultation, { - pathParams: { id: consultationData.id }, - }), + queryFn: query(routes.getConsultation, { + pathParams: { id: consultationData.id }, + }), enabled: consultationData.id !== undefined, }); - if (!errorOnConsultationData) { - console.log(consultationDataFetched); + if (errorOnConsultationData || failureReasonOnConsultationData) { + Notification.Error({ msg: "Error on fetching consultation data" }); + goBack(); } - if (errorOnConsultationData) { - Notification.Error({ msg: "Error loading consultation data" }); - goBack(); + if (consultationDataLoading) { + return ; + } + if (consultationDataFetched == undefined) { + return; } const discharge_reason = @@ -198,8 +201,9 @@ const DischargeModal = ({ ? "death_datetime" : "discharge_date" ]; - if (consultationLoading) { - return ; + + if (consultationDataFetched.diagnoses === undefined) { + return; } return ( @@ -330,7 +334,7 @@ const DischargeModal = ({ {t("diagnosis_at_discharge")} )} From ae2f5aab82250ab3af721519114f5a762607726d Mon Sep 17 00:00:00 2001 From: AdityaJ2305 Date: Wed, 25 Dec 2024 01:33:36 +0530 Subject: [PATCH 3/9] update to previous query --- src/components/Facility/DischargeModal.tsx | 44 ++++++++-------------- 1 file changed, 16 insertions(+), 28 deletions(-) diff --git a/src/components/Facility/DischargeModal.tsx b/src/components/Facility/DischargeModal.tsx index 10aa9228f8c..1183b2d1909 100644 --- a/src/components/Facility/DischargeModal.tsx +++ b/src/components/Facility/DischargeModal.tsx @@ -1,4 +1,3 @@ -import { useQuery } from "@tanstack/react-query"; import { useEffect, useState } from "react"; import { useTranslation } from "react-i18next"; @@ -30,8 +29,8 @@ import { PLUGIN_Component } from "@/PluginEngine"; import * as Notification from "@/Utils/Notifications"; import dayjs from "@/Utils/dayjs"; import routes from "@/Utils/request/api"; -import query from "@/Utils/request/query"; import request from "@/Utils/request/request"; +import useTanStackQueryInstead from "@/Utils/request/useQuery"; interface PreDischargeFormInterface { new_discharge_reason: number | null; @@ -96,30 +95,20 @@ const DischargeModal = ({ const { goBack } = useAppHistory(); - const { - isLoading: consultationDataLoading, - data: consultationDataFetched, - error: errorOnConsultationData, - failureReason: failureReasonOnConsultationData, - } = useQuery({ - queryKey: [routes.getConsultation.path, consultationData.id], - queryFn: query(routes.getConsultation, { - pathParams: { id: consultationData.id }, - }), - enabled: consultationData.id !== undefined, + const { data } = useTanStackQueryInstead(routes.getConsultation, { + pathParams: { id: consultationData.id ?? "" }, + prefetch: !!consultationData.id, + silent: true, + onResponse: ({ error }) => { + if (error) { + goBack(); + Notification.Error({ msg: "Error in fetching consultation data" }); + return; + } + }, }); - if (errorOnConsultationData || failureReasonOnConsultationData) { - Notification.Error({ msg: "Error on fetching consultation data" }); - goBack(); - } - - if (consultationDataLoading) { - return ; - } - if (consultationDataFetched == undefined) { - return; - } + const initialDiagnoses = data?.diagnoses ?? []; const discharge_reason = new_discharge_reason ?? preDischargeForm.new_discharge_reason; @@ -201,9 +190,8 @@ const DischargeModal = ({ ? "death_datetime" : "discharge_date" ]; - - if (consultationDataFetched.diagnoses === undefined) { - return; + if (initialDiagnoses == null) { + return ; } return ( @@ -334,7 +322,7 @@ const DischargeModal = ({ {t("diagnosis_at_discharge")} )} From f70ddd2f6abfa1d41f3707c3c42a2b1b4dcc691d Mon Sep 17 00:00:00 2001 From: AdityaJ2305 Date: Thu, 26 Dec 2024 19:24:51 +0530 Subject: [PATCH 4/9] moved to usequery --- public/locale/en.json | 1 + src/components/Facility/DischargeModal.tsx | 34 ++++++++++------------ 2 files changed, 17 insertions(+), 18 deletions(-) diff --git a/public/locale/en.json b/public/locale/en.json index 758ef1965db..83e7d4f8357 100644 --- a/public/locale/en.json +++ b/public/locale/en.json @@ -48,6 +48,7 @@ "DOMESTIC_HEALTHCARE_SUPPORT__FAMILY_MEMBER": "Family member", "DOMESTIC_HEALTHCARE_SUPPORT__NO_SUPPORT": "No support", "DOMESTIC_HEALTHCARE_SUPPORT__PAID_CAREGIVER": "Paid caregiver", + "ERROR_FETCHING_CONSULTATION": "Error while retrieving consultation data", "GENDER__1": "Male", "GENDER__2": "Female", "GENDER__3": "Non-binary", diff --git a/src/components/Facility/DischargeModal.tsx b/src/components/Facility/DischargeModal.tsx index 1183b2d1909..f614765ca53 100644 --- a/src/components/Facility/DischargeModal.tsx +++ b/src/components/Facility/DischargeModal.tsx @@ -1,3 +1,4 @@ +import { useQuery } from "@tanstack/react-query"; import { useEffect, useState } from "react"; import { useTranslation } from "react-i18next"; @@ -20,7 +21,6 @@ import TextAreaFormField from "@/components/Form/FormFields/TextAreaFormField"; import TextFormField from "@/components/Form/FormFields/TextFormField"; import PrescriptionBuilder from "@/components/Medicine/PrescriptionBuilder"; -import useAppHistory from "@/hooks/useAppHistory"; import useConfirmedAction from "@/hooks/useConfirmedAction"; import { DISCHARGE_REASONS } from "@/common/constants"; @@ -29,8 +29,8 @@ import { PLUGIN_Component } from "@/PluginEngine"; import * as Notification from "@/Utils/Notifications"; import dayjs from "@/Utils/dayjs"; import routes from "@/Utils/request/api"; +import query from "@/Utils/request/query"; import request from "@/Utils/request/request"; -import useTanStackQueryInstead from "@/Utils/request/useQuery"; interface PreDischargeFormInterface { new_discharge_reason: number | null; @@ -93,21 +93,22 @@ const DischargeModal = ({ setFacility(referred_to); }, [referred_to]); - const { goBack } = useAppHistory(); - - const { data } = useTanStackQueryInstead(routes.getConsultation, { - pathParams: { id: consultationData.id ?? "" }, - prefetch: !!consultationData.id, - silent: true, - onResponse: ({ error }) => { - if (error) { - goBack(); - Notification.Error({ msg: "Error in fetching consultation data" }); - return; - } - }, + const { data, isLoading, error } = useQuery({ + queryKey: [routes.getConsultation.path, consultationData.id], + queryFn: query(routes.getConsultation, { + pathParams: { id: consultationData.id }, + silent: true, + }), + enabled: consultationData.id !== undefined, }); + if (isLoading) return ; + + if (error) { + Notification.Error({ msg: t("ERROR_FETCHING_CONSULTATION") }); + return; + } + const initialDiagnoses = data?.diagnoses ?? []; const discharge_reason = @@ -190,9 +191,6 @@ const DischargeModal = ({ ? "death_datetime" : "discharge_date" ]; - if (initialDiagnoses == null) { - return ; - } return ( <> From 6fc6cd8ce484e643d41b860654415bd92658e25d Mon Sep 17 00:00:00 2001 From: AdityaJ2305 Date: Thu, 26 Dec 2024 19:27:13 +0530 Subject: [PATCH 5/9] moved to usequery --- src/components/Facility/DischargeModal.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/src/components/Facility/DischargeModal.tsx b/src/components/Facility/DischargeModal.tsx index f614765ca53..672c37a5d5e 100644 --- a/src/components/Facility/DischargeModal.tsx +++ b/src/components/Facility/DischargeModal.tsx @@ -106,7 +106,6 @@ const DischargeModal = ({ if (error) { Notification.Error({ msg: t("ERROR_FETCHING_CONSULTATION") }); - return; } const initialDiagnoses = data?.diagnoses ?? []; From 11d012f8456da33ec5141a35851967b0de522987 Mon Sep 17 00:00:00 2001 From: AdityaJ2305 Date: Thu, 26 Dec 2024 19:31:22 +0530 Subject: [PATCH 6/9] moved to usequery --- src/components/Facility/DischargeModal.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/Facility/DischargeModal.tsx b/src/components/Facility/DischargeModal.tsx index 672c37a5d5e..eea45055219 100644 --- a/src/components/Facility/DischargeModal.tsx +++ b/src/components/Facility/DischargeModal.tsx @@ -102,8 +102,6 @@ const DischargeModal = ({ enabled: consultationData.id !== undefined, }); - if (isLoading) return ; - if (error) { Notification.Error({ msg: t("ERROR_FETCHING_CONSULTATION") }); } @@ -191,6 +189,8 @@ const DischargeModal = ({ : "discharge_date" ]; + if (isLoading) return ; + return ( <> Date: Thu, 26 Dec 2024 22:42:51 +0530 Subject: [PATCH 7/9] Empty-Commit From 780197eb2c186b9b9928baaf9e9ed171e7b292d7 Mon Sep 17 00:00:00 2001 From: AdityaJ2305 Date: Sat, 28 Dec 2024 19:51:41 +0530 Subject: [PATCH 8/9] Empty-Commit From 97816cbe98c54252efbb0bf3ce79046aa300159c Mon Sep 17 00:00:00 2001 From: AdityaJ2305 Date: Mon, 30 Dec 2024 23:15:05 +0530 Subject: [PATCH 9/9] add useeffect for error --- src/components/Facility/DischargeModal.tsx | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/components/Facility/DischargeModal.tsx b/src/components/Facility/DischargeModal.tsx index eea45055219..05f50aaad5f 100644 --- a/src/components/Facility/DischargeModal.tsx +++ b/src/components/Facility/DischargeModal.tsx @@ -102,9 +102,11 @@ const DischargeModal = ({ enabled: consultationData.id !== undefined, }); - if (error) { - Notification.Error({ msg: t("ERROR_FETCHING_CONSULTATION") }); - } + useEffect(() => { + if (error) { + Notification.Error({ msg: t("ERROR_FETCHING_CONSULTATION") }); + } + }, [error]); const initialDiagnoses = data?.diagnoses ?? [];