Commit Graph

1218 Commits

Author SHA1 Message Date
e992c3be37 fix(abdm): enforce NRCES Wellness observation profiles, LOINC code retention, and practitioner performer 2026-10-07 14:41:15 +05:30
bd02f895c5 fix(abdm): resolve wellness patient mismatch in fetch, sugar LOINC codes, duplicate notifications and hi_type mapping 2026-10-07 14:20:41 +05:30
db76ad9759 fix(abdm): resolve patient flipping, duplicate document contexts, and health document FHIR fetch 2026-10-07 13:24:05 +05:30
d04f1d5c24 fix(abdm): adjust db property visibility in AbdmFhirInspector to inherit protected from BaseController 2026-10-07 12:20:42 +05:30
0fe48f2ec8 feat(abdm): show health documents in HIP link modal and create dedicated ABHA Filter & FHIR Inspector page 2026-10-07 12:16:56 +05:30
6ac211377b fix(abdm): use correct column names last_action_result and completed_at in abdm_work_tasks 2026-10-07 11:54:02 +05:30
a3537c0b29 feat(abdm): enable proactive ABDM bridge push and gateway linking for nursing wellness records 2026-10-07 11:50:51 +05:30
0441ebe08a feat(abdm): expand WellnessRecord to full comprehensive suite (Option B) with segmented tabs and labs 2026-10-07 10:15:42 +05:30
0b1d545a3c fix(abdm): enhance m2HealthInformationFetch and assembleFhirBundleForCareContext for standalone wellness records 2026-10-07 09:56:52 +05:30
49f6a8327d fix(abdm): select entity_type in health_records to discover standalone wellness care contexts 2026-10-07 09:50:16 +05:30
86dc076f5d fix(nursing): auto-create patient_wellness_records, generate full NRCES FHIR bundle on save, and discover standalone wellness care contexts 2026-10-07 09:47:23 +05:30
04eff5e5ba Standardize OPD care context formatting and prevent duplicate session aliases 2026-10-06 16:59:39 +05:30
b0a08112d1 fix(fhir): add versionId and lastUpdated to DocumentBundle meta for full NRCES conformance 2026-10-06 16:54:01 +05:30
e2bb0b107a fix(abdm): enrich OPD and INVOICE care contexts with clinical components and bill summary 2026-10-06 16:49:15 +05:30
f367603962 fix(abdm): unify consult visit into single OPConsultRecord bundle and auto-sync on print 2026-10-06 16:40:30 +05:30
d46f222fa3 fix(abdm): set default sandbox linking OTP to 654321 and accept both 654321 and 123456 2026-10-06 15:46:50 +05:30
461c8263f3 fix(abdm): map patientfile to HealthDocumentRecord 2026-10-06 15:34:45 +05:30
298c2f3fba Filter unready care contexts in ABDM discovery and map hiType per context 2026-10-06 15:23:14 +05:30
d1daefde4e fix(abdm): unify opd consultation care contexts, prevent duplicates and premature fhir ready on unfilled booking 2026-10-06 15:00:33 +05:30
045f4c5116 feat(abdm-fhir): add dedicated Prescription and Immunization FHIR generators with NRCES validation 2026-10-06 12:38:33 +05:30
24819cb75c feat(abdm): configure official ABDM toolkit skills and achieve 100% NRCES 6.5.0 FHIR conformance 2026-10-06 12:25:48 +05:30
e553215ea1 feat(abdm): add ABHA address filter with care context & FHIR status inspector on task board 2026-10-06 11:38:26 +05:30
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
686513cf27 Fix ABDM live fetch and discovery for PrescriptionRecord and WellnessRecord 2026-10-06 09:38:40 +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
6270b0517a fix(abdm,diagnosis): use plain paper template for radiology fhir pdf, fix modality title and strip conclusion html 2026-10-04 12:38:44 +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
48d11b20df fix(abdm): eliminate dummy consultation bundles, fix Strategy 0 return bundle, add on-demand invoice FHIR, and ensure full multi-artifact HIU polling 2026-10-02 01:11:22 +05:30
1c41b4555b refactor(abdm): remove opd_fhir_documents fallback from recordsFetch and bind strictly to health_records 2026-10-01 20:46:38 +05:30
478722cf00 fix(abdm): fix recordsFetch health_records latest row selection and guard opd_fhir_documents fallback 2026-10-01 20:07:50 +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
5cc4486d9a fix(abdm): distinguish ABHA Number vs ABHA Address in lookup error messages and logs 2026-10-01 18:37:14 +05:30
7c1f0df410 fix(abdm): normalize bridge SQL errors in API logs and extract specific upstream hints 2026-10-01 18:06:08 +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
8dd34a9085 fix(abdm): improve radiology report title resolution and prevent completed task duplication 2026-10-01 15:27:50 +05:30
3358f56e3f Add unit tests for radiology report template ranking and imaging file lookup 2026-10-01 13:06:04 +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
734b9a2bc4 fix(abdm): evaluate cooling from clinical event date and prevent reset on taskboard view 2026-10-01 08:03:44 +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
763af46de2 feat(radiology): add comprehensive templates and charge items seeder for X-Ray, CT-Scan, and MRI 2026-09-29 20:25:39 +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
b28b51965c fix(abdm): dynamically check ABHA columns in patient_master 2026-09-28 00:43:03 +05:30
9a70172cbc fix(abdm): use apointment_date in AbdmTaskBoardSyncService 2026-09-28 00:41:11 +05:30
c3fc0d98f0 feat(abdm): automate ABDM Work Task Board care-context linking via cron job 2026-09-28 00:40:03 +05:30
0186e17f0f feat(abdm): implement automated deep-link SMS notify queue and Spark cron worker 2026-09-27 23:55:52 +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
8850620931 fix(opd): accurately calculate top margin delta from template @page and fix named header/footer preservation 2026-09-27 11:50:27 +05:30
b75a43fc32 fix(opd): maintain letterhead top and left margins and content width ratios in Rx print pagination 2026-09-27 11:37:16 +05:30
0397071be4 fix(opd): reorder prescription directions to Frequency | Relation to Food | Dose | Duration | Remarks and add legacy data safeguards 2026-09-27 09:02:03 +05:30
9b3e734ead fix(ipd_discharge): prevent duplicate surgery additions and fix procedure table dynamic updates 2026-09-25 07:41:10 +05:30
677472e6b0 fix(abdm): safely decode raw body in recordsFetch if getJSON fails 2026-09-24 13:13:24 +05:30
092e5cd193 fix(abdm): route health record push with FHIR bundle to /v3/records/push and unify care context reference format 2026-09-24 11:12:54 +05:30
0b048881e1 fix(opd): pass push_to_gateway flag when submitting FHIR bundle from standalone preview 2026-09-24 10:57:07 +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
2f6b346e25 fix(abdm): add concurrency lock, optimize hiu-poll query, and add composite indexes 2026-09-24 08:03:57 +05:30
fcce8970fd fix(abdm): safe JSON parsing in m2LinkInit/Confirm and prevent abha_id null in audit log 2026-09-23 15:56:05 +05:30
0d71ce5ee4 fix(abdm): allow Bearer auth fallback and safe getJSON parsing in recordsDiscover 2026-09-23 15:21:56 +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
7a653a06b6 OPD: preserve opd_med_master defaults and stop prescription overwrite 2026-09-23 07:12:53 +05:30
126a62b8d0 fix(opd): fix undefined patLastName and make FHIR and audit logging fail-safe in opd_prescription_save 2026-09-22 23:40:05 +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
ab3ab0c17f fix(medical-store): define billerName in saveSale and link sale_id to credit ledger 2026-09-18 05:55:50 +05:30
6ce81eedd8 feat(medical-store): auto-convert draft bills to invoice on checkout and reduce pending draft list 2026-09-18 05:49:20 +05:30
bc90020c69 fix(medical-store): fix item rate picking and batch pricing when loading Mobile Draft bills into POS cart 2026-09-18 05:29:50 +05:30
e4e89fb34a feat(database): add migration for credit accounts, credit ledger, draft bills, and store user permissions 2026-09-18 05:17:22 +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
64e34678ec feat: close related organization case on IPD discharge 2026-09-16 15:53:53 +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
93172c4a19 feat(pharmacy): add searchable All Invoices register tab with edit capabilities and POS draft auto-save/recovery 2026-09-10 09:50:34 +05:30
741269634e feat(pharmacy): add right-side patient old records, last dispensed medicines, and 1-click re-dispense/return desk 2026-09-10 09:23:59 +05:30
261a69bf2e feat(medical-store): set A5 invoice to landscape format (A5-L) and remove copy text button from thermal view 2026-09-10 08:22:20 +05:30
82cae89fae feat(medical-store): add server-side A4/A5 vector PDF generation with mPDF and 48-col plain-text thermal receipt printing 2026-09-10 08:09:10 +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
358416fc10 feat(medical-store): conditional pharma fields below product search with auto-fill from last batch and purchase 2026-09-10 06:47:49 +05:30
59514cd061 feat(medical-store): pharma stock entry with progressive disclosure, challan import, and history 2026-09-10 06:35:05 +05:30
48bb726b6d feat(medical-store): add edit purchase invoice option with stock adjustment and ledger reconciliation 2026-09-10 05:43:11 +05:30
ca6926015a fix(medical-store): remove third-party brand Marg from application and replace with generic Excel/CSV import 2026-09-10 04:58:59 +05:30
e635e823e5 feat(medical-store): add supplier ledger, payment tracking, short items book, and purchase orders 2026-09-10 04:49:00 +05:30
62397c5a98 feat(medical-store): inward purchase medicine auto-search and shared pharmacy master integration 2026-09-10 04:23:09 +05:30
101e0631a8 feat(medical-store): add supplier creation and editing modal in Supplier Directory 2026-09-10 03:53:33 +05:30
b89bace2c9 fix(abdm): resolve 500 internal server error on ABHA patient request list 2026-09-09 18:46:28 +05:30
9176877d07 feat(abdm): implement M1 find ABHA by mobile flow & M2 user-initiated linking
- M1: Update Find ABHA via Mobile to compliance flow: Mobile Number -> Profiles -> OTP -> Complete Profile Fetched
- M2: Support walk-in non-ABHA patient discovery via demographic matching (verified mobile, gender, year of birth, name)
- M2: Implement care context linking endpoints (/records/link/init and /records/link/confirm) with OTP verification
- Add abdm_link_transactions database migration
- Support Bearer token and HMAC signature authentication for bridge callbacks over VPN
2026-09-09 17:52:20 +05:30
c82892f3d2 fix(medical-store): add complete base schema migration and devices table for remote server 2026-09-08 05:19:19 +05:30
d2f069e3c8 feat(medical-store): add B2C sales returns, same-invoice exchanges, and DB migrations
- Add B2C same-invoice exchange and pure refund workflows (Marg ERP standard)
- Support returning excess/unused medicines with proportional unit pricing on original invoice
- Auto-net return credits against new medicines in POS cart with refund outflow handling
- Implement stock replenishment for restocked batches with audit trail in mst_stock_audit
- Generate sequential GST Credit Notes in mst_sale_returns and mst_sale_return_items
- Update Thermal 80mm, A5, and A4 print templates with separated dispensed vs returned items
- Add CI4 migration 2026-09-08-000001_CreateMedicalStoreReturnsAndExchanges.php for remote execution
- Add standalone SQL script scripts/sql/2026-09-08_medical_store_b2c_returns_and_exchanges.sql
2026-09-08 05:07:45 +05:30
765286e7fa feat(medical-store): ABDM-compatible multi-building pharmacy, POS desktop keyboard workflow, unit dispensing, and split payments 2026-09-08 02:19:11 +05:30
ee7cf59c49 fix(abdm): enforce clinical decimal precision on vitals and temperature in FHIR bundles and task board 2026-09-07 16:11:24 +05:30
bb6589605a fix(abdm): resolve health document preview hang and wellness record display in task board
- Fix mPDF single-threaded server deadlock by replacing HTTP logo URL fallbacks with inline base64 data URIs
- Add fast path in DoctorDocument to read scanned NABH PDFs directly from disk without mPDF re-rendering
- Support doctor_document and patient_document entity types in task board health document preview
- Enhance task board preview form with in-modal PDF preview, image thumbnail, and download actions
- Populate Composition.encounter with AMB encounter and set Wellness Record display code
2026-09-07 00:46:17 +05:30
f3faa9c96e feat(abdm): integrate Online/ABDM discharge template with PDF attachment in FHIR bundle
- Dynamically resolve and generate PDF using designated Online/ABDM template (is_abdm=1) from ipd_discharge_templates
- Unify mPDF rendering logic between show_discharge and generateDischargeSummaryPdfBinary for exact byte-for-byte consistency
- Attach generated PDF as DocumentReference under SNOMED 373942005 (Discharge summary) in NRCES FHIR DocumentBundle
- Add quick-set actions and AJAX endpoints for Default and ABDM template selection in discharge template list UI
- Update unit tests covering DocumentReference generation and template resolution
2026-09-06 17:55:15 +05:30
9b3d9ef6ee fix(abdm): align IPD discharge summary FHIR bundle with NRCES standards and eliminate NA values in PHR 2026-09-06 08:09:11 +05:30
0e340d5155 fix(abdm): resolve patient row using id instead of p_id in saveIpdDischargeFhir 2026-09-05 20:43:02 +05:30
52f8d9691b feat(abdm): enhance IPD discharge FHIR generator with NRCES v6.5.0 single-coding and structured dosage instructions 2026-09-05 15:29:11 +05:30
4e1d5ed7af Update DischargeFhirGenerator section titles for initial FHIR fixes 2026-09-04 21:45:49 +05:30
a6bb1f7cda fix(fhir): ensure strict canonical display values for SNOMED/LOINC/HL7 codings to prevent PHR validation errors 2026-09-04 20:14:44 +05:30
6525422af4 fix(fhir): fix ABHA PHR app parsing error in discharge FHIR bundle - correct Observation category codes for vitals vs admission/discharge conditions - add missing category to investigation Observations (NRCES profile requirement) - strip empty unit/code from valueQuantity to avoid PHR parser rejection - fix greedy regex in Composition narrative that could produce malformed XHTML - remove 0 from isPlaceholderValue to stop silent stripping of numeric FHIR values 2026-09-04 19:57:17 +05:30
cefa73dbae fix(abdm): add comprehensive Composition XHTML narrative, resource narratives, and section displays for PHR display 2026-09-04 19:34:44 +05:30
1f26c3e4ef fix(abdm): split blood pressure into systolic and diastolic components for LOINC 85354-9 in IPD discharge FHIR 2026-09-04 19:14:55 +05:30
4e748dbaa8 fix(abdm): map admission/discharge encounter period, split vitals by admission/discharge, and attach size/hash to pdf document reference 2026-09-04 06:15:08 +05:30
c238fcfc40 fix(abdm): resolve correct column names for dose master tables in discharge fhir 2026-09-04 06:05:57 +05:30
9bca2630c3 fix(abdm): allow GET/POST for ipd_discharge_fhir_preview and render detailed error in preview modal 2026-09-04 05:55:51 +05:30
6566ec0b77 fix(abdm): handle missing optional params, catch location query exceptions, and safely boot billing controller in IPD discharge preview 2026-09-04 05:51:12 +05:30
5714f9f755 feat(abdm): add Encounter period admission/discharge times and location ward/bed mapping 2026-09-04 05:44:37 +05:30
4776bfb37b Enhance IPD discharge summary FHIR bundle: dual admission/discharge vitals, full medication dosage directions, dietary/discharge advice care plans, and IPD invoice PDF attachment 2026-09-04 05:39:45 +05:30
4058850941 fix(abdm): correct condition categories, snomed resolutions, vital signs and physical exam units in discharge fhir generator 2026-09-04 05:22:45 +05:30
df835008d5 Fix ABDM M1 multi-ABHA account selection payload compatibility and fallback handling 2026-09-03 20:13:46 +05:30
156d12adba Implement ABDM M1 multi-ABHA account selection for Mobile OTP login flow 2026-09-03 16:17:46 +05:30
29ac1ffe66 Update ABDM Work Task Board tab and header name to OPD Consult / Prescription Records 2026-09-03 14:33:37 +05:30
05622a12de Fix Consent ID, Consent Request ID, and date metadata resolution across ABDM client, workflow service, controller, and views 2026-09-03 12:37:11 +05:30
398ad3238e Fix ABDM live status check and reconcile to accurately extract nested EXPIRED, REVOKED, and DENIED consent states without being masked by transport status 2026-09-03 11:44:36 +05:30
e1280b3bbe Fix column name source_id to entity_id in abdm_work_tasks query in show_profile_opd 2026-09-03 06:57:21 +05:30
625c642b02 Fix patient age calculation in IPD discharge search ajax by querying DOB and using get_age_1 helper 2026-09-02 03:51:52 +05:30
adf4433f72 Completely sanitize Edit Remove text artifacts from remark field in IPD discharge 2026-09-02 03:31:23 +05:30
16463d4908 Fix IPD discharge medicine edit form: fix remark field off-by-one cell index and reset When dropdown when empty 2026-09-02 03:22:34 +05:30
2fcfbd922a Enhance IPD discharge summary: OPD-style Prescribed Medicines table for B&W printing, auto generic lookup, and suppress empty discharge summary heading 2026-09-02 02:53:17 +05:30
73780ac7dd fix: IPD discharge RxGroup add - fix UI not updating after apply_rx_group, and Remove All not deleting from DB
- discharge_create.php (JS): Fixed AJAX done handler to JSON.parse the
  raw string response (jQuery with dataType:'html' does not auto-parse
  JSON), then re-render #discharge_medicine_tbody from result.drugRows.
  Also fixed Remove All (#btn_discharge_med_reset) to send AJAX POST
  with action=remove_all_drugs so records are deleted from DB, not just
  cleared from the DOM.

- Ipd_discharge.php (Controller): In the AJAX JSON response block,
  resolve dosage/dosage_when/dosage_freq IDs to human-readable labels
  using getDoseMasterRows() before returning drugRows, so the table
  displays 'BD / After Food' instead of raw numeric IDs. Added new
  remove_all_drugs action that deletes all medicine rows for the IPD
  from both legacy (ipd_discharge_prescrption_prescribed) and classic
  (ipd_discharge_drug) tables. Added remove_all_drugs to both
  lightweight-action whitelists to skip the expensive getIpdPanelInfo()
  join.
2026-09-01 20:24:14 +05:30
b786fe7a08 fix(ipd_discharge): add query error catching and logging to add_drug controller action 2026-09-01 18:28:53 +05:30
e24b71bbc9 fix(ipd_discharge): enable serializeDischargeMedicineTable on form submit and robust JSON response handling 2026-09-01 18:24:50 +05:30
633ea2bbb8 fix(ipd_discharge): enforce strict server DB save confirmation before adding medicine to client DOM 2026-09-01 18:20:13 +05:30
144f0a20d5 fix(ipd_discharge): sync full medicine list on main form submit to replace stale DB entries 2026-09-01 18:15:46 +05:30
3fddb3ca26 fix(ipd_discharge): enable dual-source medicine loading and full form submit medicine sync 2026-09-01 18:07:18 +05:30
1f8651e3b3 fix(ipd_discharge): remove fragile tbody early-return guard in medicine remove handler 2026-09-01 17:51:23 +05:30
fe26588dca fix(ipd_discharge): instant DOM row removal on medicine delete & delete from all drug tables 2026-09-01 17:47:05 +05:30
419c015535 fix(ipd_discharge): update server-rendered medicine remove buttons with btn-remove-discharge-med class for AJAX deletion 2026-09-01 17:43:30 +05:30
bfe14048bc fix(ipd_discharge): resolve status 0 network error on medicine add and sync remove_drug via AJAX 2026-09-01 17:38:09 +05:30
599c4806bb feat(abdm & reports): align ABDM FHIR R4 Wellness & HealthDocument generators, add NABH IPD scanner, balance column in invoice list, and old payment received report 2026-09-01 14:05:17 +05:30
63ee0a19fd feat(nursing): add ABDM M2 wellness vitals, health document scanner, and barcode/QR patient search dock 2026-08-30 13:58:06 +05:30
596a684372 fix(abha): update ABHA Management card heading to 'Verify or Find ABHA Account' 2026-08-30 03:20:04 +05:30
5db3da6403 fix(setting): prevent standard form submit redirect on save button by using explicit AJAX functions and action=javascript:void(0) 2026-08-30 02:55:13 +05:30
f99ddbd851 fix(setting): change property access level to protected in OpdQueueSetting to match BaseController 2026-08-30 02:51:58 +05:30
31b2319419 feat(admin): add OPD Queue TV Settings panel for right-side ads upload, left-side bottom ad space, ticker text editing, and TTS pronunciation fixes 2026-08-30 02:49:59 +05:30
ac5d2710fa feat(pwa): add 5-item page-wise horizontal auto-carousel for left token tracker column 2026-08-30 02:23:03 +05:30
49267e65ec fix(pwa): resolve HEAD HTTP method 404 warning and add narrow mobile screenshot to manifest 2026-08-30 02:07:57 +05:30
c1a532ce95 fix(pwa): route sw.js and manifest.json dynamically with Service-Worker-Allowed header and exact screenshot dimensions 2026-08-30 01:58:52 +05:30
882b036e9e feat(pwa): add OPD Queue & Token Display PWA app with right side ad showcase 2026-08-30 01:04:37 +05:30
8d68afebbd feat(pwa): standardize hospital logo PWA icons and add in-app mobile module switcher 2026-08-30 00:18:15 +05:30
2d68a19584 feat(hms): add Document Type selection dropdown to HMS Desktop Scan Upload Modal and save document_type with badges 2026-08-29 04:45:28 +05:30
888b4039f6 fix(nursing): display Doctor Name on IPD patient bed cards and register all scanned document photos into file_upload_data table for HMS Scan Doc List popup 2026-08-29 04:40:16 +05:30
38573f5b15 fix(nursing): resolve SQL column errors in opdList query, add Doctor filter dropdown, and Vitals Pending/Done status filter buttons 2026-08-29 04:25:57 +05:30
7bdfbab2bd feat(nursing): add OPD Patients list, Fill OPD Vitals, and Document Scan/Camera Upload features to Nursing PWA App 2026-08-29 04:16:08 +05:30
e4c6b398cc fix(hms): resolve base64 photo upload decoding and add professional image thumbnails to HMS Nursing Workspace Treatment Notes 2026-08-29 04:04:03 +05:30
e32feeb8d6 feat(doctor): make header lock button icon-only and add mobile camera photo capture for handwritten doctor notes and prescriptions 2026-08-29 03:55:50 +05:30
7a0631979a feat(doctor): add current date filter for OPD appointments and my assigned vs all hospital admissions toggle for IPDs 2026-08-29 03:41:09 +05:30
d737ec0d1b fix(doctor): resolve IPD patient doctor mapping and add hospital-wide admission fallback 2026-08-29 03:16:25 +05:30
820c904eff fix(doctor): replicate exact HMS getCurrentAdmissions query joining ipd_master_doc_list and bed_assignment_history 2026-08-29 03:08:47 +05:30
5bfe0689f1 fix(doctor): correct IPD query columns (ipd_status, r_doc_id) to list admitted patients assigned to doctor 2026-08-29 03:05:46 +05:30
9665e820ec feat(doctor): copy full native HMS OPD consultation controls, vitals, findings, and direct PDF printing 2026-08-29 03:02:12 +05:30
4a0889a200 feat(doctor): fix Patient Age calculation via get_age_1 and add Full HMS OPD Consult Form modal 2026-08-29 02:59:15 +05:30
1571c23947 fix(doctor): map exact database column names for opd_prescription (date_opd_visit, complaints, diagnosis) and opd_prescrption_prescribed 2026-08-29 02:54:14 +05:30
15a2f28d0d feat(doctor): add OPD appointment queue list with status badges and mobile-optimized consultation prescription form 2026-08-29 02:49:44 +05:30
a6beb124cd feat(doctor): add Doctor App PIN auth, QR generator, DoctorCare EMR PWA (/app/doctor), and bedside clinical tools 2026-08-28 19:44:54 +05:30
405226d66c fix(header): append hmsAppsLauncherModal to document.body to fix modal backdrop overlay issue 2026-08-28 19:34:41 +05:30
e865b71500 fix(header): refactor Apps Launcher script to pure Vanilla JS to prevent $ reference error 2026-08-28 19:31:22 +05:30
6a65fc507d feat(apps): add Top Nav Apps Launcher Icon & 30-Day Device PIN Authentication Memory 2026-08-28 19:27:39 +05:30
7b0b1c3415 feat(auth): add Nurse PIN Security Authentication, App QR Codes, and Lock Screen for NursingCare PWA 2026-08-28 18:45:53 +05:30
3b43d35246 feat(api): add isolated PWA App route gateway and REST API v1 endpoints 2026-08-28 17:44:11 +05:30
345e4f5f99 feat(nursing): add entry history tables and edit capability to Vitals, Fluid, and Treatment panels 2026-08-28 04:01:58 +05:30
5c053422ec feat(nursing): move Nursing Entries History and Scanned Audit Trail to separate left menu tabs 2026-08-28 03:54:54 +05:30
307355f5a7 feat(nursing): add dynamic medical route options for Fluid Intake / Output 2026-08-28 03:26:02 +05:30
9a9dba1f8f fix(nursing): pre-fill saved Admission Snapshot fields and persist active workspace tab 2026-08-28 03:19:44 +05:30
863c17f9bc fix(config): dynamically resolve baseURL from request HTTP_HOST to prevent CORS errors on live servers 2026-08-28 02:46:01 +05:30
69f0e1fa45 feat(nursing): add Nursing Station Master, ABDM credentials to Nurse Master, and Visual Bed Grid at /ipd/patient 2026-08-28 02:43:37 +05:30
7c04828e99 feat(ipd): align IPD Discharge prescribed medicine form design and autotext with OPD Consult 2026-08-27 04:33:10 +05:30
a7727c9d9e fix(abdm): correct mobile ABHA discovery flow
Route Find ABHA via Mobile through standalone bridge OTP endpoints and remove exact placeholder values from generated FHIR bundles.
2026-08-24 23:19:21 +05:30
2ac6babd5d fix(report): prevent collection filter overlap
Give the payment date range more grid space and reduce the employee selector width.
2026-08-24 01:24:56 +05:30
7ec5149ccf feat(ipd): manage admission examination fields
Add an Admin CRUD master for IPD admission examination fields with enabled state, display order, field types, and select options.
2026-08-24 00:53:01 +05:30
40c68da430 fix(report): tolerate legacy IPD surgery schema
Guard optional surgery report joins and return a readable response when a site-specific schema mismatch occurs.
2026-08-24 00:34:47 +05:30
225721ae02 feat(report): add IPD surgery export report
Add a permissioned IPD surgery report combining discharge surgery, patient, diagnosis, OT, and matched billing details.
2026-08-24 00:01:58 +05:30