_last4; } /** * Устанавливает последние 4 цифры номера карты * @param string $value Последние 4 цифры номера карты */ public function setLast4($value) { if ($value === null || $value === '') { throw new EmptyPropertyValueException('Empty card last4 value', 0, 'PaymentMethodBankCard.last4'); } elseif (TypeCast::canCastToString($value)) { if (preg_match('/^[0-9]{4}$/', (string)$value)) { $this->_last4 = (string)$value; } else { throw new InvalidPropertyValueException( 'Invalid card last4 value', 0, 'PaymentMethodBankCard.last4', $value ); } } else { throw new InvalidPropertyValueTypeException( 'Invalid card last4 value type', 0, 'PaymentMethodBankCard.last4', $value ); } } /** * Возвращает первые 6 цифр номера карты * @return string Первые 6 цифр номера карты * @since 1.0.14 */ public function getFirst6() { return $this->_first6; } /** * Устанавливает первые 6 цифр номера карты * @param string $value Первые 6 цифр номера карты * @since 1.0.14 */ public function setFirst6($value) { if ($value === null || $value === '') { throw new EmptyPropertyValueException('Empty card first6 value', 0, 'PaymentMethodBankCard.first6'); } elseif (TypeCast::canCastToString($value)) { if (preg_match('/^[0-9]{6}$/', (string)$value)) { $this->_first6 = (string)$value; } else { throw new InvalidPropertyValueException( 'Invalid card first6 value', 0, 'PaymentMethodBankCard.first6', $value ); } } else { throw new InvalidPropertyValueTypeException( 'Invalid card first6 value type', 0, 'PaymentMethodBankCard.first6', $value ); } } /** * Возвращает тип банковской карты * @return string Тип банковской карты */ public function getCardType() { return $this->_cardType; } /** * Устанавливает тип банковской карты * @param string $value Тип банковской карты */ public function setCardType($value) { if ($value === null || $value === '') { throw new EmptyPropertyValueException('Empty cardType value', 0, 'PaymentMethodBankCard.cardType'); } elseif (TypeCast::canCastToString($value)) { $this->_cardType = (string)$value; } else { throw new InvalidPropertyValueTypeException( 'Invalid cardType value type', 0, 'PaymentMethodBankCard.cardType', $value ); } } /** * Возвращает код страны, в которой выпущена карта. Передается в формате ISO-3166 alpha-2 * @return string Код страны, в которой выпущена карта */ public function getIssuerCountry() { return $this->_issuerCountry; } /** * Устанавливает код страны, в которой выпущена карта. Передается в формате ISO-3166 alpha-2 * @param string $value Код страны, в которой выпущена карта */ public function setIssuerCountry($value) { if ($value === null || $value === '') { $this->_issuerCountry = (string)$value; } elseif (!TypeCast::canCastToString($value)) { throw new InvalidPropertyValueTypeException( 'Invalid issuerCountry value type', 0, 'PaymentMethodBankCard.issuerCountry', $value ); } elseif (mb_strlen($value) !== self::ISO_3166_CODE_LENGTH) { throw new InvalidPropertyValueException( 'Invalid issuerCountry value', 0, 'PaymentMethodBankCard.issuerCountry', $value ); } $this->_issuerCountry = (string)$value; } /** * Устанавливает наименование банка, выпустившего карту * @param string $value Наименование банка, выпустившего карту */ public function setIssuerName($value) { if ($value === null || $value === '') { $this->_issuerName = (string)$value; } elseif (!TypeCast::canCastToString($value)) { throw new EmptyPropertyValueException( 'Empty issuerName value', 0, 'PaymentMethodBankCard.issuerName' ); } $this->_issuerName = (string)$value; } /** * Возвращает наименование банка, выпустившего карту * @return string Наименование банка, выпустившего карту. */ public function getIssuerName() { return $this->_issuerName; } }