Commit Graph

1218 Commits

Author SHA1 Message Date
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
83fce47ee1 feat(report): add searchable permissioned IPD census hub
Organize the report hub into permission-filtered searchable panels and add a protected IPD census and discharge report.
2026-08-23 20:36:09 +05:30
8e80bc4a7b fix(dashboard): align OPD referral totals with patient list
Use patient profile referral values for the OPD dashboard, matching the report patient-list source and counts.
2026-08-20 23:50:30 +05:30
9ca9320fee fix(report): include zero-fee OPD visits
Remove the payment-mode exclusion from the OPD patient-list report so it matches dashboard appointment totals.
2026-08-20 23:34:37 +05:30
6a690e80db fix(abdm): separate IPD discharge clinical sections
Map IPD chief complaints, final diagnoses, discharge advice, hospital course, and follow-up into profile-valid discharge FHIR sections.
2026-08-19 05:59:32 +05:30
16be448b6f fix(abdm): align IPD discharge FHIR with NRCES profile
Use mandatory SNOMED discharge composition and section codings, model completed investigations as DiagnosticReportLab resources, and restore local M3 attachment/value-string rendering.
2026-08-19 04:41:27 +05:30
bd557ef709 Add discharge FHIR resource metadata 2026-08-19 03:56:58 +05:30
85720577f3 Add footer margin to discharge template builder 2026-08-18 18:18:37 +05:30
47ee7ca226 Add CKEditor toolbar alignment plugin 2026-08-18 17:58:55 +05:30
93886e3402 Fix discharge editor alignment controls 2026-08-18 17:56:00 +05:30
2113abc318 Add alignment controls to discharge CKEditor 2026-08-18 17:53:43 +05:30
9e35fe41fc Add discharge template CKEditor and watermarks 2026-08-18 17:50:51 +05:30
3b200e0290 Fail open when caching discharge PDF 2026-08-18 17:35:30 +05:30
306f8ef1c4 Refresh mPDF debug snapshot on build 2026-08-18 17:32:24 +05:30
afd0ba8a8c Show runtime mPDF header payload 2026-08-18 17:27:43 +05:30
16de9b0c0c Force discharge header onto first PDF page 2026-08-18 17:26:43 +05:30
f5743be68a Prevent duplicate discharge template content 2026-08-18 17:04:38 +05:30
4d5155a2f8 Avoid @page overriding discharge headers 2026-08-18 17:01:11 +05:30
0dbe4c6f64 Register discharge headers before first page 2026-08-18 16:50:42 +05:30
8a6319ac13 Render discharge template header with mPDF API 2026-08-18 16:46:09 +05:30
8cf0e42765 Activate discharge header with mPDF runtime API 2026-08-18 16:41:46 +05:30
28109df663 Build mPDF debug input on demand 2026-08-18 16:36:53 +05:30
53b79b5297 Add raw mPDF input debugger 2026-08-18 16:33:24 +05:30
ebf23b93e8 Use exact OPD header rendering pattern for discharge 2026-08-18 16:29:43 +05:30
94bcf4d37c Force discharge header on first page 2026-08-18 16:20:04 +05:30
b068fc3be2 Fix @page header activation for body-only template CSS 2026-08-18 16:13:53 +05:30
0ea3fc099a Use correct mPDF CSS-first structure for discharge 2026-08-18 15:59:23 +05:30
4835d34e0e Add Debug HTML button to discharge template editor 2026-08-18 15:55:09 +05:30
e353e5afdc Simplify discharge PDF to plain mPDF fragment 2026-08-18 15:42:01 +05:30
f69d10b417 Move discharge template CSS into PDF head 2026-08-18 15:40:22 +05:30
f9b1e02af8 Fix @page placement for mPDF discharge header 2026-08-18 15:37:22 +05:30
42abe7ed9b Use mPDF htmlpageheader for discharge header 2026-08-18 15:29:13 +05:30
1fec6c8677 Add IPD discharge template builder 2026-08-18 15:18:13 +05:30
e1de6e3215 Apply discharge header margin setting 2026-08-18 14:50:56 +05:30
c26589fa22 Render discharge header in PDF body 2026-08-18 14:48:23 +05:30
ce04de2adf Separate NABH audit template selection 2026-08-18 14:29:09 +05:30
aee50cb52f Rebuild IPD discharge template selection 2026-08-18 14:28:27 +05:30
2e7da51024 Add discharge header mode test buttons 2026-08-18 14:15:39 +05:30
80f9487e8f Show discharge header in HTML debug 2026-08-18 14:11:50 +05:30
8e9fe8fab3 Apply discharge template CSS to print fragments 2026-08-18 14:08:46 +05:30
e0ce677355 Make discharge header field authoritative 2026-08-18 13:58:14 +05:30
0047a0508a Respect blank discharge template headers 2026-08-18 13:46:35 +05:30
80593ba931 Preserve legacy discharge template headers 2026-08-18 13:40:52 +05:30
4b2c44c738 Add OPD patient list to report panel 2026-08-18 13:11:16 +05:30
903478ce59 Add OPD patient list report with refer by 2026-08-18 13:09:03 +05:30
9bec2d2a66 Improve OPD total report filter layout 2026-08-18 13:04:19 +05:30
16f244f6be Add Refer By OPD template placeholder 2026-08-18 13:00:28 +05:30
662aeed7f1 Include full days in OPD total report 2026-08-18 12:55:32 +05:30
cac5e3c4ec Clear OPD modal backdrop during navigation 2026-08-18 12:50:10 +05:30
95026b4cfd Fix ABDM OPD queue modal redirects 2026-08-18 12:25:55 +05:30
1bd93be698 fix(abdm): treat empty HIU sessions as pending, not failure
The bridge reply 'No HIU sessions found matching the criteria' means the facilities have not sent records yet. The consent-status step already handled that wording, but the data-fetch steps surfaced it as 'Auto flow failed'. Share the check via isPendingBridgeSessionError() and report a pending state that keeps polling.
2026-08-18 03:15:09 +05:30
fb2bfb8a8c fix(abdm): stamp consent status on its own request row
Reconciled status lived only on a separate reconcile row, whose correlation back to a session was rebuilt on every page load, so denied/expired requests reverted to REQUESTED after reopening. Write GRANTED/DENIED/EXPIRED/REVOKED onto the session's own consent_request row and treat a stamped terminal state as authoritative.
2026-08-18 03:11:09 +05:30
c6f415cfdc fix(abdm): file consent status under the right request
consent_request anchor rows only registered their HMS request_id, so reconcile rows (which carry the ABDM consent_request_id) matched nothing and fell back to the newest open session. A DENIED result therefore landed on the granted session, where GRANTED outranks it, and the denied request kept showing REQUESTED. Anchors now publish their ABDM ids, and the open-session fallback applies only when the row names no consent request or that session has not resolved its ABDM id yet.
2026-08-18 03:03:59 +05:30
1dbac7b367 fix(abdm): reconcile every open consent request
Check Live Status only reconciled the newest consent request, so requests the patient later denied or let expire in the PHR app stayed at REQUESTED. Reconcile all non-terminal sessions, expose each session request_id, and let a later revoked/expired/denied row override an earlier granted one.
2026-08-18 02:51:19 +05:30
7ae9a77d29 fix(abdm): save enrolment mobile on ABHA-created patients
ABDM does not echo the alternate mobile in aadhaar/verify-otp, so patients created from that response were saved without a phone number. Fall back to the enrolment mobile ABDM accepted, flag its origin via mobile_source, and state the origin in the wizard.
2026-08-18 02:51:14 +05:30
8be64239d5 fix(abdm): stop ABHA flow after Aadhaar-created account
ABDM v3 creates the ABHA inside aadhaar/verify-otp when an alternate mobile is supplied. HMS then ran a standalone mobile OTP login, which returned whichever ABHA owned that number (e.g. the parent's) and overwrote the child's record. Skip that step when an ABHA number is returned and show the operator an explicit alternate-mobile status instead.
2026-08-18 02:31:44 +05:30
841b15d27b fix(abdm): bind alternate mobile to enrolment
Use the dedicated Bridge enrolment-mobile OTP endpoints for child/dependent ABHA creation and reject any alternate-mobile response whose ABHA differs from the Aadhaar-verified identity.
2026-08-18 02:13:47 +05:30
c8f44e4493 fix(abdm): complete ABHA creation workflow
Split official and hospital ABHA cards, preserve profile/photo updates, improve existing-patient matching, require and forward communication mobile data, and show accurate Bridge OTP status and errors.
2026-08-17 06:43:37 +05:30
2e8304636b feat(abdm): add digital share records
Generate standardized Digital Share PDFs for invoice and diagnostic records, strengthen FHIR document validation and sync handling, and keep task-board submissions AJAX-only.
2026-08-16 17:35:42 +05:30
625987955e feat(abdm): improve bridge record delivery
Add NAT-safe Immunization and InvoiceRecord Bridge workflows, stable care-context handling, ABHA address enrichment, embedded invoice PDFs, M2 status synchronization, and strict Bridge response normalization.
2026-08-16 01:30:11 +05:30
68d256d9ba Retain ABDM audit trail 30 days and strip payloads after 2 2026-08-15 03:16:47 +05:30
2d13ba567e Store Aadhaar encrypted with masked display and hash-based search 2026-08-15 03:16:40 +05:30
00b949ad0a Push M2 records to gateway for NAT deployment and cover all 8 HI types 2026-08-15 03:16:32 +05:30
b25ab98fd7 Fetch official ABHA card and surface bridge card provenance 2026-08-15 03:16:25 +05:30
b4714270a9 Add combined ABDM log prune command and api log index 2026-08-14 13:14:13 +05:30
076b18de62 Prune abdm_api_logs and abdm_hiu_workflows to 2-day retention 2026-08-14 13:14:02 +05:30
d85b3f5998 Add 2-day retention pruning for abdm_hiu_workflows 2026-08-14 11:52:49 +05:30
a55c6899f0 Fix ABHA create profile card and photo handling 2026-08-14 04:10:55 +05:30
32d43ce02a Add ABDM OPD queue navigation for reception 2026-08-14 02:33:18 +05:30
d4d0e9cd82 Remove ABHA card download from mobile OTP modal 2026-08-14 02:14:33 +05:30
52dc9fb5fd Read top-level gateway_patient and card fields 2026-08-14 00:33:17 +05:30
be2c78914f Keep ABHA modals open when patient already linked 2026-08-14 00:07:12 +05:30
2103215077 Fetch official ABHA card on mobile OTP verification 2026-08-13 23:59:22 +05:30
7047d00ae4 Move mobile OTP verification into a modal 2026-08-13 23:51:32 +05:30
dfb669e8ed Fix ABHA Management panels and facility QR print 2026-08-13 23:40:57 +05:30
3ce584ddc8 Use QR scanner modal only for ABHA QR registration 2026-08-13 20:10:03 +05:30
6a6895ce35 Add ABHA QR scan registration flow 2026-08-13 19:51:14 +05:30
3470244061 Keep ABHA modals open until closed by operator 2026-08-13 19:35:58 +05:30
ea1945d842 Skip match modal when ABHA already linked 2026-08-13 19:29:07 +05:30
7cb57b5b28 Match ABHA patients by exact identifier or demographics 2026-08-13 19:23:46 +05:30
bc5fdb8c63 Fix ABHA patient matching for DD-MM-YYYY dates 2026-08-13 19:14:00 +05:30
167a68362a Distinguish official ABHA card from generated fallback 2026-08-13 19:05:36 +05:30
1f4e8fa0cd Send patient X-Token when fetching ABHA card 2026-08-13 18:36:25 +05:30
22e960a834 Detect ABDM Bridge test-mode address responses 2026-08-13 18:13:12 +05:30
d0a0bf984e Fix ABHA card fetch and address suggestions 2026-08-13 17:41:31 +05:30
3e70ff8c4a Redesign ABHA Aadhaar creation flow 2026-08-13 17:11:48 +05:30
73ad7ef11f Store ABHA card and improve patient comparison 2026-08-13 11:30:02 +05:30
6a670d4c48 Refine ABHA patient matching criteria 2026-08-13 11:21:38 +05:30
48d6073a37 Fix false ABHA candidate name matches 2026-08-13 11:15:53 +05:30
fe9f46cb65 Consume enriched ABHA gateway response 2026-08-13 11:03:53 +05:30
c698d5df32 Preserve complete ABHA verification profile 2026-08-13 10:57:38 +05:30
a5447cb83a Complete ABHA account verification flow 2026-08-13 10:36:20 +05:30
d10f49c482 Restore finance medical credit workflow and update help 2026-08-12 16:17:25 +05:30
870fed5dcd fix: correct medical org grid columns 2026-08-12 15:32:09 +05:30
6ad28dd960 fix: restore medical payout routes and labels 2026-08-12 15:24:23 +05:30
d289bb5be1 feat: add OT workflow and allow zero payments 2026-08-12 13:38:25 +05:30
670f6d3f1f fix: respect configured discharge template content 2026-08-10 14:58:50 +05:30
4ca463cc1e feat: add payment editing and fix discharge templates 2026-08-10 14:48:33 +05:30
681ad44a69 fix: show access denied page for permission failures 2026-08-10 12:30:32 +05:30
711b093487 feat: add IPD nursing and discharge permissions 2026-08-10 00:55:18 +05:30
bd9b1771a9 feat: add clinical drill-down dashboards
Add interactive OPD, IPD, and diagnosis dashboards with historical date ranges, KPI summaries, doctor and department workload, referral breakdowns, and diagnostic workflow statuses.
2026-08-10 00:21:55 +05:30