'datetime', 'updated_at' => 'datetime', 'deleted_at' => 'datetime', ]; /** * The roles that belong to the permission. */ public function roles() { return $this->belongsToMany( Role::class, 'auth.role_permissions', 'permission_id', 'role_id' )->withTimestamps(); } /** * Scope a query to search permissions. */ public function scopeSearch(Builder $query, ?string $search): Builder { return $query->when($search, function ($query) use ($search) { $search = '%' . strtolower($search) . '%'; return $query->where(function ($query) use ($search) { $query->whereRaw('LOWER(name) LIKE ?', [$search]) ->orWhereRaw('LOWER(description) LIKE ?', [$search]); }); }); } }