OrderAddress.php 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. /**
  3. * Refer to LICENSE.txt distributed with the Temando Shipping module for notice of license
  4. */
  5. namespace Temando\Shipping\ViewModel\DataProvider;
  6. use Magento\Sales\Api\Data\OrderAddressInterface;
  7. use Magento\Sales\Model\Order\Address;
  8. use Magento\Sales\Model\Order\Address\Renderer as AddressRenderer;
  9. /**
  10. * Order address formatter
  11. *
  12. * @package Temando\Shipping\ViewModel
  13. * @author Christoph Aßmann <christoph.assmann@netresearch.de>
  14. * @license https://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
  15. * @link https://www.temando.com/
  16. */
  17. class OrderAddress
  18. {
  19. /**
  20. * @var AddressRenderer
  21. */
  22. private $addressRenderer;
  23. /**
  24. * OrderAddress constructor.
  25. * @param AddressRenderer $addressRenderer
  26. */
  27. public function __construct(AddressRenderer $addressRenderer)
  28. {
  29. $this->addressRenderer = $addressRenderer;
  30. }
  31. /**
  32. * @param OrderAddressInterface|Address $address
  33. * @return string
  34. */
  35. public function getFormattedAddress(OrderAddressInterface $address)
  36. {
  37. $formattedAddress = $this->addressRenderer->format($address, 'html');
  38. return (string)$formattedAddress;
  39. }
  40. }