예제 #1
0
 /**
  * Perform actions before object save
  *
  * @param \Magento\Framework\Model\AbstractModel|\Magento\Framework\DataObject $object
  * @return $this
  */
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     /** @var \Magento\Sales\Model\Order\Invoice $object */
     if (!$object->getOrderId() && $object->getOrder()) {
         $object->setOrderId($object->getOrder()->getId());
         $object->setBillingAddressId($object->getOrder()->getBillingAddress()->getId());
     }
     return parent::_beforeSave($object);
 }
예제 #2
0
 /**
  * Perform actions before object save
  *
  * @param \Magento\Framework\Model\AbstractModel|\Magento\Framework\Object $object
  * @return $this
  */
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     /**@var $object \Magento\Sales\Model\Order\Item */
     if (!$object->getOrderId() && $object->getOrder()) {
         $object->setOrderId($object->getOrder()->getId());
     }
     if ($object->getParentItem()) {
         $object->setParentItemId($object->getParentItem()->getId());
     }
     return parent::_beforeSave($object);
 }
예제 #3
0
 /**
  * Perform actions before object save
  *
  * @param \Magento\Framework\Model\AbstractModel|\Magento\Framework\Object $object
  * @return $this
  * @throws \Magento\Framework\Exception\LocalizedException
  */
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     /** @var \Magento\Sales\Model\Order\Shipment $object */
     if ((!$object->getId() || null !== $object->getItems()) && !count($object->getAllItems())) {
         throw new \Magento\Framework\Exception\LocalizedException(__('We cannot create an empty shipment.'));
     }
     if (!$object->getOrderId() && $object->getOrder()) {
         $object->setOrderId($object->getOrder()->getId());
         $object->setShippingAddressId($object->getOrder()->getShippingAddress()->getId());
     }
     return parent::_beforeSave($object);
 }