norujukan = $norujukan; } public function getBayaranHistory($tagsyarikat) { $CallableHttp = $tagsyarikat == CompanyStatus::COM_PKB ? Http::arrahn() : Http::arrahn_koop(); $bayaranHistory = $CallableHttp->get('/api/transaction/'. $this->norujukan)->json(); $formatBayaranHistoryData = function ($x) use($tagsyarikat) { if (sizeof($x) === 0) { return $x; } $formatDate = fn($x) => Carbon::parse($x)->format('d/m/Y'); $setResitAnsuranLink = fn($x) => route("resit.ansuran", ['id' => $x, 'company' => $tagsyarikat]); return array_map(function ($y) use ($formatDate, $setResitAnsuranLink) { $y['created_at'] = $formatDate($y['created_at']); $y['resit_ansuran_link'] = $setResitAnsuranLink($y['id']); return $y; }, $x); }; return $formatBayaranHistoryData($bayaranHistory); } public static function from($norujukan) { return new static($norujukan); } }