diff --git a/src/Http/Admin/UserController.php b/src/Http/Admin/UserController.php index 8345a5d..128bd00 100644 --- a/src/Http/Admin/UserController.php +++ b/src/Http/Admin/UserController.php @@ -30,12 +30,12 @@ class UserController extends AdminController { $query = User::query(); + $filter = []; if ($request->filled('q')) { - $search = '%' . $request->input('q'). '%'; - $query->where(fn($q) => $q->where('phone', 'like', $search)->orWhere('name', 'like', $search)); + $filter['key'] = $request->input('q'); } - $query->select(['id', 'phone as text'])->sort(); + $query->filter($filter)->select(['id', 'phone as text'])->sort(); if ($request->filled('_paginate')) { $list = $query->paginate(); diff --git a/src/Models/User.php b/src/Models/User.php index 7c09fdd..be2a1f6 100644 --- a/src/Models/User.php +++ b/src/Models/User.php @@ -8,6 +8,7 @@ use Peidikeji\User\Filters\UserFilter; use Dcat\Admin\Traits\HasDateTimeFormatter; use Illuminate\Foundation\Auth\User as Authenticatable; use Illuminate\Support\Str; +use Peidikeji\Coupon\Models\UserCoupon; use Peidikeji\Order\Models\Order; class User extends Authenticatable @@ -69,6 +70,11 @@ class User extends Authenticatable return $this->hasMany(UserAddress::class, 'user_id'); } + public function coupons() + { + return $this->hasMany(UserCoupon::class, 'user_id'); + } + public function scopeSort($q) { return $q->latest('id');