memberPlans?->first(); $limitTelecon = $currentMemberPlan->plan->limit_telecon ?? null; $limitTelecon = $this->totalUsage >= 6 ? null : $limitTelecon; $services = MemberPlan::where('member_id', $this->id)->with('plan')->get()->toArray(); $dataServices = []; if ($services) { foreach($services as $service) { $serviceName = Helper::serviceName($service['plan']['service_code']); $benefits = CorporateBenefit::where('plan_id', $service['plan_id'])->with('benefit')->get()->toArray(); $dataBenefit = []; foreach($benefits as $benefit){ $dataBenefitItem = $benefit['benefit']['description']; array_push($dataBenefit, $dataBenefitItem); } $data = [ 'name' => $serviceName, 'benefit' => $dataBenefit ]; array_push($dataServices, $data); } } // LOG $dataLog = []; $requestLogs = RequestLog::where('member_id', $this->id)->with('organization')->get()->toArray(); $totalBenefit = 0; if ($requestLogs) { foreach($requestLogs as $requestLog) { $requestLogBenefit = RequestLogBenefit::where('request_log_id', $requestLog['id'])->sum('amount_approved'); $totalBenefit += $requestLogBenefit; $data = [ 'id' => $requestLog['id'], 'code' => $requestLog['code'], 'submission_date' => Carbon::parse($requestLog['submission_date'])->format('d M Y H:i:s'), 'provider_name' => $requestLog['organization']['name'], 'service' => Helper::serviceName($requestLog['service_code']) ]; array_push($dataLog, $data); } } $data = [ 'id' => $this->id, 'member_name' => $this->full_name, 'member_id' => $this->member_id, 'policy_holder' => $this->currentPolicy->corporate->name, 'policy_number' => $this->currentPolicy->code ?? null, 'date_of_birth' => $this->birth_date, 'gender' => $this->gender, 'start_date' => $this->members_effective_date, 'corporate_logo' => $_ENV['LMS_APP_STORAGE'] . $this->corporateLogo, 'valid_until' => $this->members_expire_date, 'total_benefit_usage' => $totalBenefit, 'service' => $dataServices, 'histor_log' => $dataLog ]; return $data; } }