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