fix: auto-refresh patient table after eligibility checks

Remaining benefit amount didn't show until a manual page reload
because invalidateQueries was placed after an early return (chatbot
claim flow) for MH checks, and was missing entirely from the 7
other-provider eligibility buttons.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-15 13:37:56 -04:00
co-authored by Claude Sonnet 5
parent 765368216f
commit d7015270a8
@@ -647,11 +647,11 @@ export default function InsuranceStatusPage() {
variant: "default", variant: "default",
}); });
await queryClient.invalidateQueries({ queryKey: QK_PATIENTS_BASE });
const claimed = await tryClaimFromChatbot(selectedPatient?.id); const claimed = await tryClaimFromChatbot(selectedPatient?.id);
void tryAppointmentFromChatbot(); void tryAppointmentFromChatbot();
if (claimed) return; if (claimed) return;
setSelectedPatient(null); setSelectedPatient(null);
await queryClient.invalidateQueries({ queryKey: QK_PATIENTS_BASE });
processNextInQueue(); processNextInQueue();
// Open all PDFs side by side in the modal // Open all PDFs side by side in the modal
@@ -720,11 +720,11 @@ export default function InsuranceStatusPage() {
variant: "default", variant: "default",
}); });
await queryClient.invalidateQueries({ queryKey: QK_PATIENTS_BASE });
const claimed = await tryClaimFromChatbot(selectedPatient?.id); const claimed = await tryClaimFromChatbot(selectedPatient?.id);
void tryAppointmentFromChatbot(); void tryAppointmentFromChatbot();
if (claimed) return; if (claimed) return;
setSelectedPatient(null); setSelectedPatient(null);
await queryClient.invalidateQueries({ queryKey: QK_PATIENTS_BASE });
processNextInQueue(); processNextInQueue();
// Open 4-panel modal // Open 4-panel modal
@@ -1072,6 +1072,7 @@ export default function InsuranceStatusPage() {
autoTrigger={triggerTarget === "ddma"} autoTrigger={triggerTarget === "ddma"}
onAutoTriggered={() => setTriggerTarget(null)} onAutoTriggered={() => setTriggerTarget(null)}
onPdfReady={async (pdfId, fallbackFilename) => { onPdfReady={async (pdfId, fallbackFilename) => {
await queryClient.invalidateQueries({ queryKey: QK_PATIENTS_BASE });
const claimed = await tryClaimFromChatbot(selectedPatient?.id); const claimed = await tryClaimFromChatbot(selectedPatient?.id);
void tryAppointmentFromChatbot(); void tryAppointmentFromChatbot();
if (!claimed) { if (!claimed) {
@@ -1094,6 +1095,7 @@ export default function InsuranceStatusPage() {
autoTrigger={triggerTarget === "delta-ins"} autoTrigger={triggerTarget === "delta-ins"}
onAutoTriggered={() => setTriggerTarget(null)} onAutoTriggered={() => setTriggerTarget(null)}
onPdfReady={async (pdfId, fallbackFilename) => { onPdfReady={async (pdfId, fallbackFilename) => {
await queryClient.invalidateQueries({ queryKey: QK_PATIENTS_BASE });
const claimed = await tryClaimFromChatbot(selectedPatient?.id); const claimed = await tryClaimFromChatbot(selectedPatient?.id);
void tryAppointmentFromChatbot(); void tryAppointmentFromChatbot();
if (!claimed) { if (!claimed) {
@@ -1114,6 +1116,7 @@ export default function InsuranceStatusPage() {
lastName={lastName} lastName={lastName}
isFormIncomplete={isFormIncomplete} isFormIncomplete={isFormIncomplete}
onPdfReady={async (pdfId, fallbackFilename) => { onPdfReady={async (pdfId, fallbackFilename) => {
await queryClient.invalidateQueries({ queryKey: QK_PATIENTS_BASE });
void tryAppointmentFromChatbot(); void tryAppointmentFromChatbot();
setPreviewPdfId(pdfId); setPreviewPdfId(pdfId);
setPreviewFallbackFilename( setPreviewFallbackFilename(
@@ -1138,6 +1141,7 @@ export default function InsuranceStatusPage() {
autoTrigger={triggerTarget === "tufts-sco"} autoTrigger={triggerTarget === "tufts-sco"}
onAutoTriggered={() => setTriggerTarget(null)} onAutoTriggered={() => setTriggerTarget(null)}
onPdfReady={async (pdfId, fallbackFilename) => { onPdfReady={async (pdfId, fallbackFilename) => {
await queryClient.invalidateQueries({ queryKey: QK_PATIENTS_BASE });
const claimed = await tryClaimFromChatbot(selectedPatient?.id); const claimed = await tryClaimFromChatbot(selectedPatient?.id);
void tryAppointmentFromChatbot(); void tryAppointmentFromChatbot();
if (!claimed) { if (!claimed) {
@@ -1160,6 +1164,7 @@ export default function InsuranceStatusPage() {
autoTrigger={triggerTarget === "united-sco"} autoTrigger={triggerTarget === "united-sco"}
onAutoTriggered={() => setTriggerTarget(null)} onAutoTriggered={() => setTriggerTarget(null)}
onPdfReady={async (pdfId, fallbackFilename) => { onPdfReady={async (pdfId, fallbackFilename) => {
await queryClient.invalidateQueries({ queryKey: QK_PATIENTS_BASE });
const claimed = await tryClaimFromChatbot(selectedPatient?.id); const claimed = await tryClaimFromChatbot(selectedPatient?.id);
void tryAppointmentFromChatbot(); void tryAppointmentFromChatbot();
if (!claimed) { if (!claimed) {
@@ -1182,6 +1187,7 @@ export default function InsuranceStatusPage() {
autoTrigger={triggerTarget === "cca"} autoTrigger={triggerTarget === "cca"}
onAutoTriggered={() => setTriggerTarget(null)} onAutoTriggered={() => setTriggerTarget(null)}
onPdfReady={async (pdfId, fallbackFilename) => { onPdfReady={async (pdfId, fallbackFilename) => {
await queryClient.invalidateQueries({ queryKey: QK_PATIENTS_BASE });
const claimed = await tryClaimFromChatbot(selectedPatient?.id); const claimed = await tryClaimFromChatbot(selectedPatient?.id);
void tryAppointmentFromChatbot(); void tryAppointmentFromChatbot();
if (!claimed) { if (!claimed) {
@@ -1207,6 +1213,7 @@ export default function InsuranceStatusPage() {
autoTrigger={triggerTarget === "united-ucard"} autoTrigger={triggerTarget === "united-ucard"}
onAutoTriggered={() => setTriggerTarget(null)} onAutoTriggered={() => setTriggerTarget(null)}
onPdfReady={async (pdfId, fallbackFilename) => { onPdfReady={async (pdfId, fallbackFilename) => {
await queryClient.invalidateQueries({ queryKey: QK_PATIENTS_BASE });
const claimed = await tryClaimFromChatbot(selectedPatient?.id); const claimed = await tryClaimFromChatbot(selectedPatient?.id);
void tryAppointmentFromChatbot(); void tryAppointmentFromChatbot();
if (!claimed) { if (!claimed) {