updatesOrderCurrentStep = $updatesOrderCurrentStep; $this->createsManyStep = $createsManyStep; $this->updateStepProcessors = $updateStepProcessors; $this->getUnityContractObligationsProcessor = $getUnityContractObligationsProcessor; } public function execute(Order $order, array $contract_obligation_list=[], array $orderRoles=[]){ $obligations = $contract_obligation_list; //TODO: Collect hash_id & search company module table for appointee id foreach($obligations as $step){ $orderSteps[] = new StepsObject( $orderRoles[0]->company_module_id, $step->name, true, $step->sequence??0, 0, 0, null, 0, $step->hash_id ); } $this->createsManyStep->execute($order, $orderSteps); $this->updatesOrderCurrentStep->execute($order->id, Steps::PACKING); $this->updateStepProcessors->execute(Steps::PROCESSING); } }