68 lines
1.8 KiB
PHP
68 lines
1.8 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Admin;
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use App\Http\Requests\Admins\AdminPostRequest;
|
|
use App\Http\Requests\Admins\AdminUserPostRequest;
|
|
use App\Models\User;
|
|
use Illuminate\Http\Request;
|
|
|
|
class UserController extends Controller
|
|
{
|
|
public function index(Request $request)
|
|
{
|
|
$users = User::query()
|
|
->select([
|
|
'id',
|
|
'first_name',
|
|
'last_name',
|
|
'mobile',
|
|
'email',
|
|
'national_code',
|
|
'user_province',
|
|
'user_city'
|
|
])
|
|
->when($request->search, function ($query) use ($request) {
|
|
$query->whereAny([
|
|
'first_name',
|
|
'last_name',
|
|
'mobile',
|
|
'email',
|
|
'national_code',
|
|
'user_province',
|
|
'user_city'
|
|
], 'like', '%' . $request->search . '%');
|
|
})
|
|
->latest()
|
|
->paginate(4);
|
|
|
|
return view('admin.users.user', compact('users'));
|
|
}
|
|
public function destroy(User $user)
|
|
{
|
|
$user->delete();
|
|
|
|
return redirect()
|
|
->route('admin.user.index')
|
|
->with('success', 'کاربر با موفقیت حذف شد.');
|
|
}
|
|
|
|
public function edit(User $user)
|
|
{
|
|
return view('admin.users.edit', compact('user'));
|
|
}
|
|
|
|
public function update(AdminUserPostRequest $request, User $user)
|
|
{
|
|
$inputs = $request->validated();
|
|
|
|
$user->update($inputs);
|
|
|
|
return redirect()
|
|
->route('admin.user.index')
|
|
->with('success', 'اطلاعات کاربر با موفقیت ویرایش شد.');
|
|
}
|
|
|
|
}
|