OrderPixData.php 820 B

12345678910111213141516171819202122232425262728293031
  1. <?php
  2. namespace App\Data\Pagarme\Request\OrderRequestData\OrderPaymentData;
  3. use App\Data\Pagarme\PagarmeData;
  4. final readonly class OrderPixData extends PagarmeData
  5. {
  6. /**
  7. * @param OrderPixAdditionalInformationData[]|null $additionalInformation
  8. */
  9. public function __construct(
  10. public ?int $expiresIn = null,
  11. public ?array $additionalInformation = null,
  12. ) {
  13. if ($this->expiresIn === null) {
  14. throw new \InvalidArgumentException(
  15. 'pix.expires_in e obrigatorio.'
  16. );
  17. }
  18. }
  19. public function toArray(): array
  20. {
  21. return $this->filterFilledRecursive([
  22. 'expires_in' => $this->expiresIn,
  23. 'additional_information' => $this->additionalInformation,
  24. ]);
  25. }
  26. }