report->categories as $accountCategoryName => $accountCategory) { $categories[] = new ReportCategoryDTO( header: ['', $accountCategoryName, '', ''], data: array_map(static function (AccountDTO $account) { return [ $account->accountCode, $account->accountName, $account->balance->debitBalance, $account->balance->creditBalance, ]; }, $accountCategory->accounts), summary: [ '', 'Total ' . $accountCategoryName, $accountCategory->summary->debitBalance, $accountCategory->summary->creditBalance, ], ); } return $categories; } public function getOverallTotals(): array { return [ '', 'Total for all accounts', $this->report->overallTotal->debitBalance, $this->report->overallTotal->creditBalance, ]; } }