• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/Service/Operation/Conversion.php
  • Класс: Bitrix\Crm\Service\Operation\Conversion
  • Вызов: Conversion::save
protected function save(): Result
{
	$this->synchronizeUserFields();

	$result = new ConversionResult();

	$this->configs->enablePermissionCheck($this->isCheckAccessEnabled());
	$wizard = ConversionManager::getWizard($this->item->getEntityTypeId(), $this->item->getId(), $this->configs);
	if (!$wizard)
	{
		$result->addError(new Error('An instance of '.EntityConversionWizard::class.' for this entity is not found'));
		return $result;
	}

	$this->applySettingsToWizard($wizard);

	$wizard->execute();
	$isSuccess = ($wizard->getErrorText() === '');
	if ($isSuccess)
	{
		$this->configs->save();
	}
	else
	{
		$result->addError(new Error($wizard->getErrorText()));
	}

	$redirectUrl = $wizard->getRedirectUrl();
	if ($redirectUrl)
	{
		$result->setRedirectUrl(new Uri($wizard->getRedirectUrl()));
	}
	$result->setIsConversionFinished($wizard->isFinished());
	$result->setData($wizard->getResultData());

	return $result;
}