attr = Arr::only($attr, ['name', 'image', 'type', 'status', 'position', 'is_power', 'with_problem']); $this->service = $service; } /** * @param Service $service * @param Request $request * @param $path * @return Update */ public static function fromRequest(Service $service, Request $request, $path) { return new static($service, [ 'name' => $request->getName(), 'image' => $path, 'status' => $request->status, 'position' => $request->getPosition(), 'is_power' => $request->is_power == null ? false : true, 'with_problem' => $request->with_problem == null ? false : true, 'type' => $request->generateSlug(), ]); } /** * */ public function handle() { $this->service->update($this->attr); } }