From ce04de2adf62d7b6238704507083b8f122fbdae2 Mon Sep 17 00:00:00 2001 From: DevSoftTech Server Date: Tue, 18 Aug 2026 14:29:09 +0530 Subject: [PATCH] Separate NABH audit template selection --- app/Controllers/Ipd_discharge.php | 12 ++++++++++- app/Views/billing/ipd/discharge_preview.php | 23 +++++++++++++++++++++ 2 files changed, 34 insertions(+), 1 deletion(-) diff --git a/app/Controllers/Ipd_discharge.php b/app/Controllers/Ipd_discharge.php index 1d5caf0..9fa7523 100644 --- a/app/Controllers/Ipd_discharge.php +++ b/app/Controllers/Ipd_discharge.php @@ -7126,6 +7126,15 @@ class Ipd_discharge extends BaseController $templatePack = $this->applyDischargeTemplate($content, $panelData, $requestedTemplateId > 0 ? $requestedTemplateId : null); $nabhAudit = $this->buildNabhAuditChecklist($ipdId, $panelData); + $allTemplateRows = $templatePack['templates'] ?? []; + $printableTemplateRows = array_values(array_filter( + $allTemplateRows, + fn (array $template): bool => ! $this->isDischargeAuditTemplate($template) + )); + $auditTemplateRows = array_values(array_filter( + $allTemplateRows, + fn (array $template): bool => $this->isDischargeAuditTemplate($template) + )); return view('billing/ipd/discharge_preview', [ 'ipd_id' => $ipdId, @@ -7133,7 +7142,8 @@ class Ipd_discharge extends BaseController 'person_info' => $panelData['person_info'] ?? null, 'content' => $content, 'rendered_content' => (string) ($templatePack['rendered_html'] ?? $content), - 'template_rows' => $templatePack['templates'] ?? [], + 'template_rows' => $printableTemplateRows, + 'audit_template_rows' => $auditTemplateRows, 'selected_template_id' => (int) ($templatePack['selected_template_id'] ?? 0), 'selected_template_name' => (string) ($templatePack['selected_template_name'] ?? ''), 'nabh_audit' => $nabhAudit, diff --git a/app/Views/billing/ipd/discharge_preview.php b/app/Views/billing/ipd/discharge_preview.php index ba4d6c2..7c5afd0 100644 --- a/app/Views/billing/ipd/discharge_preview.php +++ b/app/Views/billing/ipd/discharge_preview.php @@ -7,6 +7,7 @@ $renderedHtml = (string) ($rendered_content ?? $previewHtml); $noticeText = (string) ($notice ?? ''); $noticeType = (string) ($notice_type ?? 'success'); $templateRows = $template_rows ?? []; +$auditTemplateRows = $audit_template_rows ?? []; $selectedTemplateId = (int) ($selected_template_id ?? 0); $nabhAudit = is_array($nabh_audit ?? null) ? $nabh_audit : []; $nabhItems = is_array($nabhAudit['items'] ?? null) ? $nabhAudit['items'] : []; @@ -165,6 +166,17 @@ if ($person) { + +
+ + +
+
@@ -253,6 +265,7 @@ if ($person) { var printLinks = document.querySelectorAll('.discharge-print-link'); var applyTemplateForm = document.getElementById('discharge_template_apply_form'); var tplSelector = document.getElementById('tpl_selector'); + var auditTplSelector = document.getElementById('audit_tpl_selector'); function confirmNabhPrint() { if (nabhCriticalMissingCount <= 0) { @@ -293,6 +306,16 @@ if ($person) { }); } + if (auditTplSelector) { + auditTplSelector.addEventListener('change', function() { + var tplId = parseInt(auditTplSelector.value || '0', 10); + if (tplId <= 0) { + return; + } + openUrl('/' + ipdId + '/1?tpl=' + encodeURIComponent(String(tplId))); + }); + } + printLinks.forEach(function(btn) { btn.addEventListener('click', function() { if (!confirmNabhPrint()) {