OrderDataBuilder.php 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. declare(strict_types=1);
  7. namespace Magento\AuthorizenetAcceptjs\Gateway\Request;
  8. use Magento\AuthorizenetAcceptjs\Gateway\SubjectReader;
  9. use Magento\Payment\Gateway\Request\BuilderInterface;
  10. /**
  11. * Adds the basic payment information to the request
  12. */
  13. class OrderDataBuilder implements BuilderInterface
  14. {
  15. /**
  16. * @var SubjectReader
  17. */
  18. private $subjectReader;
  19. /**
  20. * @param SubjectReader $subjectReader
  21. */
  22. public function __construct(SubjectReader $subjectReader)
  23. {
  24. $this->subjectReader = $subjectReader;
  25. }
  26. /**
  27. * @inheritdoc
  28. */
  29. public function build(array $buildSubject): array
  30. {
  31. $paymentDO = $this->subjectReader->readPayment($buildSubject);
  32. $order = $paymentDO->getOrder();
  33. return [
  34. 'transactionRequest' => [
  35. 'order' => [
  36. 'invoiceNumber' => $order->getOrderIncrementId()
  37. ]
  38. ]
  39. ];
  40. }
  41. }