implementing DataTableRequest on user and role pagination

This commit is contained in:
Geriano
2022-07-30 11:25:07 +07:00
parent 37f8662c5a
commit d41405660e
2 changed files with 8 additions and 16 deletions

View File

@@ -3,6 +3,7 @@
namespace App\Http\Controllers\Superuser; namespace App\Http\Controllers\Superuser;
use App\Http\Controllers\Controller; use App\Http\Controllers\Controller;
use App\Http\Requests\DataTableRequest;
use App\Models\Permission; use App\Models\Permission;
use App\Models\Role; use App\Models\Role;
use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Builder;
@@ -33,17 +34,12 @@ class RoleController extends Controller
} }
/** /**
* @param \Illuminate\Http\Request $request * @param \App\Http\Requests\DataTableRequest $request
* @return \Illuminate\Http\Response * @return \Illuminate\Http\Response
*/ */
public function paginate(Request $request) public function paginate(DataTableRequest $request)
{ {
$request->validate([ $request->validated();
'search' => 'nullable|string',
'per_page' => 'nullable|integer|max:1000',
'order.key' => 'nullable|string',
'order.dir' => 'nullable|in:asc,desc',
]);
return Role::where(function (Builder $query) use ($request) { return Role::where(function (Builder $query) use ($request) {
$search = '%' . $request->search . '%'; $search = '%' . $request->search . '%';

View File

@@ -3,6 +3,7 @@
namespace App\Http\Controllers\Superuser; namespace App\Http\Controllers\Superuser;
use App\Http\Controllers\Controller; use App\Http\Controllers\Controller;
use App\Http\Requests\DataTableRequest;
use App\Models\Permission; use App\Models\Permission;
use App\Models\Role; use App\Models\Role;
use App\Models\User; use App\Models\User;
@@ -28,17 +29,12 @@ class UserController extends Controller
} }
/** /**
* @param \Illuminate\Http\Request $request * @param \App\Http\Requests\DataTableRequest $request
* @return \Illuminate\Http\Response * @return \Illuminate\Http\Response
*/ */
public function paginate(Request $request) public function paginate(DataTableRequest $request)
{ {
$request->validate([ $request->validated();
'search' => 'nullable|string',
'per_page' => 'nullable|integer|max:1000',
'order.key' => 'nullable|string',
'order.dir' => 'nullable|in:asc,desc',
]);
return User::where(function (Builder $query) use ($request) { return User::where(function (Builder $query) use ($request) {
$search = '%' . $request->input('search') . '%'; $search = '%' . $request->input('search') . '%';