- Модуль: 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;
}