/** * Perform actions after object save * * @param \Magento\Framework\Model\AbstractModel $object * @return $this */ protected function processRelations(\Magento\Framework\Model\AbstractModel $object) { /** @var \Magento\Sales\Model\Order\Creditmemo $object */ if (null !== $object->getItems()) { foreach ($object->getItems() as $item) { $item->setParentId($object->getId()); $item->save(); } } if (null !== $object->getComments()) { foreach ($object->getComments() as $comment) { $comment->save(); } } return parent::processRelations($object); }
/** * @param \Magento\Framework\Model\AbstractModel $object * @return $this */ protected function processRelations(\Magento\Framework\Model\AbstractModel $object) { /** @var \Magento\Sales\Model\Order $object */ $this->addressHandler->process($object); if (null !== $object->getItems()) { /** @var \Magento\Sales\Model\Order\Item $item */ foreach ($object->getItems() as $item) { $item->setOrderId($object->getId()); $item->setOrder($object); $item->save(); } } if (null !== $object->getPayments()) { /** @var \Magento\Sales\Model\Order\Payment $payment */ foreach ($object->getPayments() as $payment) { $payment->setParentId($object->getId()); $payment->setOrder($object); $payment->save(); } } if (null !== $object->getStatusHistories()) { /** @var \Magento\Sales\Model\Order\Status\History $statusHistory */ foreach ($object->getStatusHistories() as $statusHistory) { $statusHistory->setParentId($object->getId()); $statusHistory->save(); $statusHistory->setOrder($object); } } if (null !== $object->getRelatedObjects()) { foreach ($object->getRelatedObjects() as $relatedObject) { $relatedObject->save(); $relatedObject->setOrder($object); } } return parent::processRelations($object); }