/** * Save order related objects * * @return Mage_Sales_Model_Order */ protected function _afterSave() { if (null !== $this->_addresses) { $this->_addresses->save(); $billingAddress = $this->getBillingAddress(); $attributesForSave = array(); if ($billingAddress && $this->getBillingAddressId() != $billingAddress->getId()) { $this->setBillingAddressId($billingAddress->getId()); $attributesForSave[] = 'billing_address_id'; } $shippingAddress = $this->getShippingAddress(); if ($shippingAddress && $this->getShippigAddressId() != $shippingAddress->getId()) { $this->setShippingAddressId($shippingAddress->getId()); $attributesForSave[] = 'shipping_address_id'; } if (!empty($attributesForSave)) { $this->_getResource()->saveAttribute($this, $attributesForSave); } } if (null !== $this->_items) { $this->_items->save(); } if (null !== $this->_payments) { $this->_payments->save(); } if (null !== $this->_statusHistory) { $this->_statusHistory->save(); } foreach ($this->getRelatedObjects() as $object) { $object->save(); } return parent::_afterSave(); }
/** * After save object manipulations * * @return Mage_Sales_Model_Order_Creditmemo */ protected function _afterSave() { if (null != $this->_items) { foreach ($this->_items as $item) { $item->save(); } } if (null != $this->_comments) { foreach ($this->_comments as $comment) { $comment->save(); } } return parent::_afterSave(); }
/** * After object save manipulation * * @return Mage_Sales_Model_Order_Shipment */ protected function _afterSave() { if (null !== $this->_items) { /** * Save invoice items */ foreach ($this->_items as $item) { $item->setOrderItem($item->getOrderItem()); $item->save(); } } if (null !== $this->_comments) { foreach ($this->_comments as $comment) { $comment->save(); } } return parent::_afterSave(); }