• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/integrity/duplicateindexbuilder.php
  • Класс: Bitrix\Crm\Integrity\DuplicateIndexBuilder
  • Вызов: DuplicateIndexBuilder::prepareSortParams
protected function prepareSortParams(array $entityIDs)
{
	$resut = [
		'PERS' => [],
		'ORG' => [],
		'COMM' => [],
		'RQ' => [],
		'BD' => [],
		'VOL' => [],
	];
	if(!empty($entityIDs))
	{
		$entityTypeID = $this->getEntityTypeID();
		if($entityTypeID === \CCrmOwnerType::Lead)
		{
			$resut['PERS'] = DuplicatePersonCriterion::prepareSortParams($entityTypeID, $entityIDs);
			$resut['ORG'] = DuplicateOrganizationCriterion::prepareSortParams($entityTypeID, $entityIDs);
		}
		elseif($entityTypeID === \CCrmOwnerType::Contact)
		{
			$resut['PERS'] = DuplicatePersonCriterion::prepareSortParams($entityTypeID, $entityIDs);
		}
		elseif($entityTypeID === \CCrmOwnerType::Company)
		{
			$resut['ORG'] = DuplicateOrganizationCriterion::prepareSortParams($entityTypeID, $entityIDs);
		}
		$resut['COMM'] = DuplicateCommunicationCriterion::prepareSortParams($entityTypeID, $entityIDs);
		if ($entityTypeID === \CCrmOwnerType::Contact || $entityTypeID === \CCrmOwnerType::Company)
		{
			$scope = $this->getScope();
			if ($scope !== DuplicateIndexType::DEFAULT_SCOPE)
			{
				$countryId = EntityRequisite::getCountryIdByDuplicateCriterionScope($scope);
				$resut['RQ'] = DuplicateRequisiteCriterion::prepareSortParams($entityTypeID, $entityIDs, $countryId);
				$resut['BD'] = DuplicateBankDetailCriterion::prepareSortParams($entityTypeID, $entityIDs, $countryId);
			}
		}
		$resut['VOL'] = DuplicateVolatileCriterion::prepareSortParams($entityTypeID, $entityIDs);
	}
	return $resut;
}