_operationId; } /** * Устанавливает идентификатор операции * @param string $value Идентификатор операции */ public function setOperationId($value) { if ($value === null || $value === '') { throw new EmptyPropertyValueException('Empty operation_id value', 0, 'OperationalDetails.operationId'); } if (!TypeCast::canCastToString($value)) { throw new InvalidPropertyValueTypeException('Invalid operation_id value type', 0, 'OperationalDetails.operationId', $value); } if (mb_strlen((string)$value) > self::OPERATION_ID_MAX_LENGTH) { throw new InvalidPropertyValueException('Invalid operation_id value length: "' . $value . '"', 0, 'OperationalDetails.operationId', $value); } $this->_operationId = (string)$value; return $this; } /** * Возвращает время создания операции * @return Datetime Время создания операции */ public function getCreatedAt() { return $this->_createdAt; } /** * Устанавливает время создания операции * @param string|Datetime $value Время создания операции * @throws \Exception */ public function setCreatedAt($value) { if ($value === null || $value === '') { throw new EmptyPropertyValueException('Empty created_at value', 0, 'OperationalDetails.createdAt'); } if (!TypeCast::canCastToDateTime($value)) { throw new InvalidPropertyValueTypeException('Invalid created_at value', 0, 'OperationalDetails.createdAt', $value); } $dateTime = TypeCast::castToDateTime($value); if ($dateTime === null) { throw new InvalidPropertyValueException('Invalid created_at value', 0, 'OperationalDetails.createdAt', $value); } $this->_createdAt = $dateTime; return $this; } /** * Возвращает данные операции * @return string Данные операции */ public function getValue() { return $this->_value; } /** * Устанавливает данные операции * @param string $value Данные операции */ public function setValue($value) { if ($value === null || $value === '') { throw new EmptyPropertyValueException('Empty value', 0, 'OperationalDetails.value'); } if (!TypeCast::canCastToString($value)) { throw new InvalidPropertyValueTypeException('Invalid value type', 0, 'OperationalDetails.value', $value); } if (mb_strlen((string)$value) > self::VALUE_MAX_LENGTH) { throw new InvalidPropertyValueException('Invalid value length: "' . $value . '"', 0, 'OperationalDetails.value', $value); } $this->_value = (string)$value; return $this; } /** * @inheritdoc * * @return array */ public function jsonSerialize() { $result = parent::jsonSerialize(); $result['created_at'] = $this->getCreatedAt() ->setTimezone(new DateTimeZone('UTC')) ->format(YOOKASSA_DATE); return $result; } }