department->id ?? null; // Fetch the responses and filter by department_id $responses = Response::with('user', 'department') ->where('department_id', $userDepartmentId); // Filter by current user's department_id return DataTables::of($responses) ->addColumn('user_name', function ($response) { return $response->user->name ?? 'Unknown'; }) ->addColumn('department_name', function ($response) { return $response->department->name ?? 'Unknown'; }) ->addColumn('start_date', function ($response) { return \Carbon\Carbon::parse($response->start_date)->format('d-m-Y'); }) ->addColumn('start_time', function ($response) { return \Carbon\Carbon::parse($response->start_date)->format('h:i A'); }) ->addColumn('end_date', function ($response) { return \Carbon\Carbon::parse($response->end_date)->format('d-m-Y'); }) ->addColumn('end_time', function ($response) { return \Carbon\Carbon::parse($response->end_date)->format('h:i A'); }) ->addColumn('action', function ($response) { $viewButton = $response->proof ? 'View' : 'No Proof'; return $viewButton; }) ->rawColumns(['action']) ->make(true); } }