_service_name; } /** * Устанавливает описание услуги, оказанной получателем выплаты. * * @param string $value Описание услуги, оказанной получателем выплаты * * @return $this */ public function setServiceName($value) { if ($value === null || $value === '') { throw new EmptyPropertyValueException('Empty service_name value', 0, 'IncomeReceiptData.service_name'); } if (!TypeCast::canCastToString($value)) { throw new InvalidPropertyValueTypeException('Invalid IncomeReceiptData service_name value type', 0, 'IncomeReceiptData.id', $value); } if (mb_strlen($value, 'utf-8') > IncomeReceipt::MAX_LENGTH_SERVICE_NAME) { throw new InvalidPropertyValueException('Invalid IncomeReceiptData service_name value', 0, 'IncomeReceiptData.service_name', $value); } $this->_service_name = (string)$value; return $this; } /** * Возвращает сумму для печати в чеке. * * @return AmountInterface|null Сумма для печати в чеке */ public function getAmount() { return $this->_amount; } /** * Устанавливает сумму для печати в чеке. * * @param AmountInterface|array|null $value Сумма для печати в чеке * * @return $this */ public function setAmount($value = null) { if ($value === null || $value === '') { throw new EmptyPropertyValueException('Empty amount value', 0, 'IncomeReceiptData.amount'); } if ($value instanceof AmountInterface) { $this->_amount = $value; } elseif (is_array($value)) { $this->_amount = new MonetaryAmount($value); } else { throw new InvalidPropertyValueTypeException( 'Invalid IncomeReceiptData.amount value type', 0, 'IncomeReceiptData.amount', $value ); } return $this; } }