You may optionally disable the default ordering function of DataTables and write you own using order
api.
use DataTables;
Route::get('user-data', function() {
$model = App\User::query();
return DataTables::eloquent($model)
->order(function ($query) {
if (request()->has('name')) {
$query->orderBy('name', 'asc');
}
if (request()->has('email')) {
$query->orderBy('email', 'desc');
}
})
->toJson();
});