FleetCart/Modules/Payment/GatewayResponse.php
2023-06-11 13:14:03 +01:00

32 lines
611 B
PHP

<?php
namespace Modules\Payment;
use JsonSerializable;
abstract class GatewayResponse implements JsonSerializable
{
abstract public function getOrderId();
public function toArray()
{
$data = ['orderId' => $this->getOrderId()];
if ($this instanceof ShouldRedirect) {
$data['redirectUrl'] = $this->getRedirectUrl();
}
return $data;
}
public function jsonSerialize()
{
return $this->toArray();
}
public function __toString()
{
return json_encode($this->jsonSerialize());
}
}