diff --git a/app/Controllers/Ipd_discharge.php b/app/Controllers/Ipd_discharge.php index abcf49c..bdb6669 100644 --- a/app/Controllers/Ipd_discharge.php +++ b/app/Controllers/Ipd_discharge.php @@ -5884,6 +5884,15 @@ class Ipd_discharge extends BaseController if (empty($legacyDrugRows)) { $legacyDrugRows = $this->byIpdRows('ipd_discharge_prescription_prescribed', ['id', 'med_name', 'med_type', 'dosage', 'dosage_when', 'dosage_freq', 'no_of_days', 'qty', 'remark'], 'id ASC', $ipdId); } + + // Load dose master maps for label display + $doseMasterMaps = [ + 'dose' => $this->getDoseMasterRows('opd_dose_shed'), + 'when' => $this->getDoseMasterRows('opd_dose_when'), + 'freq' => $this->getDoseMasterRows('opd_dose_frequency'), + 'where' => $this->getDoseMasterRows('opd_dose_where'), + ]; + $diagnosisRemarkRow = $this->firstRowByIpd('ipd_discharge_diagnosis_remark', $ipdId); $courseRemarkRow = $this->firstRowByIpd('ipd_discharge_course_remark', $ipdId); $instructionRow = $this->firstRowByIpd('ipd_discharge_instructions', $ipdId); @@ -6003,6 +6012,7 @@ class Ipd_discharge extends BaseController 'inhos_remark' => (string) ($inhosRow['comp_remark'] ?? ''), 'other_exam_text' => (string) ($otherExamParsed['text'] ?? ''), 'next_visit_options' => $this->getNextVisitOptions(date('Y-m-d')), + 'dose_master_maps' => $doseMasterMaps, ]); } diff --git a/app/Views/billing/ipd/discharge_create.php b/app/Views/billing/ipd/discharge_create.php index 1c241c7..42a08e3 100644 --- a/app/Views/billing/ipd/discharge_create.php +++ b/app/Views/billing/ipd/discharge_create.php @@ -87,6 +87,17 @@ $diagnosisRows = $diagnosis_rows ?? []; $courseRows = $course_rows ?? []; $drugRows = $drug_rows ?? []; $legacyDrugRows = $legacy_drug_rows ?? []; +$doseMasterMaps = $dose_master_maps ?? ['dose' => [], 'when' => [], 'freq' => [], 'where' => []]; + +// Helper function to get dose label from ID +$getDoseLabel = function($id, $type) use ($doseMasterMaps) { + $id = (int) $id; + if ($id <= 0 || !isset($doseMasterMaps[$type][$id])) { + return ''; + } + return $doseMasterMaps[$type][$id]['label'] ?? ''; +}; + $medicineRows = []; if (! empty($legacyDrugRows)) { foreach ($legacyDrugRows as $row) { @@ -95,9 +106,9 @@ if (! empty($legacyDrugRows)) { 'source' => 'legacy', 'med_name' => (string) ($row['med_name'] ?? ''), 'med_type' => (string) ($row['med_type'] ?? ''), - 'dosage' => (string) ($row['dosage'] ?? ''), - 'dosage_when' => (string) ($row['dosage_when'] ?? ''), - 'dosage_freq' => (string) ($row['dosage_freq'] ?? ''), + 'dosage' => $getDoseLabel($row['dosage'] ?? 0, 'dose'), + 'dosage_when' => $getDoseLabel($row['dosage_when'] ?? 0, 'when'), + 'dosage_freq' => $getDoseLabel($row['dosage_freq'] ?? 0, 'freq'), 'no_of_days' => (string) ($row['no_of_days'] ?? ''), 'qty' => (string) ($row['qty'] ?? ''), 'remark' => (string) ($row['remark'] ?? ''), @@ -1275,7 +1286,12 @@ $allergyStatusNoKnown = in_array($allergyStatusNormalized, ['no known drug aller
-
Prescribed:
+
+ Prescribed: +
+ +
+
@@ -1286,6 +1302,13 @@ $allergyStatusNoKnown = in_array($allergyStatusNormalized, ['no known drug aller
+ + +
@@ -1692,6 +1715,29 @@ $allergyStatusNoKnown = in_array($allergyStatusNormalized, ['no known drug aller
+ + +