_itn; } /** * Устанавливает ИНН самозанятого. * * @param string|null $itn ИНН самозанятого * * @return self */ public function setItn(?string $itn = null): self { $this->_itn = $this->validatePropertyValue('_itn', $itn); return $this; } /** * Проверяет наличие ИНН самозанятого в запросе. * * @return bool True если ИНН самозанятого задан, false если нет */ public function hasItn(): bool { return !empty($this->_itn); } /** * Возвращает телефон самозанятого. * * @return string|null Телефон самозанятого */ public function getPhone(): ?string { return $this->_phone; } /** * Устанавливает телефон самозанятого. * * @param string|null $phone Телефон самозанятого * * @return self */ public function setPhone(?string $phone = null): self { $this->_phone = $this->validatePropertyValue('_phone', $phone); return $this; } /** * Проверяет наличие телефона самозанятого в запросе. * * @return bool True если телефон самозанятого задан, false если нет */ public function hasPhone(): bool { return !empty($this->_phone); } /** * Возвращает сценарий подтверждения. * * @return SelfEmployedRequestConfirmation|null Сценарий подтверждения */ public function getConfirmation(): ?SelfEmployedRequestConfirmation { return $this->_confirmation; } /** * Устанавливает сценарий подтверждения. * * @param null|array|SelfEmployedConfirmation $confirmation Сценарий подтверждения * * @return $this */ public function setConfirmation(mixed $confirmation = null): self { if (is_array($confirmation)) { $confirmation = (new SelfEmployedRequestConfirmationFactory)->factoryFromArray($confirmation); } $this->_confirmation = $this->validatePropertyValue('_confirmation', $confirmation); return $this; } /** * Проверяет наличие сценария подтверждения самозанятого в запросе. * * @return bool True если сценарий подтверждения самозанятого задан, false если нет */ public function hasConfirmation(): bool { return !empty($this->_confirmation); } /** * Проверяет на валидность текущий объект * * @return bool True если объект запроса валиден, false если нет */ public function validate(): bool { if (!$this->hasPhone() && !$this->hasItn()) { $this->setValidationError('Both itn and phone values are empty in SelfEmployedRequest'); return false; } return true; } /** * Возвращает билдер объектов запросов создания платежа. * * @return SelfEmployedRequestBuilder */ public static function builder(): SelfEmployedRequestBuilder { return new SelfEmployedRequestBuilder(); } }