update penjagaan limit
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user