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 be71997aa43..05f50aaad5f 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"; @@ -28,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; @@ -92,10 +93,22 @@ const DischargeModal = ({ setFacility(referred_to); }, [referred_to]); - const initialDiagnoses = useTanStackQueryInstead(routes.getConsultation, { - pathParams: { id: consultationData.id ?? "" }, - prefetch: !!consultationData.id, - }).data?.diagnoses; + 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, + }); + + useEffect(() => { + if (error) { + Notification.Error({ msg: t("ERROR_FETCHING_CONSULTATION") }); + } + }, [error]); + + const initialDiagnoses = data?.diagnoses ?? []; const discharge_reason = new_discharge_reason ?? preDischargeForm.new_discharge_reason; @@ -177,9 +190,8 @@ const DischargeModal = ({ ? "death_datetime" : "discharge_date" ]; - if (initialDiagnoses == null) { - return ; - } + + if (isLoading) return ; return ( <>