changeModel); if ($event->type == SearchUpdateEvent::OPERATE_UPDATE) { $model->where(function ($query) use ($event) { if (!is_array($event->where)) { $query->whereIn('id', explode(',', $event->where)); } else { foreach ($event->where as $value) { $method = array_shift($value); $query->{$method}(...array_values($value)); } } })->searchable(); } elseif ($event->type == SearchUpdateEvent::OPERATE_DELETE) { $model->withTrashed()->where(function ($query) use ($event) { if (!is_array($event->where)) { $query->whereIn('id', explode(',', $event->where)); } else { foreach ($event->where as $value) { $method = array_shift($value); $query->{$method}(...array_values($value)); } } })->unsearchable(); } } }