• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/rest/externalchannel.php
  • Класс: Bitrix\Crm\Rest\CCrmExternalChannelImportAgent
  • Вызов: CCrmExternalChannelImportAgent::getActualPersonId
protected function getActualPersonId($fields)
{
	$duplicateCriteria = \Bitrix\Crm\Integrity\ActualEntitySelector::createDuplicateCriteria($fields, array(
		Crm\Integrity\ActualEntitySelector::SEARCH_PARAM_PERSON));

	$list = array();
	foreach ($duplicateCriteria as $criterion)
	{
		/** @var Crm\Integrity\Duplicate $duplicate */
		$duplicate = $criterion->find();
		if($duplicate !== null)
		{
			$list = array_merge(
				$list,
				$duplicate->getEntityIDsByType(\CCrmOwnerType::Contact)
			);
		}
	}

	$list = array_unique($list);
	$ranking = new \Bitrix\Crm\Integrity\ActualRanking;
	$ranking->rank(\CCrmOwnerType::Contact, $list);

	return $ranking->getEntityId();
}