> ## Documentation Index
> Fetch the complete documentation index at: https://docs.encoreos.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Follow-Up Dashboard

> Tracks HEDIS Follow-Up After Hospitalization 7-day and 30-day rates for FUH-eligible discharges at route /cl/fuh-dashboard.

The Follow-Up Dashboard screen (`/cl/fuh-dashboard`) displays FUH-eligible discharge records from `cl_transitions` and computes 7-day and 30-day follow-up rates as labeled in the page header as "HEDIS Follow-Up After Hospitalization (7 & 30 day)."

## Overview

The page uses `useFuhEligibleTransitions` (from `useTransitions.ts`) to query `cl_transitions` filtered by `organization_id` and `fuh_eligible = true`, ordered newest-first. Two metric cards display the 7-day and 30-day follow-up rates as percentages calculated client-side (met count / total × 100, rounded). Below the cards, an **Eligible Discharges** table shows chart number, discharge date, follow-up date, and status badges for each time window. Each row's status is derived by `getFuhStatus()`: `met` (green accent badge) if the corresponding flag is true, `overdue` (destructive) if days elapsed exceeds the window without being met, or `pending` (outline) otherwise. Skeleton rows appear during loading; a Retry button is shown on error.

## Who it's for

Requires permission `cl.transitions.view`.

## Before you start

* You must hold `cl.transitions.view`.
* An organization must be selected; `useFuhEligibleTransitions` returns an empty array without `organization_id`.
* Transition records must have `fuh_eligible = true` to appear; see the SME note above regarding how that flag is assigned.

## Steps

<Steps>
  <Step title="Open the Follow-Up Dashboard">
    Navigate to `/cl/fuh-dashboard`. The page loads FUH-eligible transitions for the current organization.
  </Step>

  <Step title="Read the metric cards">
    The two summary cards display the **7-Day Follow-Up Rate** (met7 / total) and **30-Day Follow-Up Rate** (met30 / total) as percentages with raw counts in parentheses.
  </Step>

  <Step title="Review the Eligible Discharges table">
    Each row shows the patient chart number, discharge date (`transition_date`), follow-up date (`followup_date`), and status badges for the 7-day and 30-day windows.
  </Step>

  <Step title="Interpret status badges">
    **Met** (green) — the follow-up flag is true. **Overdue** (destructive) — the window has elapsed without the flag being met. **Pending** (outline) — still within the window and flag not yet met.
  </Step>
</Steps>

## Key concepts

<AccordionGroup>
  <Accordion title="FUH status logic">
    `getFuhStatus(transitionDate, daysMet, daysWindow)` returns `met` if `daysMet` is true; `overdue` if `differenceInDays(now, transitionDate) > daysWindow`; otherwise `pending`. This is a pure client-side calculation using `date-fns`.
  </Accordion>

  <Accordion title="Empty state">
    When no FUH-eligible transitions exist, the table shows "No FUH-eligible discharges" with the hint "Mark discharges as FUH-eligible when recording transitions."
  </Accordion>

  <Accordion title="Error state">
    On query failure, a sanitized error message and a **Retry** button are displayed inside a destructive-bordered card.
  </Accordion>
</AccordionGroup>

## Related

<Columns cols={2}>
  <Card title="Clinical" icon="stethoscope" href="/cl/overview">
    Overview of the Clinical core.
  </Card>

  <Card title="Governance & parity" icon="scale-balanced" href="/governance/index">
    Documentation coverage and governance.
  </Card>
</Columns>

<Note>
  This page documents shipped product behavior. It is not medical, legal, or
  billing advice. Verify against your organization's policies and applicable
  regulations before using it for clinical, compliance, or billing decisions.
  Protected health information (PHI) shown in the product is governed by your
  tenant's access controls and is never exposed in this documentation.
</Note>

<Accordion title="Documentation sources">
  * src/routes/cl.tsx
  * src/cores/cl/pages/FuhDashboardPage.tsx
  * src/cores/cl/hooks/useTransitions.ts
</Accordion>
