Commit Graph

574 Commits

Author SHA1 Message Date
1fcdb82eea fix(abdm): auto-resolve patient demographics from patient_master for HIP care context linking and token generation
- Auto-resolve missing name, gender, year_of_birth, abha_address, and abha_number in hipLinkToken and hipLinkCareContext endpoints using patient_master lookup
- Calculate birth year with fallback to age (current_year - age) when DOB is 0000-00-00, empty, or invalid
- Support resolving ABHA identifier whether saved in abha_address or legacy abha_id column
- Pass patient_id from client link modal and views (opd_prescription_basic, Patient_Profile_Opd_V, Person_profile_V)
- Fix demographic resolution in AbdmTaskBoardSyncService for background OPD and work task publishing
- Add comprehensive PHPUnit test suite in tests/unit/Abdm/TestHipDemographicsCareContext.php
2026-10-06 10:53:19 +05:30
da61637c56 fix(billing,abdm): resolve patient profile edit error and enhance opd prescription fhir mapping
- Fix Undefined variable \ 500 error in Person_Edit_V.php
- Safeguard auth()->user() and variable access in Person_Edit_V.php and Person_profile_V.php
- Enhance getPrescriptionMedicines with fallback dosing, remarks, and SNOMED lookup for OP Consultation FHIR
- Add deep-link SMS notify and link verification in ABDM gateway and task board
- Add PatientEditViewTest covering profile and edit view rendering
2026-10-06 08:25:48 +05:30
414dc42c05 fix(diagnosis): resolve print template placeholders and base64 logo rendering
- Support hospital, patient, doctor, and date placeholders matching template variables
- Convert local logo and signature paths to base64 Data URIs for mPDF
- Apply token replacement to report body in single and compiled prints
- Add interactive placeholder toolbar in diagnosis template settings view
- Add unit tests in tests/unit/DiagnosisTemplateTokenTest.php
2026-10-03 02:45:22 +05:30
e43bfbad71 feat(abdm): add task status filtering, search, and completed task visibility on task board
- Add getTasks() method with status filtering (all, open, completed, failed) to AbdmWorkTaskService
- Enhance AbdmTaskBoard to enrich all task types with health_records, invoice_code, and care contexts
- Add status toggle filter buttons (All, Open, Completed) with dynamic count badges to Task Board UI
- Add real-time fuzzy/keyword search input for instant filtering by invoice ID, patient name, ABHA, or task code
- Render completed/linked tasks with green LINKED badge, gateway reference, and FHIR Preview button
- Add unit tests in AbdmTaskBoardBackfillTest
2026-10-01 19:40:32 +05:30
2569f694c1 fix(abdm): normalize ABDM upstream errors and Please make a valid request to does not exist 2026-10-01 18:50:35 +05:30
fd10df43c3 fix(abdm): resolve ABHA address verification, field error extraction, and task board sync
- Fix empty string fallback in validateAbha and EAtriaBridgeConnector to properly extract healthIdNumber and real fullName from data payload
- Skip generic bridge envelope messages in extractBridgeErrorText to surface specific field rejections like loginHint
- Translate non-existent ABHA address errors to 'ABHA Address does not exist or was not found in the ABDM registry'
- Support both 14-digit ABHA numbers and ABHA addresses in Diagnosis publish and ABDM Task Board
- Prevent completed task duplication in lab/radiology backfill
- Add unit tests in AbhaOtpErrorHandlingTest and AbdmTaskBoardBackfillTest
2026-10-01 17:12:17 +05:30
38b96a1003 Fix radiology editor DICOM gallery context, match related templates, and remove manual ABDM panel 2026-10-01 12:59:45 +05:30
0b75b52377 fix(diagnosis): restore lab_test_no column in report tables to fix DataTables column count warning 2026-10-01 11:38:29 +05:30
1f4fcf6546 fix(diagnosis): resolve person name null concat in report list and handle large dicom file uploads 2026-10-01 11:24:29 +05:30
140c4908ee fix(patient): hide ABHA Create/Verify tab when patient already has an ABHA profile 2026-10-01 11:01:34 +05:30
376cb7eeb1 fix(abdm): remove 'Use Aadhaar-linked Mobile' skip button from Mobile OTP step 2026-09-30 17:50:24 +05:30
3df469bfab fix(abdm): implement communication mobile OTP verification, register route, and fix patient list modal DOM 2026-09-30 16:59:23 +05:30
f7c30529a3 feat(abdm-m2): enable care context discovery and direct linking for invoice records 2026-09-30 12:25:01 +05:30
a33b376ecd feat(abdm-m2): add HIP link modal and care context discovery on patient registration 2026-09-29 23:48:33 +05:30
6bd24303e3 fix(abdm-m1): user friendly OTP errors, remove bridge request id from UI, and add beneficiary name consent collection 2026-09-29 23:14:48 +05:30
1a21f16f7b fix(abdm): sync care context reference format and auto-push FHIR bundle on linking
- Align care context reference format (RAD- prefix for radiology, clean Ymd date) between discovery, shareDiagnosisReportBundle, and AbdmTaskBoardSyncService
- Automatically push FHIR document bundle to Bridge (POST /api/v3/records/push) on care context linking or already-linked confirmation in abdm_hip_link_modal
- Provide clear instructions to user regarding PHR app 'Fetch Records' pull flow
- Add unit test testShareDiagnosisReportBundleFormatsRadiologyCareContext
2026-09-29 15:06:31 +05:30
41d89a1969 feat(abdm): enhance care context discovery, async token retry, and modal backdrop cleanup
- Add multi-type care context discovery in AbdmGateway (DiagnosticReport, DischargeSummary, Immunization, OPConsult) with target task prioritization
- Implement automated retry backoff in EAtriaBridgeConnector for asynchronous ABDM link token callback delivery
- Handle already-linked contexts gracefully and synchronize Task Board row status on link completion
- Resolve modal backdrop freeze and inactive main screen on radiology report template update in PathLab_Report and welcome_message
- Add unit tests CareContextDiscoveryTest and EAtriaBridgeConnectorLinkTest
2026-09-29 14:02:22 +05:30
61206784f3 feat(abdm): implement care-context linking cooling window and timer reset on record modification
- Add cooling period configuration (60 min for OPD/Lab/Radiology/others, 24 hr for IPD Discharge) in AbdmConnector
- Add calculateCooling() logic in AbdmTaskBoardSyncService and skip automated linking during cooling window
- Touch and refresh work task timestamps on prescription save and IPD discharge summary save/print
- Update opd_fhir_documents on prescription edit rather than inserting duplicate bundles
- Enrich ABDM Task Board table and OPD consult list with active cooling badges, remaining minutes, and auto-link schedule
- Preserve manual 'Link Context' action on task board to allow immediate override anytime
- Update CLI commands (abdm:taskboard-sync, abdm:push-sync) with cooling counters and status logging
2026-09-28 18:29:50 +05:30
d0f7aa4542 feat(abdm): enable live fresh FHIR fetch on pull, remove old push options, and keep care context linking 2026-09-28 03:25:04 +05:30
90e63d2d58 fix(abdm): generate and publish OPD consultations as OPConsultRecord and support dynamic hi_type 2026-09-28 02:46:10 +05:30
524a991098 fix(opd): preserve template settings and flow while compacting font sizes for large prescriptions 2026-09-27 13:40:35 +05:30
9b3e734ead fix(ipd_discharge): prevent duplicate surgery additions and fix procedure table dynamic updates 2026-09-25 07:41:10 +05:30
3656bf9b94 Fix ABDM HIP link-token failure: strictly sanitize abha_number, decouple abha_address from 14-digit abha_id in profile & modal 2026-09-24 10:03:19 +05:30
24089f36a6 fix(abdm): auto-link ABHA address on discovery/confirm, resolve FHIR by patient_id on-demand, and display in profile 2026-09-24 09:33:19 +05:30
3f1e89d4be Fix IPD patient admit search error, add admission type filters to IPD patient list, remove redundant sidebar links, and add OPD Day Care template support 2026-09-23 10:12:42 +05:30
ccb05389e1 Prevent duplicate course/treatment submissions and add edit/update capability in IPD discharge 2026-09-23 08:32:36 +05:30
da82ec84d1 Prevent duplicate final diagnosis submissions and add edit/update capability in IPD discharge 2026-09-23 08:28:02 +05:30
c0cbf1c0bd Ensure strict sequential keyboard focus navigation across OPD Consult and IPD Discharge prescription controls 2026-09-23 08:15:09 +05:30
c0842d1502 IPD Discharge: add Form/Type-aware Dose/Strength autocomplete and fix Duration keyboard arrow key navigation in IPD & OPD 2026-09-23 07:52:04 +05:30
7f4b49a1c6 OPD: add smart Form/Type-aware autocomplete for Dose and Strength 2026-09-23 07:38:28 +05:30
659106c66a feat(opd,ipd): standardize complaint autosearch, square icon buttons, and Quick Autotext Chips 2026-09-22 22:07:48 +05:30
d35f85bf1b fix(ipd): append action cell to row so update and remove buttons render in complaint table 2026-09-22 21:47:13 +05:30
341c09d9c7 feat(ipd): enable autosearch and row-level update on discharge complaint table 2026-09-22 20:20:11 +05:30
79020e806b Move substitutes from medicine input form to Action column button below added medicines 2026-09-22 19:49:27 +05:30
93a6fdf89e Standardize Relation to Food (When) in IPD discharge to match OPD consult format 2026-09-22 19:35:44 +05:30
39ff463b57 feat(ipd): update discharge medicine form/type with full ABDM formulation list and auto route detection 2026-09-22 19:20:23 +05:30
0bb480aace feat(opd): expand formulation types with full ABDM/clinical specialty list (shampoo, soap, spray, susp, etc.) 2026-09-22 19:04:24 +05:30
c870e7eccc feat(opd): convert Formulation into standardized Form/Type select dropdown matching OPD consult 2026-09-22 18:55:08 +05:30
519a52bd73 fix(opd): change Dose from select dropdown to text input with suggestions in medicine workspace 2026-09-22 18:27:18 +05:30
4766c7c9fa fix: safeguard shell_exec with function_exists check in login and medical api 2026-09-22 13:03:19 +05:30
6e78e6010e feat: add Day Care & Emergency admission module with IPD conversion and clean patient names
- Add Day Care (<24h) and Emergency (Casualty) admission pathways with prefixes DC- and ER-
- Add dedicated physical wards, ESI 5-level triage, MLC tracking, and PADSS day care discharge
- Implement audited 'Convert to IPD' workflow with SBAR handover and automated bed transfer
- Support unified IPD billing with dedicated group headers for Day Care and Emergency charges
- Redesign Hospital Admission Desk with executive card layout and modern triage controls
- Add comprehensive user documentation and SVG flowchart in public/help.html
- Completely remove legacy patient_master.p_lname column from database and application code
2026-09-21 23:41:24 +05:30
ecd596e0fb feat(medical-store): add mobile apps QR hub on login page, pharmacy ledgers, credit accounts, and 6-tier staff permissions 2026-09-18 05:11:02 +05:30
c49361c0fa feat: disable public registration on login page and add cron task management script 2026-09-17 13:06:13 +05:30
dd1acb88e1 feat: add IPD census PDF, collection payment filter, fix report panel visibility, and implement ABDM HIP linking
- Reports:
  - Add PDF export option with A4-L print layout for IPD Census & Discharge Report
  - Add Payment Type filter (OPD, Charge, IPD, ORG, All) to Collection Report with URL routing and summary table updates
  - Ensure superadmin/admin/developer visibility in Report Panel controller permission checks
