From d659e8fd4edae38315086288289ab050c3594b95 Mon Sep 17 00:00:00 2001 From: Linksehat Staging Server Date: Sat, 13 Jan 2024 19:28:42 +0700 Subject: [PATCH] [Client Portal] - tambah feild item benefit di service monitoring (tb fajri) --- .../Api/CorporateMemberController.php | 2 +- .../AlarmCenter/DataServiceMonitoring.php | 27 ++++++++++++++++++- app/Models/RequestLog.php | 11 +++++--- app/Services/CorporateMemberService.php | 6 ++--- 4 files changed, 38 insertions(+), 8 deletions(-) diff --git a/Modules/Client/Http/Controllers/Api/CorporateMemberController.php b/Modules/Client/Http/Controllers/Api/CorporateMemberController.php index 6eb5a470..82ab4529 100644 --- a/Modules/Client/Http/Controllers/Api/CorporateMemberController.php +++ b/Modules/Client/Http/Controllers/Api/CorporateMemberController.php @@ -206,7 +206,7 @@ class CorporateMemberController extends Controller // return $request_log_id; $data = RequestLog::query() - ->with(['member' => ['currentCorporate', 'person'], 'organization', 'requestLogBenefit' => ['benefit'], 'requestLogDailyMonitorings' => ['requestLogMedicalPlans'],]) + ->with(['member' => ['currentCorporate', 'person'], 'organization', 'requestLogBenefits' => ['benefit'], 'requestLogDailyMonitorings' => ['requestLogMedicalPlans'],]) ->find($request_log_id); // return $data; diff --git a/Modules/Client/Transformers/AlarmCenter/DataServiceMonitoring.php b/Modules/Client/Transformers/AlarmCenter/DataServiceMonitoring.php index 686829aa..b43ee94a 100644 --- a/Modules/Client/Transformers/AlarmCenter/DataServiceMonitoring.php +++ b/Modules/Client/Transformers/AlarmCenter/DataServiceMonitoring.php @@ -22,6 +22,30 @@ class DataServiceMonitoring extends JsonResource } else { $serviceName = $this->service_cod; } + + $itemBenefits = $this->requestLogBenefits; + $dataBenefit = []; + if (count($itemBenefits)> 0){ + $totalIncurred = 0; + $totalApprove = 0; + $totalNotApporve = 0; + $totalExcess = 0; + foreach($itemBenefits as $itemBenefit){ + $totalIncurred += $itemBenefit->amount_incurred; + $totalApprove += $itemBenefit->amount_approved; + $totalNotApporve += $itemBenefit->amount_not_approved; + $totalExcess += $itemBenefit->excess_paid; + + } + // array_push($dataBenefit, $itemBenefits); + + $dataBenefit['total_incurred'] = $totalIncurred; + $dataBenefit['total_approve'] = $totalApprove; + $dataBenefit['total_not_approve'] = $totalNotApporve; + $dataBenefit['total_excess'] = $totalExcess; + + } + return [ 'companyName' => $this->member->currentCorporate->name ?? null, 'memberId' => $this->member->member_id ?? null, @@ -32,7 +56,8 @@ class DataServiceMonitoring extends JsonResource 'email' => $this->member->email ?? ($this->member->person->email ?? null), 'serviceName' => $serviceName, 'benefitName' => $this->requestLogBenefit->benefit->description ?? null, - 'benefit' => $this->requestLogBenefit ?? null, + 'benefit' => $itemBenefits ?? null, + 'benefitTotal' => $dataBenefit ?? null, 'hospital' => $this->organization->name ?? null, 'admissionDate' => $this->submission_date ?? null, 'dischargeDate' => $this->discharge_date ?? null, diff --git a/app/Models/RequestLog.php b/app/Models/RequestLog.php index cb63e1f3..b3dc56d7 100644 --- a/app/Models/RequestLog.php +++ b/app/Models/RequestLog.php @@ -51,7 +51,7 @@ class RequestLog extends Model 'deleted_by', ]; - public static $doc_headers_to_field_map = [ + public static $doc_headers_to_field_map = [ "Date Of Request" => "submission_date", "Date Addmission" => "submission_date", "Member ID Peserta" => "member_id", @@ -65,7 +65,7 @@ class RequestLog extends Model "Total Billing" => "total_billing", "Amount Approval" => "amount_approval", "Amount Not Approval" => "amount_not_approval", - "QC 1" => "status_final_log", + "QC 1" => "status_final_log", ]; public static $listing_doc_headers = [ @@ -82,7 +82,7 @@ class RequestLog extends Model "Total Billing", "Amount Approval", "Amount Not Approval", - "QC 1", + "QC 1", ]; public static $listing_data_doc_headers = [ @@ -246,6 +246,11 @@ class RequestLog extends Model return $this->hasOne(RequestLogBenefit::class, 'request_log_id'); } + public function requestLogBenefits() + { + return $this->hasMany(RequestLogBenefit::class, 'request_log_id'); + } + public function requestLogDailyMonitorings() { return $this->hasMany(RequestLogDailyMonitoring::class, 'request_log_id'); diff --git a/app/Services/CorporateMemberService.php b/app/Services/CorporateMemberService.php index 399aa384..12c3fc64 100644 --- a/app/Services/CorporateMemberService.php +++ b/app/Services/CorporateMemberService.php @@ -212,9 +212,9 @@ class CorporateMemberService // ->joinPlans('left') // ->with(['currentPlan', 'person']) // ->where('corporate_employees.corporate_id', $corporateId) - ->whereHas('currentCorporate', function (Builder $query) use ($corporateId) { - $query->where('corporate_id', $corporateId); - }) + // ->whereHas('currentCorporate', function (Builder $query) use ($corporateId) { + // // $query->where('corporate_id', $corporateId); + // }) ->when($request->input('search'), function (Builder $query, $search) { $query->where(function (Builder $query) use ($search) { $query->orWhere('members.member_id', 'like', "%" . $search . "%")