👁 查看:TerminalRefundBuilder.php
路径:/home/forge/woocommerce-square/vendor/square/square/src/Models/Builders/TerminalRefundBuilder.php
大小:3.32 KB · 修改:2025-12-23 20:26:26 · 权限:0644 · 可写
<?php
declare(strict_types=1);
namespace Square\Models\Builders;
use Core\Utils\CoreHelper;
use Square\Models\Money;
use Square\Models\TerminalRefund;
/**
* Builder for model TerminalRefund
*
* @see TerminalRefund
*/
class TerminalRefundBuilder
{
/**
* @var TerminalRefund
*/
private $instance;
private function __construct(TerminalRefund $instance)
{
$this->instance = $instance;
}
/**
* Initializes a new Terminal Refund Builder object.
*
* @param string $paymentId
* @param Money $amountMoney
* @param string $reason
* @param string $deviceId
*/
public static function init(string $paymentId, Money $amountMoney, string $reason, string $deviceId): self
{
return new self(new TerminalRefund($paymentId, $amountMoney, $reason, $deviceId));
}
/**
* Sets id field.
*
* @param string|null $value
*/
public function id(?string $value): self
{
$this->instance->setId($value);
return $this;
}
/**
* Sets refund id field.
*
* @param string|null $value
*/
public function refundId(?string $value): self
{
$this->instance->setRefundId($value);
return $this;
}
/**
* Sets order id field.
*
* @param string|null $value
*/
public function orderId(?string $value): self
{
$this->instance->setOrderId($value);
return $this;
}
/**
* Sets deadline duration field.
*
* @param string|null $value
*/
public function deadlineDuration(?string $value): self
{
$this->instance->setDeadlineDuration($value);
return $this;
}
/**
* Unsets deadline duration field.
*/
public function unsetDeadlineDuration(): self
{
$this->instance->unsetDeadlineDuration();
return $this;
}
/**
* Sets status field.
*
* @param string|null $value
*/
public function status(?string $value): self
{
$this->instance->setStatus($value);
return $this;
}
/**
* Sets cancel reason field.
*
* @param string|null $value
*/
public function cancelReason(?string $value): self
{
$this->instance->setCancelReason($value);
return $this;
}
/**
* Sets created at field.
*
* @param string|null $value
*/
public function createdAt(?string $value): self
{
$this->instance->setCreatedAt($value);
return $this;
}
/**
* Sets updated at field.
*
* @param string|null $value
*/
public function updatedAt(?string $value): self
{
$this->instance->setUpdatedAt($value);
return $this;
}
/**
* Sets app id field.
*
* @param string|null $value
*/
public function appId(?string $value): self
{
$this->instance->setAppId($value);
return $this;
}
/**
* Sets location id field.
*
* @param string|null $value
*/
public function locationId(?string $value): self
{
$this->instance->setLocationId($value);
return $this;
}
/**
* Initializes a new Terminal Refund object.
*/
public function build(): TerminalRefund
{
return CoreHelper::clone($this->instance);
}
}