<?php
namespace Leadlion\SalesOrder\Plugin\Block\Adminhtml\Order\Edit;

use Magento\Sales\Api\OrderRepositoryInterface;
use Magento\Framework\App\RequestInterface;

class BillingAddress
{
    /**
     * @var OrderRepositoryInterface
     */
    protected $orderRepository;

    /**
     * @var RequestInterface
     */
    protected $request;

    /**
     * @param OrderRepositoryInterface $orderRepository
     * @param RequestInterface $request
     */
    public function __construct(
        OrderRepositoryInterface $orderRepository,
        RequestInterface $request
    ) {
        $this->orderRepository = $orderRepository;
        $this->request = $request;
    }

    public function afterGetCurrentOrder(\Mageplaza\EditOrder\Block\Adminhtml\Order\Edit\BillingAddress $subject, $result)
    {
        if ($result === null) {
            return $this->orderRepository->get($this->request->getParam('order_id'));
        }

        return $result;
    }
}
