Fix bed number not showing in bill print - add bed_assignment_history fallback
- Use COALESCE to check both bed_master.current_ipd_id and bed_assignment_history - Join with bed_assignment_history where released_date IS NULL for active beds - Handles cases where bed is assigned in history but current_ipd_id not set - Fixes bill print showing blank Bed No when assignment exists in history
This commit is contained in:
parent
7cf13bffd1
commit
342f54e509
|
|
@ -159,11 +159,18 @@ class IpdBillingModel extends Model
|
||||||
->select("o.final_bill_send as final_bill_send", false)
|
->select("o.final_bill_send as final_bill_send", false)
|
||||||
->select("o.org_approved_status as org_approved_status", false)
|
->select("o.org_approved_status as org_approved_status", false)
|
||||||
->select("o.remark as remark", false)
|
->select("o.remark as remark", false)
|
||||||
->select("bm.bed_number as bed_no", false)
|
->select("COALESCE(bm.bed_number, bm2.bed_number) as bed_no", false)
|
||||||
->select("group_concat(distinct concat_ws(' ', 'Dr.', d.p_fname, d.p_mname, d.p_lname) separator ', ') as r_doc_name", false)
|
->select("group_concat(distinct concat_ws(' ', 'Dr.', d.p_fname, d.p_mname, d.p_lname) separator ', ') as r_doc_name", false)
|
||||||
->join('organization_case_master o', 'i.case_id = o.id', 'left')
|
->join('organization_case_master o', 'i.case_id = o.id', 'left')
|
||||||
->join('hc_insurance in_master', 'in_master.id = o.insurance_id', 'left')
|
->join('hc_insurance in_master', 'in_master.id = o.insurance_id', 'left')
|
||||||
->join('bed_master bm', 'bm.current_ipd_id = i.id', 'left')
|
->join('bed_master bm', 'bm.current_ipd_id = i.id', 'left')
|
||||||
|
->join(
|
||||||
|
'(select ipd_id, bed_id from bed_assignment_history where released_date is null order by id desc) bah_active',
|
||||||
|
'bah_active.ipd_id = i.id',
|
||||||
|
'left',
|
||||||
|
false
|
||||||
|
)
|
||||||
|
->join('bed_master bm2', 'bm2.id = bah_active.bed_id', 'left')
|
||||||
->join('ipd_master_doc_list imdl', 'imdl.ipd_id = i.id', 'left')
|
->join('ipd_master_doc_list imdl', 'imdl.ipd_id = i.id', 'left')
|
||||||
->join('doctor_master d', 'd.id = imdl.doc_id', 'left')
|
->join('doctor_master d', 'd.id = imdl.doc_id', 'left')
|
||||||
->where('i.id', $ipdId)
|
->where('i.id', $ipdId)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user