only('startDate', 'endDate', 'outlet')) ->get() ->groupBy('created_at') ->transform(fn($transactions) => [[ 'date' => $transactions->first()->getRawOriginal('created_at'), 'createdAt' => $transactions->first()->created_at, 'totalTransaction' => $transactions->count(), 'totalPrice' => (new TransactionService)->totalPriceGroup($transactions), ]]) ->flatten(1); return view('excel.transaction-report', compact('transactions')); } public function styles(Worksheet $sheet) { $lastRow = $sheet->getHighestDataRow(); $lastSecondRow = $lastRow - 1; return [ 1 => [ 'font' => ['bold' => true, 'size' => 12], 'alignment' => ['vertical' => 'center', 'horizontal' => 'center'], ], 2 => [ 'font' => ['bold' => true, 'size' => 12], 'alignment' => ['vertical' => 'center', 'horizontal' => 'center'], ], 4 => [ 'font' => ['bold' => true], ], 'C' => ['alignment' => ['horizontal' => 'left']], 'D' => ['alignment' => ['horizontal' => 'left']], $lastRow => [ 'font' => ['bold' => true, 'size' => 12], 'alignment' => ['horizontal' => 'left'], ], $lastSecondRow => [ 'font' => ['bold' => true, 'size' => 12], 'alignment' => ['horizontal' => 'left'], ], ]; } }