• Модуль: crmmobile
  • Путь к файлу: ~/bitrix/modules/crmmobile/lib/Controller/EntityDetails.php
  • Класс: BitrixCrmMobileControllerEntityDetails
  • Вызов: EntityDetails::getConversionParams
private function getConversionParams(): ?array
{
	$entityId = null;
	$entityTypeId = null;
	$conversionQueryParams = ConversionEntityConversionWizard::getQueryParamSource();
	$conversionParamList = [...self::STATIC_CONVERSION_QUERY_PARAMS, $conversionQueryParams['ENTITY_ID']];
	foreach ($conversionParamList as $conversionParam)
	{
		$value = (int)($this->findInSourceParametersList($conversionParam) ?? 0);
		if ($value > 0)
		{
			$entityId = $value;
		}
		else
		{
			continue;
		}

		if ($conversionParam === $conversionQueryParams['ENTITY_ID'])
		{
			$entityTypeId = $this->findInSourceParametersList($conversionQueryParams['ENTITY_TYPE_ID']);
		}
		elseif (
			$conversionParam === ConversionQuoteConversionWizard::QUERY_PARAM_SRC_ID
			|| $conversionParam
			=== 'quote_id'
		)
		{
			$entityTypeId = CCrmOwnerType::Quote;
		}
		elseif ($conversionParam === 'lead_id')
		{
			$entityTypeId = CCrmOwnerType::Lead;
		}
		elseif (
			$conversionParam === ConversionDealConversionWizard::QUERY_PARAM_SRC_ID
			|| $conversionParam
			=== 'deal_id'
		)
		{
			$entityTypeId = CCrmOwnerType::Deal;
		}
	}

	if (CCrmOwnerType::IsDefined($entityTypeId) && $entityId > 0)
	{
		return [
			'ENTITY_TYPE_ID' => (int)($entityTypeId ?? 0),
			'ENTITY_ID' => $entityId ?? 0,
		];
	}

	return null;
}