processAccounts(); return 0; } private function processAccounts(): void { $accounts = Account::leftJoin('account_types', 'accounts.account_type_id', 'account_types.id') ->whereIn('account_types.type', config('firefly.valid_liabilities')) ->get(['accounts.*']); foreach ($accounts as $account) { $this->processAccount($account); } } /** * @param Account $account * * @return void */ private function processAccount(Account $account): void { /** @var CreditRecalculateService $object */ $object = app(CreditRecalculateService::class); $object->setAccount($account); $object->recalculate(); } }