Apply query parameters (filter, sort, paginate, eager-load, search) to a Laravel Eloquent query builder