canCreateOrderStep = $canCreateOrderStep; $this->createsOrderSteps = $createsOrderSteps; $this->fetchesOrder = $fetchesOrder; $this->fetchesOrderSteps = $fetchesOrderSteps; } public function execute(Model $order, string $currentStep, $appointee_id){ $order_steps_object = new OrderStepsObject($order->id, $appointee_id, $currentStep, true, 0, OrderStatus::PROCESSING, 0, null); $this->canCreateOrderStep->passes($order_steps_object); return $this->createsOrderSteps->execute($order_steps_object); } }