feat(laporan-admin-kredit): tambahkan filter tanggal pada laporan admin kredit

- Menambahkan input untuk tanggal awal dan tanggal akhir di tampilan laporan.
- Memperbarui logika pencarian untuk mendukung filter berdasarkan rentang tanggal.
- Menambahkan fungsi untuk menerapkan semua filter secara bersamaan.
This commit is contained in:
Daeng Deni Mardaeni
2025-03-17 10:58:47 +07:00
parent 831561b83b
commit 31245457cd
2 changed files with 63 additions and 12 deletions

View File

@@ -31,17 +31,29 @@
// Retrieve data from the database
$query = LaporanAdminKredit::query();
if ($request->has('tanggal_awal') && $request->has('tanggal_akhir')) {
$query->whereBetween('tanggal_kunjungan', [$request->tanggal_awal, $request->tanggal_akhir]);
}
// Apply search filter if provided
if ($request->has('search') && !empty($request->get('search'))) {
$search = $request->get('search');
$query->where(function ($q) use ($search) {
$q->where('kode_register_t24', 'LIKE', '%' . $search . '%')
->orWhere('jenis_agunan', 'LIKE', '%' . $search . '%')
->orWhere('nama_pemilik', 'LIKE', '%' . $search . '%')
->orWhereHas('debiture', function ($query) use ($search) {
$query->where('name', 'LIKE', '%' . $search . '%');
});
});
$search_ = json_decode($search);
if (isset($search_->search)) {
$query->where(function ($q) use ($search_) {
$q->where('kode_register_t24', 'LIKE', '%' . $search_->search . '%')
->orWhere('jenis_agunan', 'LIKE', '%' . $search_->search . '%')
->orWhere('nama_pemilik', 'LIKE', '%' . $search_->search . '%')
->orWhereHas('debiture', function ($query) use ($search_) {
$query->where('name', 'LIKE', '%' . $search_->search . '%');
});
});
}
if (isset($search_->tanggal_awal) && isset($search_->tanggal_akhir)) {
$query->whereBetween('tanggal_kunjungan', [$search_->tanggal_awal, $search_->tanggal_akhir]);
}
}
// Apply sorting if provided