Commit Graph

13 Commits

Author SHA1 Message Date
Gitead
1414ec11fd fix: MH eligibility - auto-select first provider, fix PDF double-quit bug 2026-04-22 14:35:57 -04:00
Gitead
84f635b770 fix: correct MassHealth date format and update procedure combo labels
- Fix Selenium using today's date instead of selected service date; convert YYYY-MM-DD from frontend to MM/DD/YYYY for MassHealth input
- Rename "New Patient (Limited exam+Pano)" → "Patient (Limited exam+Pano)"
- Rename "New Adult Patient (Limited exam+1PA)" → "Patient (Limited exam+1PA)"
- Add "Patient (D9110+1PA)" combo with codes D9110, D0220

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-18 22:37:45 -04:00
Gitead
38f56decb1 fix: use venv for Python services to support Debian 13 managed environment 2026-04-18 20:50:47 -04:00
Gitead
5d1275d628 fix: UnitedSCO status always inactive and missing patient name 2026-04-18 09:25:02 -04:00
Gitead
c8cb649e25 fix: CCA login — proper portal detection, robust field entry, input diagnostics 2026-04-18 09:15:13 -04:00
Gitead
4505d5db85 feat: DentaQuest eligibility — PLAN_NOT_ACCEPTED status, DOB save, no retries
- Add PLAN_NOT_ACCEPTED to PatientStatus enum (prisma schema + db push)
- Selenium: return "plan not accepted" eligibility text instead of collapsing to inactive
- Backend processor: map "plan not accepted" → PLAN_NOT_ACCEPTED, fix insuranceProvider label
- _shared.ts: save DOB for existing patients when field is currently empty
- Frontend: show amber "Plan Not Accepted" badge in patient table and detail panel
- patient-form.tsx: display "Plan Not Accepted" label in status dropdown
- BullMQ: set attempts=1 (no retry on selenium failure)
- DDMA: remove first/last name from search (member ID + DOB only)
- patient-types.ts: allow alphanumeric insurance IDs

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-17 23:47:50 -04:00
Gitead
f5ec4a1480 feat: wire Tufts SCO to DentaQuest portal and fix insurance credential dropdown
- Add /dentaquest-eligibility endpoint in Python agent (Tufts SCO uses providers.dentaquest.com)
- Add backend route, processor, and service client for Tufts SCO (separate from UnitedSCO/DentalHub)
- Fix Tufts SCO button to post to new tuftssco route instead of unitedsco
- Fix credential field names: dentaquestUsername/Password (was tuftsscoUsername/Password)
- Fix socket event: listen for selenium:dentaquest_session_started (was unitedsco)
- Fix error visibility: keep session alive 30s on error so backend reads real message
- Replace free-text Site Key field with dropdown to prevent key mismatches

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-17 00:59:24 -04:00
ff
7fa7f405e2 feat: integrate DeltaIns, Tufts SCO, United SCO, and CCA eligibility checks 2026-04-16 15:02:50 -04:00
ff
289ea426d3 feat: integrate DDMA eligibility into BullMQ queue with persistent session
- Route DDMA eligibility through InProcessQueue (concurrency=1) so it
  queues behind other selenium jobs instead of running concurrently
- New ddmaEligibilityProcessor: starts Python session, polls for OTP/
  completion via socket events, saves PDF and updates patient DB
- Frontend ddma-buton-modal now uses shared app socket + job:update
  pattern (drops private socket connection)
- SeleniumService: upgrade ddma_browser_manager with credential hash
  tracking, anti-detection options, and startup session clearing;
  upgrade DDMA worker with firstName/lastName support, PDF via
  printToPDF, force-logout on credential change; upgrade helpers with
  dual OTP strategy (app API + browser polling); add /clear-ddma-session
  endpoint; reduce fixed sleeps with smart WebDriverWait

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-16 09:21:47 -04:00
ff
714029df24 fix: MH eligibility selenium integration and patient data extraction 2026-04-14 22:10:19 -04:00
ff
4025ca45e0 feat: database management - auto/USB backup toggles, folder browser, cron jobs 2026-04-11 00:32:39 -04:00
ff
b9edd6a5e6 show credential pw 2026-04-07 23:52:05 -04:00
5d77e207c9 initial commit 2026-04-04 22:13:55 -04:00