- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/binding/contactcompany.php
- Класс: Bitrix\Crm\Binding\ContactCompanyTable
- Вызов: ContactCompanyTable::getBulkContactBindings
static function getBulkContactBindings(array $contactIDs)
{
\Bitrix\Main\Type\Collection::normalizeArrayValuesByInt($contactIDs, false);
if (empty($contactIDs))
{
return [];
}
$bindingMap = array();
foreach($contactIDs as $contactID)
{
$bindingMap[$contactID] = array();
}
$dbResult = self::getList(
array(
'filter' => array('@CONTACT_ID' => $contactIDs),
'select' => array('COMPANY_ID', 'CONTACT_ID', 'SORT', 'ROLE_ID', 'IS_PRIMARY'),
'order' => array('CONTACT_ID' => 'ASC', 'SORT' => 'ASC')
)
);
while($ary = $dbResult->fetch())
{
$bindingMap[$ary['CONTACT_ID']][] = array(
'COMPANY_ID' => (int)$ary['COMPANY_ID'],
'SORT' => (int)$ary['SORT'],
'ROLE_ID' => (int)$ary['ROLE_ID'],
'IS_PRIMARY' => $ary['IS_PRIMARY']
);
}
return $bindingMap;
}