Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
Shipment.php
Go to the documentation of this file.
1 <?php
7 
13 
19 class Shipment extends SalesResource implements ShipmentResourceInterface
20 {
26  protected $_eventPrefix = 'sales_order_shipment_resource';
27 
33  protected $_serializableFields = ['packages' => [[], []]];
34 
40  protected function _construct()
41  {
42  $this->_init('sales_shipment', 'entity_id');
43  }
44 
52  protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
53  {
55  if ((!$object->getId() || null !== $object->getItems()) && !count($object->getAllItems())) {
56  throw new \Magento\Framework\Exception\LocalizedException(__('We cannot create an empty shipment.'));
57  }
58 
59  if (!$object->getOrderId() && $object->getOrder()) {
60  $object->setOrderId($object->getOrder()->getId());
61  $object->setShippingAddressId($object->getOrder()->getShippingAddress()->getId());
62  }
63 
64  return parent::_beforeSave($object);
65  }
66 }
__()
Definition: __.php:13
_beforeSave(\Magento\Framework\Model\AbstractModel $object)
Definition: AbstractDb.php:653