feat: add Remaining/Third Party columns, toggle PDF viewer, retire CMSP as separate insurance type
- Add remainingBenefit and thirdPartyInsurance columns to Patient; extract both from the MassHealth accumulator/member-detail pages during the eligibility check and surface them in the eligibility table - Add an updated-date display and a toggle to suppress the post-check PDF viewer popup (default off) on the insurance eligibility page - Rename CMSP-prefixed PDF filenames and UI copy to MH, since CMSP and MH now share the same worker - Fold CMSP into MassHealth/MH across patient/claim insurance-type dropdowns and the chatbot's eligibility routing, since they're the same insurance - Remove auto-download of saved eligibility PDFs; downloading is now manual Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -34,6 +34,8 @@ export interface CmspEligibilityHistoryRemainingProcessorResult {
|
||||
historyPdfFilename?: string | null;
|
||||
accumulatorPdfFileId?: number | string | null;
|
||||
accumulatorPdfFilename?: string | null;
|
||||
remainingBenefit?: string | null;
|
||||
thirdPartyInsurance?: string | null;
|
||||
}
|
||||
|
||||
export async function runCmspEligibilityHistoryRemainingProcessor(
|
||||
@@ -105,8 +107,21 @@ export async function runCmspEligibilityHistoryRemainingProcessor(
|
||||
|
||||
const updates: any = { status: newStatus };
|
||||
if (seleniumInsurance) updates.insuranceProvider = seleniumInsurance;
|
||||
|
||||
const remainingBenefit = seleniumResult.remaining_amount?.trim() || null;
|
||||
if (remainingBenefit) updates.remainingBenefit = remainingBenefit;
|
||||
|
||||
// third_party_insurance is present (even as null) whenever the Third Party
|
||||
// Liability table was found — null means the member has no 2nd insurance,
|
||||
// so we still write it to clear any stale value from a prior check.
|
||||
if (Object.prototype.hasOwnProperty.call(seleniumResult, "third_party_insurance")) {
|
||||
updates.thirdPartyInsurance = seleniumResult.third_party_insurance?.trim() || null;
|
||||
}
|
||||
|
||||
await storage.updatePatient(patient.id, updates);
|
||||
outputResult.patientUpdateStatus = `Patient status updated to ${newStatus}`;
|
||||
outputResult.remainingBenefit = remainingBenefit;
|
||||
outputResult.thirdPartyInsurance = updates.thirdPartyInsurance ?? null;
|
||||
|
||||
// Helper: save a single PDF to the patient's Cloud Storage Eligibility folder
|
||||
const patientName = `${patient!.firstName ?? ""} ${patient!.lastName ?? ""}`.trim() || `Patient ${patient!.id}`;
|
||||
|
||||
Reference in New Issue
Block a user