- ABDM:
  - Implement HIP patient care-context linking and discovery integration
  - Add on-demand FHIR health record fetch endpoints for Bridge connector
  - Add ABDM HIP link modal view and wire to patient/person profiles and prescription
2026-09-15 23:21:30 +05:30
f2e27828bb fix(abha): make verification match modal aware of unique ABHA ID and dynamic titles 2026-09-12 05:23:33 +05:30
7e3c57f48f fix(patient): enforce unique ABHA ID and Aadhaar number on patient registration and updates 2026-09-12 04:30:10 +05:30
35e1018c6b fix(abdm): prevent modal redirect to profile step on wrong OTP verification 2026-09-12 01:48:33 +05:30
7c573403b2 fix(abdm): isolate Aadhaar mobile from ABHA registered mobile and sanitize asterisk placeholders in verification flow 2026-09-12 00:35:51 +05:30
fd492a2aa2 feat(abdm-m1): implement Create / Find ABHA Record wizard aligned with ABDM M1 specifications
- Reorder and streamline wizard into 5 steps (Aadhaar, Aadhaar OTP, Mobile OTP, ABHA Address, Profile & Card)
- Add Aadhaar vs Communication mobile matching to skip or mandate mobile OTP (CRT_ABHA_108 vs CRT_ABHA_109)
- Enforce full consent declarations with master 'I Agree' checkbox and step validation (CRT_ABHA_102)
- Enforce UIDAI Verhoeff algorithm pre-validation and normalize upstream loginId errors (CRT_ABHA_104 / VRFY_ABHA_403)
- Enforce ABHA address validation policy: 8-18 chars, dot/underscore in between only, duplicate detection (CRT_ABHA_112)
- Enforce 60s timer and maximum 2 resend attempts on both OTP verification steps (CRT_ABHA_106)
- Support instant jump to profile & card for existing accounts with 'ABHA Already Exist' notice (VRFY_ABHA_404)
- Update Patient Management and Profile view buttons to 'Create / Find ABHA Record'
2026-09-11 22:11:17 +05:30
5187fcf3ed feat(tax): standardize current GST slabs (0%, 5%, 18%, 40%, legacy 12%, 28%) across HMS and Medical Store 2026-09-10 07:13:04 +05:30