- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/recycling/contactbinder.php
- Класс: Bitrix\Crm\Recycling\ContactBinder
- Вызов: ContactBinder::bindEntity
public function bindEntity($associatedEntityTypeID, array $associatedEntityIDs, $entityID)
{
if(empty($associatedEntityIDs))
{
return;
}
$entity = new \CCrmContact(false);
if($associatedEntityTypeID === \CCrmOwnerType::Company)
{
$bindings = Crm\Binding\ContactCompanyTable::getContactBindings($entityID);
foreach($associatedEntityIDs as $associatedEntityID)
{
Crm\Binding\EntityBinding::addEntityBinding(\CCrmOwnerType::Company, $associatedEntityID, $bindings);
}
if(!Crm\Binding\EntityBinding::findPrimaryBinding($bindings))
{
Crm\Binding\EntityBinding::markFirstAsPrimary($bindings);
}
$fields = array('COMPANY_BINDINGS' => $bindings);
$entity->Update(
$entityID,
$fields,
true,
false,
);
}
else
{
$entityTypeName = \CCrmOwnerType::ResolveName($associatedEntityTypeID);
throw new Main\NotSupportedException("Entity '{$entityTypeName}' not supported in current context.");
}
}