*/ class Collection extends \Magento\Framework\Model\ResourceModel\Db\VersionControl\Collection { /** * Resource initialization * * @return void */ protected function _construct() { $this->_init( \Magento\Quote\Model\Quote\Address\Item::class, \Magento\Quote\Model\ResourceModel\Quote\Address\Item::class ); } /** * Set parent items * * @return $this */ protected function _afterLoad() { parent::_afterLoad(); /** * Assign parent items */ foreach ($this as $item) { if ($item->getParentItemId()) { $item->setParentItem($this->getItemById($item->getParentItemId())); } } return $this; } /** * Set address filter * * @param int $addressId * @return $this */ public function setAddressFilter($addressId) { if ($addressId) { $this->addFieldToFilter('quote_address_id', $addressId); } else { $this->_totalRecords = 0; $this->_setIsLoaded(true); } return $this; } }