addressRepository = $addressRepository; $this->filterBuilder = $filterBuilder; $this->searchCriteriaBuilder = $searchCriteriaBuilder; } /** * @return void */ public function execute() { $filter = $this->filterBuilder->setField('parent_id')->setValue($this->_getCheckout()->getCustomer()->getId()) ->setConditionType('eq')->create(); $addresses = (array)($this->addressRepository->getList( $this->searchCriteriaBuilder->addFilters([$filter])->create() )->getItems()); /** * if we create first address we need reset emd init checkout */ if (count($addresses) === 1) { $this->_getCheckout()->reset(); } $this->_redirect('*/checkout/addresses'); } }