0c87ff02e0
Rename payout summary label to No. of Invoices
2026-04-30 02:18:18 +05:30
c95723fa6b
Add IPD-level selection checkbox and group totals in payout pool
2026-04-30 02:12:44 +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
8533c826d0
Use GET for invoice draft DataTable ajax to avoid CSRF empty results
2026-04-30 01:56:40 +05:30
9c30d0c362
Add DataTables-compatible reload fallback for invoice draft filter
2026-04-30 01:54:18 +05:30
2844585714
Fix invoice draft Apply filter to use AJAX DataTable reload
2026-04-30 01:51:21 +05:30
6c9030a337
Fix credit payout pool reload for DataTables API compatibility
2026-04-30 01:46:25 +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
de3b940448
Increase top navigation icon size and spacing to prevent accidental clicks
2026-04-28 08:31:03 +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
3ec7e60fcb
Allow allowedHostnames via .env and document usage
2026-04-28 06:32:29 +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
fdd3256ecb
fix: add patient history back navigation and restore patient search datatable
2026-04-27 12:05:43 +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
4a4ef5b677
fix: replace all CDN dependencies with local assets for offline use (DataTables, Select2, CKEditor4, Google Fonts removed)
2026-04-25 09:20:16 +05:30
67b4006d39
fix: use db->getFieldNames() instead of hasField() in migration for reliable column existence check
2026-04-25 09:11:15 +05:30
846e21ce4b
billing: add consult history action labels in profile and search
2026-04-22 11:45:38 +05:30
7d09bc3354
billing: refine consult history modal header and close action
2026-04-22 11:21:05 +05:30
2e76aab171
billing: make OPD scan modal fullscreen
2026-04-22 11:14:22 +05:30
29c6e971e4
billing: add OPD scan modal zoom/pan/rotate hotkeys and help text
2026-04-22 11:11:06 +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
1d2bfdb7a6
finance: replace OPD payout draft prompt edit with modal form
2026-04-22 10:24:26 +05:30
eb13872f43
Finance bank audit: settlement tab/filter refinements, bank-only selection, and summary metrics
2026-04-21 19:06:16 +05:30
030f674f05
Add icon-only shortcut links to top nav bar (Patient, IPD, OPD Appointment, Pharmacy)
2026-04-18 13:56:00 +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
058debb593
Respect formulation in duplicate medicine report groups
2026-04-17 09:53:02 +05:30
07916f3baf
Allow same medicine name with different formulation in OPD save
2026-04-17 09:48:30 +05:30
b98b1e6f4a
Fix predefined advice +Add firing twice due to duplicate document event binding
2026-04-17 05:22:45 +05:30
7612d738aa
Make OPD scan list delete self-contained AJAX with inline CSRF sync
2026-04-17 04:50:40 +05:30
4d46ad1492
Fix scan list delete button blocked by carousel overlay on single-image view
2026-04-17 04:48:13 +05:30
f7c419c25e
Harden OPD scan delete link fallback when modal CSRF helpers are unavailable
2026-04-17 04:45:35 +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
56a0fb83a4
Fix consult examination autocomplete selection behavior
2026-04-17 03:21:34 +05:30
1084ef8875
Fix: {{advice}} prints as-is (no Hindi/AI conversion); fix Schema Diff truncation
2026-04-16 12:31:42 +05:30
5ce3461a0c
Update master DB schema snapshot
2026-04-15 09:55:13 +05:30
68288622a0
Update master schema/seed snapshots and Medical backpanel changes
2026-04-15 08:39:47 +05:30
c9daddddf3
Fix: Cast port to int and DBDebug to boolean from env()
2026-04-15 08:28:28 +05:30
48ee8b4156
Fix: Load database credentials in constructor to avoid constant expression errors
2026-04-15 08:22:39 +05:30
52556e9f9c
Move database credentials to .env for security best practices
2026-04-15 08:19:40 +05:30
85ce007b26
Rename investigation toggle to Custom Investigation
2026-04-14 22:03:16 +05:30
287b0eb603
Adjust investigation toolbar buttons
2026-04-14 21:57:04 +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
3cef35c832
Make OPD medicine duplicate detection strength-aware
2026-04-13 12:34:54 +05:30
779dbcbaa1
Show formulation with medicine name in OPD medicine list
2026-04-13 12:28:01 +05:30
93fe7741fa
Show medicine formulation in OPD medicine autotext suggestions
2026-04-13 12:22: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
920f1033c0
fix: compute print total_no_visit from opd_master records
2026-04-10 21:28:15 +05:30
b50d72207e
refactor: set number input step to 1 across views
2026-04-10 21:16:25 +05:30
d16a363a92
fix: recalculate IPD billing on panel open, bill-details, and print
2026-04-10 21:11:24 +05:30
9297849c8a
fix: correct IPD balance display when computed balance is zero
2026-04-10 21:07:01 +05:30
6782aee1a4
fix: use computed item totals for IPD gross/net in bill views
2026-04-10 21:03:17 +05:30
a850e3229a
fix: close lingering complaint autocomplete suggestions in consult form
2026-04-10 18:36:26 +05:30
2c3552ac07
fix: include medicine qty in {{medical}} consult print placeholder
2026-04-10 14:27:35 +05:30
54d0afaf95
fix: default OPD appointment filter to Waiting on load and refresh
2026-04-10 14:14:14 +05:30
5ed2bd13ae
fix: include opd continuation template field in doctor template mappings
2026-04-10 13:42:23 +05:30
e1968e4b1d
db: Add opd_cont_paper_print column to doctor_master table
2026-04-10 13:28:03 +05:30
385183fbe2
feat: Add Print Cont. Paper template selection to Doctor Master
2026-04-10 13:19:47 +05:30
910f46b06c
feat: add Doctor Master OPD validity editing with hospital fallback
...
- Add OPD Validity (Days) field in Doctor add/edit forms\n- Save/update doctor_master.opd_valid_no_days from Doctor module\n- Use hospital_setting fallback keys when doctor validity is blank/zero\n- Apply fallback consistently in OPD showfee, print expiry, and running_opd lookup window\n- Supports hospital-wide defaults while preserving doctor-specific overrides
2026-04-10 12:58:17 +05:30
eec0642466
fix: OPD running validity period no longer extends per running visit
...
OpdModel.php:
- running_opd_id lookup now uses doctor's configured opd_valid_no_days
instead of hardcoded 4 days (resolveRunningLookupDate helper)
- Doctors with validity > 5 days now correctly link running OPD back
to the original paid OPD even on days 5..N of the window
Opd.php (buildOpdLetterPrintData):
- For running OPD entries (running_opd=1 or opd_fee_type=3), expiry
display now shows "OPD Start Date: [paid visit] | Valid Upto: [paid
visit + validity]" using old_opd record — mirrors Opd_print_1 legacy
behavior and prevents validity window from advancing with each visit
2026-04-10 12:48:28 +05:30
21ddeefe40
fix: Running OPD zero-value validity, update_doc_field HTTP 500, PDF Unicode font (Devanagari)
...
- Opd.php showfee(): exclude zero-amount OPD from validity window query
- Opd.php confirm_opd(): anchor last_opdvisit_date to most recent paid OPD for zero-value running
- Opd.php buildOpdLetterPrintData(): use paid OPD start date for expiry on zero-value entries
- OpdModel.php insertOpd(): exclude fee_type=3/zero-amount from running_opd_id lookup; anchor visit count to paid OPD start when isZeroValueRunning
- DoctorDocument.php update_doc_field(): wrap in try/catch, schema-safe payload via filterPayloadByExistingColumns, structured JSON errors
- DoctorDocument.php create_final(): configure mPDF with FreeSans/FreeSerif (GNU FreeFont), useOTL=0xFF, autoScriptToLang=true for Devanagari/Hindi rendering
- doc_letterhead_print.php: add body/p/td/th font-family freesans for PDF Unicode output
2026-04-10 12:30:15 +05:30
a81162f954
Polish payment request alert wording
2026-04-10 04:20:14 +05:30
ba16e9d635
Fix missing mPDF footer template in org payment receipt
2026-04-10 04:17:24 +05:30
433b89f426
Fix payment request receipt content and PDF print
2026-04-10 04:16:17 +05:30
385c977d88
Auto-mark OPD visited on consult save or print
2026-04-10 03:59:10 +05:30
6a0660cad7
Show patient age and gender in OPD list
2026-04-10 03:55:00 +05:30
c534a83ad2
Normalize OPD queue display per doctor day
2026-04-10 03:44:32 +05:30
5a6ca034cd
Prevent duplicate Consult button in waiting rows
2026-04-10 03:35:27 +05:30
c7997c34aa
Sync OPD screen with live digest and row snapshot
2026-04-10 03:32:08 +05:30
fd21f24c45
Fix OPD status badges to use full DataTable counts
2026-04-10 03:20:15 +05:30
7f131aeae8
Add OPD doctor/date update endpoint and invoice validation feedback
2026-04-09 19:47:57 +05:30
b4ae081d28
Add refer doctor filter to diagnosis report
2026-04-09 19:11:39 +05:30
bb066399f9
Set OPD Total Report default dates to today
2026-04-09 19:03:31 +05:30
aa2e092758
Add OPD Total Report with doctor/type/fee filters
2026-04-09 18:44:35 +05:30