b702ff6fdc
feat: complaint Extract Codes button with SNOMED chip review panel
...
- Add 'Extract Codes' button to complaint lookup input
- Parse free-text with duration/severity extraction (regex: 3 days, moderate etc)
- Call Opd_prescription/complaints_extract endpoint -> local SNOMED FULLTEXT
- Render inline chip cards: term, concept_id, duration, severity, confidence%
- Doctor clicks confirm (green tick) or reject (red x) per chip in seconds
- Confirm pre-fills duration+severity in complaint table row automatically
- 'Confirm All' bulk action; Dismiss clears panel
- Add complaints_extract controller method + parseComplaintFreeText helper
- Add route Opd_prescription/complaints_extract
2026-05-19 22:30:23 +05:30
a56e8a5776
feat: SNOMED background coding pipeline + ABDM Coding Panel
...
- Add opd_coding_queue + opd_snomed_suggestions migrations
- Add ProcessSnomedCoding spark command (cron: snomed:process-coding)
Extracts clinical phrases, matches local SNOMED FULLTEXT, saves suggestions
- Add AbdmCodingPanel controller: index/review/confirm/reject/correct/mark_fhir_ready/tip_check
- Add coding_panel + coding_panel_review views (Bootstrap 5, AJAX actions)
- Inject queue trigger in opd_prescription_save (fail-open, ON DUPLICATE KEY)
- Add consult form tip badge: polls tip_check 4s after save, shows review link
- Add AbdmCodingPanel routes behind abdm permission filter
- Various ABDM gateway, FHIR, ABHA, SNOMED library updates
2026-05-19 20:40:27 +05:30
0628f8f813
feat: ABDM OPD Queue + ABHA Register flow + patient ABHA search fix
...
ABDM OPD Queue (today):
- New EAtriaBridgeConnector: opdQueueFetch/opdTokenCreate/opdTokenUpdateStatus + patch() helper
- New AbdmOpdQueue controller: index/list/fetchQueue/createToken/updateTokenStatus/processScannedToken
- fetchQueue syncs gateway tokens into abdm_opd_tokens (local DB) and enriches with HMS patient data
- processScannedToken auto-finds/creates patient_master record from ABHA scan data, marks token CALLED
- New migration: abdm_opd_tokens table (gateway_token_id, source, status, patient_id, opd_id, processed_at)
- New view: abdm/opd_queue.php - reception screen with auto-refresh 30s, HMS Patient column (green row when OPD registered)
- Sidebar: ABDM OPD Queue nav link added
- Routes: AbdmOpdQueue with abdmPermFilter
ABHA Register tab (earlier this session):
- New Abha controller: initiate/verifyOtp/communication/verifyCommOtp/validateAbha/card + autoCreateOrFindPatient
- New views: abha/card.php, partials/abha_create_panel.php, partials/abha_otp_modal.php
- Patient_V.php: ABHA Register tab with 4-method wizard (ABHA number, QR scan, facility QR, mobile OTP)
Patient ABHA search fix:
- Patient::search() now detects ABHA column (abha_id/abha_no/abha/abha_address) and searches by it
ABDM Bridge infrastructure:
- EAtriaBridgeConnector: new connector for e-atria.in ABDM bridge gateway
- AbdmConnectorFactory/Interface updated
- AbdmGatewaySettings controller + view
- SNOMED/CSNOTK terminology service skeleton
- Finance payout OPD consult views
- Migration: AddAbdmPushFieldsToOpdAndPatient, CreateSnomedCoreTables
- Docs: abdm/ API specs, architecture, gateway guides
2026-05-16 04:21:31 +05:30
f311d50745
OPD consult: add women history fields, persist in history, update print sections
2026-05-12 12:52:13 +05:30
38a63a628b
abdm: add connector adapter pattern (Interface/Factory/Dreamsoft/Direct) + refactor AbdmGateway
2026-05-08 23:10:24 +05:30
5d5c9656ea
billing: improve patient name display on consult form and history page
2026-05-08 13:49:37 +05:30
fbb03a6abb
billing: redesign ABHA wizard, enhance patient info panels and consult page photo/layout
2026-05-08 13:29:57 +05:30
3c4dff6285
Improve doctor document workflow and print performance
2026-05-06 02:06:18 +05:30
be6f0cd6d0
Set OPD appointment list default order to descending
2026-05-05 22:56:57 +05:30
7ab37ad80d
Finance: separate OPD Consult and Doctor Charges payout screens; compact dashboard cards; add IPD payout tracking migration
2026-05-01 21:02:57 +05:30
44dee3e3d5
Show IPD payout pool as invoice-level rows under IPD grouping
2026-04-30 02:09:26 +05:30
ced87420b4
Remove payout invoice column and align datatable ordering for grouped pool
2026-04-30 02:05:07 +05:30
e72e5590ff
Fix invoice table date filtering to return matching rows
2026-04-30 01:58:19 +05:30
36d3fa843b
Implement medical store credit payout workflow and optimize payout pool DataTable grouping
2026-04-30 01:42:03 +05:30
ec6ceaea98
Add dedicated Save Settings button for user preferences
...
- Add separate Save Settings button below User Settings card
- Create myProfileSaveSettings controller method for dedicated settings save
- Settings save endpoint: POST /my-profile/save-settings
- Validates sidebar_auto_hide_seconds (0-60 range)
- Provides immediate feedback: success/error message display
- Separate from profile photo and password updates
- Message auto-hides after 2 seconds on success
2026-04-28 13:54:46 +05:30
5717763496
Add user-based sidebar auto-hide setting, movable from hospital default
...
- Create user_settings table to store individual user preferences
- UserSettings model for get/set/delete user setting values
- Home::myProfile loads user settings with hospital defaults fallback
- Home::myProfileSave persists user settings to DB
- my_profile.php adds Sidebar Auto-Hide Delay field (0-60 seconds)
- welcome_message.php checks user settings first, then hospital default
- Setting value 0 = auto-hide disabled; blank = use hospital default
- Extensible table design for future user settings (color theme, etc)
2026-04-28 13:47:46 +05:30
0aa0edbbce
Fix OPD confirm payment flow and DataTable initialization
...
- Opd.php: mode-0 (zero amount) no longer inserts payment_history row
and skips HealthPlix sync for faster confirm
- Opd.php: added spid-based idempotency for cash/card to prevent
duplicate payment_history rows on retry
- Opd.php: invoice view hides 0-amount payment_history rows
- opd_appointment_list.php: fix isDataTable call (DataTable -> dataTable)
- jquery.dataTables.min.js: replace non-functional shim with real
DataTables 1.13.8 (supports ext.search, isDataTable, rows() API)
2026-04-28 12:01:53 +05:30
baba5521dd
Fix dashboard and OPD counts for DATETIME appointment_date
2026-04-28 11:23:06 +05:30
5226fde8a0
Fix OPD appointment datetime display and date filtering
2026-04-28 10:59:04 +05:30
6a5519388e
Make HealthPlix Doctor Identifier field optional in Doctor Master
2026-04-28 08:22:00 +05:30
bd274a3fc3
Add OPD appointment time capture and storage with date+time display
2026-04-28 07:59:47 +05:30
cef10f70e1
Reflect actual HealthPlix fetch secret save state
2026-04-28 07:40:22 +05:30
cab7bbd3a6
Fix HealthPlix fetch parsing and refine sidebar headings
2026-04-28 07:28:34 +05:30
cc5018568b
Add HealthPlix fetch callback endpoint and Apache proxy rollout templates
2026-04-28 06:29:29 +05:30
d230d8960d
feat: add configurable sidebar auto-hide in hospital settings
2026-04-27 14:32:31 +05:30
6ae9a3516f
feat: add HealthPlix OPD sync flow with settings, diagnostics, and sync ID persistence
2026-04-27 08:32:51 +05:30
f610adf2fe
feat: add user profile photo upload and show avatar in header
2026-04-25 09:52:21 +05:30
d02244444e
finance/storestock: implement cash submission audits, bank settlements, and opd payout tracking
2026-04-22 10:53:20 +05:30
7e4903bd68
billing: add patient history action and legacy-style OPD history view
2026-04-22 10:33:29 +05:30
eb13872f43
Finance bank audit: settlement tab/filter refinements, bank-only selection, and summary metrics
2026-04-21 19:06:16 +05:30
fbbecee3b4
feat(ipd-charges): group delete, sort order, Up/Down buttons, foldable billing panels
...
- Safe delete for empty IPD charge groups with CSRF-safe AJAX
- Migration: add sort_order to ipd_item_type (backfilled)
- Sort order UI on create/edit/list views; persist in controller/model
- Up/Down swap buttons on group list (AJAX swap endpoint + CSRF refresh)
- Fix 500 on edit screen: restore missing getItemTypeById() in ItemIpdModel
- IpdBillingModel: propagate sort_order ordering to ipd-charges and bill-details tabs
- Billing IPD Charges tab: Bedside Clinical/Nursing Charge and Doctor Visit Charge panels now collapsible, start collapsed
2026-04-18 06:56:38 +05:30
07916f3baf
Allow same medicine name with different formulation in OPD save
2026-04-17 09:48:30 +05:30
1cea1495fc
Fix OPD scan delete button for direct file-list page and AJAX modal
2026-04-17 04:41:45 +05:30
a0b724e30d
Fix serve_legacy_upload to also check public/uploads/ (FCPATH)
2026-04-17 04:20:49 +05:30
58ddd77d42
Add fallback route to serve legacy CI3 uploads from project-root uploads/
2026-04-17 04:16:08 +05:30
11fe14089d
Stop auto-filling prescription remarks from structured allergy fields
2026-04-17 03:50:01 +05:30
ec872c984c
Strengthen OPD autocomplete normalization for spacing and punctuation variants
2026-04-17 03:41:01 +05:30
47423a7d38
Normalize OPD autocomplete suggestions and add one-time cleanup command
2026-04-17 03:31:33 +05:30
1084ef8875
Fix: {{advice}} prints as-is (no Hindi/AI conversion); fix Schema Diff truncation
2026-04-16 12:31:42 +05:30
aae6211f48
Add investigation shortcuts manager panel
2026-04-14 21:51:49 +05:30
57397d80e1
Fix OPD print remarks leaking NABH allergy lines
2026-04-14 08:34:46 +05:30
5801b5d276
Refine {{medical}} table widths and instruction row styling
2026-04-14 07:50:50 +05:30
b97bb74a5d
Reformat {{medical}} rows with wide instruction line
2026-04-14 07:43:07 +05:30
0b2ae6ccc1
Broaden consult search candidates for phonetic medicine matches
2026-04-13 13:04:01 +05:30
992fd83ff2
Normalize separator variants in consult medicine SQL search
2026-04-13 12:57:16 +05:30
9e30d69487
Add phonetic matching for consult medicine search
2026-04-13 12:54:33 +05:30
05ff049526
Improve consult medicine search normalization and duplicate blocking
2026-04-13 12:46:42 +05:30
f99f48b62f
fix: restrict scan delete to 24h or same date
2026-04-11 04:49:59 +05:30
7233f5979e
feat: auto visit-done on scan save and add scan delete actions
2026-04-11 04:45:45 +05:30
f748224cd0
fix: count OPD visits up to printed opd date
2026-04-10 21:30:47 +05:30