• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/integrity/duplicatecommunicationcriterion.php
  • Класс: Bitrix\Crm\Integrity\DuplicateCommunicationCriterion
  • Вызов: DuplicateCommunicationCriterion::loadEntitiesMatches
static function loadEntitiesMatches($entityTypeID, array $entityIDs, $communicationType)
{
	$query = new Main\Entity\Query(DuplicateCommunicationMatchCodeTable::getEntity());
	$query->addFilter('=ENTITY_TYPE_ID', $entityTypeID);
	$query->addFilter('@ENTITY_ID', $entityIDs);
	$query->addFilter('=TYPE', $communicationType);

	$query->addSelect('ENTITY_ID');
	$query->addSelect('VALUE');

	$dbResult = $query->exec();
	$results = array();
	while($fields = $dbResult->fetch())
	{
		$entityID = isset($fields['ENTITY_ID']) ? (int)$fields['ENTITY_ID'] : 0;
		if($entityID <= 0)
		{
			continue;
		}

		if(!isset($results[$entityID]))
		{
			$results[$entityID] = array();
		}

		$results[$entityID][] = array(
			'TYPE' => $communicationType,
			'VALUE' => isset($fields['VALUE']) ? $fields['VALUE'] : '',
		);
	}
	return $results;
}