request()->all('startDate', 'endDate', 'outlet'), 'transactions' => Transaction::latest() ->filter(request()->only('startDate', 'endDate', 'outlet')) ->paginate(10) ->withQueryString() ->through(fn($transaction) => [ 'startDate' => Carbon::parse($transaction->getRawOriginal('created_at'))->translatedFormat('Y-m-d'), 'createdAt' => $transaction->created_at, 'price' => $transaction->totalPriceAsFullString(), ]), 'outlets' => Outlet::all() ->transform(fn($outlet) => [ 'label' => $outlet->name, 'value' => $outlet->id, ]), ]); } /** * Export to excel */ public function exportExcel() { return Excel::download(new TransactionExport(request()), 'report-transaction.xls'); } }