Update Final LOG

This commit is contained in:
Linksehat Staging Server
2023-11-17 08:57:48 +07:00
parent e3aacbb5d5
commit 00b8fa763e
2 changed files with 174 additions and 65 deletions

View File

@@ -433,29 +433,81 @@ class ClaimController extends Controller
public function downloadFinalLog($id)
{
$claim = Claim::findOrFail($id);
//Claim
$claim = DB::table("claims")
->where('claims.id', '=', $id)
->select(
'claims.code',
'claims.created_at',
'claims.member_id',
'claims.plan_id',
)
->first();
$hospital = $claim->finalEncounter->healthcare ?? null;
//Get claim request id
$data_claim_requests = DB::table('claim_requests')
->leftJoin('claims', 'claim_requests.id', '=', 'claims.claim_request_id')
->where('claims.id', $id)
->select('claim_requests.id')
->first();
$id = $data_claim_requests->id;
//Hospital
$hospital = $hospital = DB::table('claim_services')
->leftJoin('corporate_hospitals', 'claim_services.hospital_id', '=', 'corporate_hospitals.id')
->leftJoin('organizations','organizations.id', '=', 'corporate_hospitals.organization_id')
->leftJoin('addresses', 'addresses.id', '=', 'organizations.main_address_id')
->where('claim_services.claim_request_id', '=', $id)
->select('corporate_hospitals.name', 'addresses.text AS address')
->first();
//Memeber
$member = DB::table('members')
->leftJoin('member_plans', 'member_plans.member_id', '=', 'members.id')
->where('members.id', '=', $claim->member_id)
->where('member_plans.plan_id', '=', $claim->plan_id)
->select(
'members.name',
DB::raw('(SELECT room_class_coverage FROM corporate_benefits WHERE corporate_benefits.plan_id = '.$claim->plan_id.' LIMIT 1) as room_class_coverage'),
'members.birth_date',
'members.gender',
'members.payor_id',
DB::raw('(SELECT corporates.name FROM corporates INNER JOIN corporate_employees ON corporate_employees.corporate_id = corporates.id WHERE corporate_employees.member_id = '.$claim->member_id.' LIMIT 1) AS corporate_name'),
DB::raw('(SELECT services.name FROM services INNER JOIN plans ON plans.service_code = services.code WHERE plans.id = '.$claim->plan_id.' LIMIT 1) AS services'),
DB::raw('(SELECT member_policies.end FROM member_policies WHERE member_policies.member_id = members.member_id LIMIT 1) AS periode_policy'),
DB::raw('(SELECT member_policies.status FROM member_policies WHERE member_policies.member_id = members.member_id LIMIT 1) AS status_policy'),
)
->first();
//Benfit Claim
$benefit = DB::table('claim_service_benefits')
->leftJoin('benefits', 'benefits.id', '=', 'claim_service_benefits.benefit_id')
->leftJoin('claim_services', 'claim_services.id', '=', 'claim_service_benefits.claim_service_id')
->where('claim_services.claim_request_id', '=', $id)
->select('benefits.description', 'claim_service_benefits.amount_incurred AS biaya_diajukan', 'claim_service_benefits.amount_approved AS biaya_disetujui', 'claim_service_benefits.amount_not_approved AS biaya_tidak_disetujui')
->get();
// TODO Fix this tipu tipu
$inpationBenefit = $claim->member->currentPlan->benefits()->first();
//$inpationBenefit = $claim->member->currentPlan->benefits()->first();
$pdf = PDF::loadView('pdf.final_log', [
'claim' => $claim,
'member' => $claim->member,
'dateOfAdmission' => $claim->start,
'member' => $member,
// 'dateOfAdmission' => $claim->start,
'hospital' => $hospital,
'inpationBenefit' => $inpationBenefit
'benefit' => $benefit,
//'inpationBenefit' => $inpationBenefit
]);
return $pdf->download('Final LOG '.$claim->code.'.pdf');
return $pdf->download('Final LOG.pdf');
$view = view('pdf.final_log', [
'claim' => $claim,
'member' => $claim->member,
'dateOfAdmission' => $claim->start,
'member' => $member,
// 'dateOfAdmission' => $claim->start,
'hospital' => $hospital,
'inpationBenefit' => $inpationBenefit
'benefit' => $benefit,
// 'inpationBenefit' => $inpationBenefit
]);
return $view;