diff --git a/app/Http/Controllers/SyncLogsController.php b/app/Http/Controllers/SyncLogsController.php index fd3a76d..4f1b540 100644 --- a/app/Http/Controllers/SyncLogsController.php +++ b/app/Http/Controllers/SyncLogsController.php @@ -29,29 +29,31 @@ class SyncLogsController extends Controller // 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('periode', 'LIKE', "%$search%") - ->orWhere('sync_notes', 'LIKE', "%$search%") - ->orWhere('csv_notes', 'LIKE', "%$search%") - ->orWhere('ftp_notes', 'LIKE', "%$search%") - ->orWhere('file_name', 'LIKE', "%$search%"); - }); - } + $search = json_decode($request->get('search')); + if (isset($search->search)) { + $query->where(function ($q) use ($search) { + $q->where('periode', 'LIKE', "%$search->search%") + ->orWhere('sync_notes', 'LIKE', "%$search->search%") + ->orWhere('csv_notes', 'LIKE', "%$search->search%") + ->orWhere('ftp_notes', 'LIKE', "%$search->search%") + ->orWhere('file_name', 'LIKE', "%$search->search%"); + }); + } - // Apply filter for sync status if provided - if ($request->has('is_sync') && $request->get('is_sync') !== '') { - $query->where('is_sync', $request->get('is_sync') == '1'); - } + // Apply filter for sync status if provided + if (isset($search->is_sync) && $search->is_sync !== '') { + $query->where('is_sync', $search->is_sync == '1'); + } - // Apply filter for CSV status if provided - if ($request->has('is_csv') && $request->get('is_csv') !== '') { - $query->where('is_csv', $request->get('is_csv') == '1'); - } + // Apply filter for CSV status if provided + if (isset($search->is_csv) && $search->is_csv !== '') { + $query->where('is_csv', $search->is_csv == '1'); + } - // Apply filter for FTP status if provided - if ($request->has('is_ftp') && $request->get('is_ftp') !== '') { - $query->where('is_ftp', $request->get('is_ftp') == '1'); + // Apply filter for FTP status if provided + if (isset($search->is_ftp) && $search->is_ftp !== '') { + $query->where('is_ftp', $search->is_ftp == '1'); + } } // Apply sorting if provided diff --git a/resources/views/sync-logs/index.blade.php b/resources/views/sync-logs/index.blade.php index 69cda4e..08853f4 100644 --- a/resources/views/sync-logs/index.blade.php +++ b/resources/views/sync-logs/index.blade.php @@ -287,12 +287,15 @@ const ftpValue = filterFtp.value; const params = {}; + if (searchInput.value) { + params.search = searchInput.value; + } if (syncValue !== '') params.is_sync = syncValue; if (csvValue !== '') params.is_csv = csvValue; if (ftpValue !== '') params.is_ftp = ftpValue; dataTable.goPage(1); - dataTable.setRequestParams(params); + dataTable.search(params); dataTable.reload(); };