save and claim button added
This commit is contained in:
@@ -165,10 +165,11 @@ export default function ClaimsPage() {
|
||||
|
||||
// workflow starts from there - this params are set by pdf extraction/patient page. then used in claim page here.
|
||||
const [location] = useLocation();
|
||||
const { name, memberId, dob } = useMemo(() => {
|
||||
const { name, memberId, dob, newPatient } = useMemo(() => {
|
||||
const search = window.location.search;
|
||||
const params = new URLSearchParams(search);
|
||||
return {
|
||||
newPatient: params.get("newPatient"),
|
||||
name: params.get("name") || "",
|
||||
memberId: params.get("memberId") || "",
|
||||
dob: params.get("dob") || "",
|
||||
@@ -179,7 +180,17 @@ export default function ClaimsPage() {
|
||||
setSelectedPatientId(patientId);
|
||||
setIsClaimFormOpen(true);
|
||||
};
|
||||
// ✅ FIRST: if ?newPatient=<id> is present, open claim form directly
|
||||
useEffect(() => {
|
||||
if (newPatient) {
|
||||
const id = Number(newPatient);
|
||||
if (Number.isFinite(id) && id > 0) {
|
||||
handleNewClaim(id);
|
||||
}
|
||||
}
|
||||
}, [newPatient]);
|
||||
|
||||
// existing flow: only runs when there is no ?newPatient and we have memberId+dob
|
||||
useEffect(() => {
|
||||
if (memberId && dob) {
|
||||
// if matching patient found then simply send its id to claim form,
|
||||
|
||||
@@ -22,7 +22,9 @@ import { InsertPatient, Patient } from "@repo/db/types";
|
||||
// Type for the ref to access modal methods
|
||||
type AddPatientModalRef = {
|
||||
shouldSchedule: boolean;
|
||||
shouldClaim: boolean;
|
||||
navigateToSchedule: (patientId: number) => void;
|
||||
navigateToClaim: (patientId: number) => void;
|
||||
};
|
||||
|
||||
export default function PatientsPage() {
|
||||
@@ -57,9 +59,14 @@ export default function PatientsPage() {
|
||||
variant: "default",
|
||||
});
|
||||
|
||||
// If the add patient modal wants to proceed to scheduling, redirect to appointments page
|
||||
// ✅ Check claim first, then schedule
|
||||
if (addPatientModalRef.current?.shouldClaim) {
|
||||
addPatientModalRef.current.navigateToClaim(newPatient.id);
|
||||
return;
|
||||
}
|
||||
if (addPatientModalRef.current?.shouldSchedule) {
|
||||
addPatientModalRef.current.navigateToSchedule(newPatient.id);
|
||||
return;
|
||||
}
|
||||
},
|
||||
onError: (error) => {
|
||||
|
||||
Reference in New Issue
Block a user