Files
shipping-portal/app/Classes/Modules/WePost/DataTransferObjects/WePostNotificationObject.php
T

227 lines
4.5 KiB
PHP

<?php
namespace App\Classes\Modules\WePost\DataTransferObjects;
use App\Classes\General\Interfaces\DataTransferObject;
class WePostNotificationObject implements DataTransferObject
{
/** @var string */
private string $logisticsOrderCode;
/** @var string */
private string $executeTime;
/** @var string */
private string $timeZone;
/** @var string */
private string $status;
/** @var array */
private array $packageInfo;
/** @var string */
private string $clientId;
/** @var string */
private string $type;
/** @var int */
private int $timestamp;
/** @var string */
private string $sign;
/** @var string */
private string $orderCode;
/** @var string */
private string $bizAction;
/** @var string */
private string $bizActionDesc;
/** @var string */
private string $segmentCode;
/** @var string */
private string $isSplitOut;
/** @var array */
private array $packageInfos;
/**
* WePostNotificationObject constructor.
* @param string $logisticsOrderCode
* @param string $executeTime,
* @param string $timeZone,
* @param string $status,
* @param array $packageInfo,
* @param string $clientId,
* @param string $type,
* @param int $timestamp,
* @param string $sign
* @param string $orderCode
* @param string $bizAction
* @param string $bizActionDesc
* @param string $segmentCode
* @param string $isSplitOut
* @param array $packageInfos
*/
public function __construct(
string $logisticsOrderCode,
string $executeTime,
string $timeZone,
string $status,
array $packageInfo,
string $clientId,
string $type,
int $timestamp,
string $sign,
string $orderCode = "",
string $bizAction = "",
string $bizActionDesc = "",
string $segmentCode = "",
string $isSplitOut = "",
array $packageInfos = []
) {
$this->logisticsOrderCode = $logisticsOrderCode;
$this->executeTime = $executeTime;
$this->timeZone = $timeZone;
$this->status = $status;
$this->packageInfo = $packageInfo;
$this->clientId = $clientId;
$this->type = $type;
$this->timestamp = $timestamp;
$this->sign = $sign;
$this->orderCode = $orderCode;
$this->bizAction = $bizAction;
$this->bizActionDesc = $bizActionDesc;
$this->segmentCode = $segmentCode;
$this->isSplitOut = $isSplitOut;
$this->packageInfos = $packageInfos;
}
/**
* @return string
*/
public function getLogisticsOrderCode(): string
{
return $this->logisticsOrderCode;
}
/**
* @return string
*/
public function getExecuteTime(): string
{
return $this->executeTime;
}
/**
* @return string
*/
public function getTimeZone(): string
{
return $this->timeZone;
}
/**
* @return string
*/
public function getStatus(): string
{
return $this->status;
}
/**
* @return array
*/
public function getPackageInfo(): array
{
return $this->packageInfo;
}
/**
* @return string
*/
public function getClientId(): string
{
return $this->clientId;
}
/**
* @return string
*/
public function getType(): string
{
return $this->type;
}
/**
* @return int
*/
public function getTimestamp(): int
{
return $this->timestamp;
}
/**
* @return string
*/
public function getSign(): string
{
return $this->sign;
}
/**
* @return string
*/
public function getOrderCode(): string
{
return $this->orderCode;
}
/**
* @return string
*/
public function getBizAction(): string
{
return $this->bizAction;
}
/**
* @return string
*/
public function getBizActionDesc(): string
{
return $this->bizActionDesc;
}
/**
* @return string
*/
public function getSegmentCode(): string
{
return $this->segmentCode;
}
/**
* @return string
*/
public function getIsSplitOut(): string
{
return $this->isSplitOut;
}
/**
* @return string
*/
public function getPackageInfos(): string
{
return json_encode($this->packageInfos);
}
}