Anda tidak dapat mengambil alamat berdasarkan id pelanggan sehingga kode ini tidak akan berfungsi:
$address = $this->_addressRepository->getByCustomerId($customerId);//error
Karena getByCustomerId
metode ini tidak ada di kelas kontrak layanan.
Apa yang dapat Anda lakukan, adalah menggunakan kelas pelanggan kontrak layanan data dengan kode berikut:
$customerId = $_POST["customer_id"];
$customer = $this->_customerRepository->getById($customerId);
$addresses = $customer->getAddresses();
Harap dicatat bahwa getAddresses
akan mengembalikan array Magento\Customer\Api\Data\AddressInterface
.
Jika Anda memerlukan alamat penagihan standar, Anda dapat menghubungi:
$billingAddress = $customer->getDefaultBilling();
$customer->getDefaultBilling();
mengembalikan NULL