Commit Graph

34 Commits

Author SHA1 Message Date
Gitead
25809d8802 feat: add New Adult Patient (Limited exam+1PA) combo with D0140, D0220 2026-04-18 22:17:29 -04:00
Gitead
51d1fe0109 feat: add New Patient (Limited exam+Pano) combo with D0140, D0330 2026-04-18 21:57:52 -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
14c534d57d feat: show attachment filenames in claims and payments tables 2026-04-18 11:46:14 -04:00
Gitead
37a0568b5e fix: MH claim submit — wait for socket job:update before fetching PDF and claim number 2026-04-18 09:53:41 -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
Gitead
b6700eceee fix: revert Deltains button label 2026-04-17 00:14:46 -04:00
Gitead
a222e22014 feat: reorganize eligibility buttons and update labels 2026-04-16 23:48:02 -04:00
Gitead
a801728972 fix: restore credentials section and add missing User migration
- Use useAuth() in CredentialTable instead of a separate /api/users/ fetch
  that was failing silently and hiding the entire credentials section
- Add migration for autoBackupEnabled/usbBackupEnabled columns on User
  that were in the Prisma schema but missing from the database, causing
  a 500 error on login

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-16 16:50:43 -04:00
Gitead
f6adb75f4f fix: add bullmq, fix login error logging, regenerate zod schemas 2026-04-16 15:50:34 -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
a1cccc8716 feat: add Pedo category and Core BU button to procedure combos 2026-04-14 22:20:38 -04:00
ff
714029df24 fix: MH eligibility selenium integration and patient data extraction 2026-04-14 22:10:19 -04:00
ff
f415100cdb fix: fix db restore not applying and auto-create USB backup folder
- Reset public schema before psql restore so existing tables don't
  block CREATE TABLE statements (pg_dump without --clean has no DROPs)
- Disconnect Prisma connection pool after restore so next request
  gets fresh connections against the restored data
- Auto-create the USB backup subfolder if it doesn't exist instead
  of failing; only fail if the destination drive itself is missing

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-13 23:12:41 -04:00
ff
90302a76b7 feat: add BullMQ queue infrastructure and frontend job status hook
- apps/Backend/src/queue/: connection, queues, workers, processors
- apps/Frontend/src/hooks/use-job-status.ts: WebSocket job progress hook
- apps/Frontend/src/lib/socket.ts: shared Socket.IO singleton

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-13 22:30:40 -04:00
ff
05a8a220bd feat: rewire routes to BullMQ and speed up documents page 2026-04-13 20:43:21 -04:00
ff
4e981c644f refactor: consolidate 3 identical Redux slices into one seleniumTaskSlice 2026-04-13 14:40:53 -04:00
ff
11a6d2e5a7 feat: add Job Monitor page with cron job logging and Selenium queue status 2026-04-13 00:32:18 -04:00
ff
034c0fa993 your commit message 2026-04-12 12:54:40 -04:00
ff
805fb3964a fix: staff edit error and column order on appointment page 2026-04-12 12:13:57 -04:00
ff
1eac0c313c fix: rename User Settings to Admin Settings 2026-04-12 12:08:25 -04:00
ff
4afffd7015 feat: restrict database management page to admin users only 2026-04-11 23:49:14 -04:00
ff
66a3d271f1 feat: change backup format to plain SQL, admin-only cron, backup now button, import restore UI 2026-04-11 23:37:43 -04:00
ff
4025ca45e0 feat: database management - auto/USB backup toggles, folder browser, cron jobs 2026-04-11 00:32:39 -04:00
ff
b9a7ddb6d7 feat: move Payment Document OCR section to bottom of payments page
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-10 20:24:06 -04:00
ff
c95507fd97 fix: change theme color from blue to teal-green 2026-04-10 16:09:07 -04:00
ff
84991a0538 feat: restrict patient deletion to admin users only 2026-04-10 14:29:06 -04:00
ff
b9edd6a5e6 show credential pw 2026-04-07 23:52:05 -04:00
ff
608a577b1c fix: correct db port, localhost defaults, hashed passwords in seed 2026-04-04 23:30:05 -04:00
5d77e207c9 initial commit 2026-04-04 22:13:55 -04:00