diff --git a/packages/actions/src/Exports/Jobs/PrepareCsvExport.php b/packages/actions/src/Exports/Jobs/PrepareCsvExport.php index 5be9422360..02d6b64167 100644 --- a/packages/actions/src/Exports/Jobs/PrepareCsvExport.php +++ b/packages/actions/src/Exports/Jobs/PrepareCsvExport.php @@ -102,15 +102,19 @@ class PrepareCsvExport implements ShouldQueue return; } + + $baseQuery = $query->toBase(); + $sortDirection = $baseQuery->orders[0]['direction'] ?? 'asc'; - $query->toBase() + $baseQuery ->select([$query->getModel()->getQualifiedKeyName()]) - ->chunkById( + ->orderedChunkById( $this->chunkSize * 10, fn (Collection $records) => $dispatchRecords( Arr::pluck($records->all(), $keyName), ), $keyName, + descending: $sortDirection === 'desc', ); }