diff --git a/htdocs/app/Http/Controllers/ReportController.php b/htdocs/app/Http/Controllers/ReportController.php index 5121652a..9a37d605 100644 --- a/htdocs/app/Http/Controllers/ReportController.php +++ b/htdocs/app/Http/Controllers/ReportController.php @@ -861,13 +861,15 @@ class ReportController extends Controller $query->whereMonth('daftar', $bulan); } - // Glass report perlu menampilkan seluruh hasil filter agar jumlah baris konsisten. - $orderbydate = $query->orderBy('daftar', 'ASC')->orderBy('id', 'ASC')->get(); + // Preview dibuat paginated agar aman saat filter setahun. + $orderbydate = $query->orderBy('daftar', 'ASC')->orderBy('id', 'ASC')->paginate(50); + $orderbydate->appends(['bulan' => $bulan, 'tahun' => $tahun]); $pageIds = $orderbydate->pluck('id')->toArray(); $antibiotikLookup = $this->mapAntibiotikData($pageIds); - $glassLookups = $this->getGlassReportLookups($orderbydate); - $glassTables = $this->splitGlassReportRows($orderbydate, $glassLookups); + $glassRows = $orderbydate->getCollection(); + $glassLookups = $this->getGlassReportLookups($glassRows); + $glassTables = $this->splitGlassReportRows($glassRows, $glassLookups); $glassHeaders = $this->getGlassReportHeaders(); return view('admin.glassreport', [ diff --git a/htdocs/resources/views/admin/glassreport.blade.php b/htdocs/resources/views/admin/glassreport.blade.php index b46e084f..b83d5715 100644 --- a/htdocs/resources/views/admin/glassreport.blade.php +++ b/htdocs/resources/views/admin/glassreport.blade.php @@ -13,10 +13,12 @@ Download Full Excel (CSV) +