• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/binding/contactcompany.php
  • Класс: Bitrix\Crm\Binding\ContactCompanyTable
  • Вызов: ContactCompanyTable::getBulkCompanyBindings
static function getBulkCompanyBindings(array $companyIDs): array
{
	\Bitrix\Main\Type\Collection::normalizeArrayValuesByInt($companyIDs, false);
	if (empty($companyIDs))
	{
		return [];
	}

	$bindingMap = [];
	foreach ($companyIDs as $companyID)
	{
		$bindingMap[$companyID] = [];
	}

	$dbResult = self::getList([
		'filter' => ['@COMPANY_ID' => $companyIDs],
		'select' => ['COMPANY_ID', 'CONTACT_ID', 'SORT', 'ROLE_ID', 'IS_PRIMARY'],
		'order' => ['COMPANY_ID' => 'ASC', 'SORT' => 'ASC']
	]);
	while($ary = $dbResult->fetch())
	{
		$bindingMap[$ary['COMPANY_ID']][] = [
			'CONTACT_ID' => (int)$ary['CONTACT_ID'],
			'SORT' => (int)$ary['SORT'],
			'ROLE_ID' => (int)$ary['ROLE_ID'],
			'IS_PRIMARY' => $ary['IS_PRIMARY']
		];
	}
	return $bindingMap;
}