Получите информацию об адресе доставки после сохранения заказа


Я вроде как застрял. Я создаю API, но по какой-то причине я не могу выполнить getShippingAddress после сохранения заказа. Все остальное работает нормально:

Etc/di.xml

<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
    <type name="Magento\Sales\Api\OrderRepositoryInterface">
        <plugin name="customer_aftersave" type="...\...\Plugin\OrderPlugin" sortOrder="10"/>
    </type>
</config>

OrderPlugin.php

use Magento\Sales\Api\OrderRepositoryInterface;
use Magento\Sales\Api\Data\OrderInterface;
...        
public function aftersave(OrderRepositoryInterface $subject, OrderInterface $order){

            $order = $subject->get($order->getEntityId());
    .....
    }

Как я должен получить информацию об адресе доставки в функции aftersave?

$order здесь не предусмотрена функция getShippingAddress().

Заранее большое спасибо!

Author: CompactCode, 2017-10-24

1 answers

Еще не тест, но мы можем попробовать с OrderInterface $order

public function aftersave(OrderRepositoryInterface $subject, OrderInterface $order)
{

            $shippingAddress = $order->getShippingAddress();

}
 1
Author: Khoa TruongDinh, 2017-10-24 05:09:18