From de62cfff316302f3212d2797889210ead6877580 Mon Sep 17 00:00:00 2001 From: Tb Fajri Date: Mon, 1 Jul 2024 14:42:56 +0700 Subject: [PATCH] update penjagaan limit --- app/Helpers/Helper.php | 8 ++++---- app/Services/CorporateMemberService.php | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/app/Helpers/Helper.php b/app/Helpers/Helper.php index 7a80148c..01a10913 100644 --- a/app/Helpers/Helper.php +++ b/app/Helpers/Helper.php @@ -540,7 +540,7 @@ class Helper // Menghitung jumlah total approved dan mengkategorikan berdasarkan benefit_id $amountApprovedByBenefit = []; foreach($benefitData as $benefit) { - if ($benefit['limit_amount'] != 999999999) { + if ($benefit['limit_amount'] != 999999999 || $benefit['limit_amount_plan'] != 999999999) { if ($benefit['family_plan'] == 'S' || $benefit['family_plan'] == 'F'){ // Menghitung usage per family $memberFamilys = Helper::getMemberFamily($id); $usageLogs = 0; @@ -558,17 +558,17 @@ class Helper // Tambahkan kondisi lainnya jika diperlukan ]; - if (array_key_exists($benefit['max_frequency_period'], $periods)) { + // if (array_key_exists($benefit['max_frequency_period'], $periods)) { $usageLogs = RequestLogBenefit::query() ->whereHas('requestLog', function ($query) use ($benefit, $memberFamilys, $periods) { - $period = $periods[$benefit['max_frequency_period']]; + // $period = $periods[$benefit['max_frequency_period']]; $query->where('benefit_id', $benefit['id']) // ->where('submission_date', '>=', $period['start']) // ->where('submission_date', '<=', $period['end']) ->whereIn('member_id', $memberFamilys); }) ->sum('amount_approved'); - } + // } // Mengkategorikan sum berdasarkan benefit_id $amountApprovedByBenefit[$benefit['id']] = $usageLogs; } else { // Menghitung usage permember diff --git a/app/Services/CorporateMemberService.php b/app/Services/CorporateMemberService.php index 0483bbe4..bca4441c 100644 --- a/app/Services/CorporateMemberService.php +++ b/app/Services/CorporateMemberService.php @@ -208,6 +208,7 @@ class CorporateMemberService return RequestLog::query() ->leftJoin('members', 'request_logs.member_id', '=', 'members.id') + ->leftJoin('corporate_employees', 'request_logs.member_id', '=', 'corporate_employees.member_id') // ->joinMemberPlans('left') // ->joinPlans('left') // ->with(['currentPlan', 'person']) @@ -215,6 +216,7 @@ class CorporateMemberService // ->whereHas('currentCorporate', function (Builder $query) use ($corporateId) { // // $query->where('corporate_id', $corporateId); // }) + ->where('corporate_employees.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 . "%") @@ -261,8 +263,6 @@ class CorporateMemberService // ->selectRaw("(select sum(`claims`.`total_claim`) from `claims` where `members`.`id` = `claims`.`member_id` AND `claims`.`deleted_at` IS NULL) AS `claims_sum_total_claim`") ->groupBy('member_id') ->paginate($limit); - - } public function getAllMemberEmployeeData(int $corporateId, Request $request)