LeadConverter::mapEntityFields

  1. Bitrix24 API (v. 23.675.0)
  2. crm
  3. LeadConverter
  4. mapEntityFields
  • Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/conversion/leadconverter.php
  • Класс: Bitrix\Crm\Conversion\LeadConverter
  • Вызов: LeadConverter::mapEntityFields
public function mapEntityFields($entityTypeID, array $options = null)
{
	if(!is_array($options))
	{
		$options = array();
	}
	$options['INIT_DATA'] = $this->config->getEntityInitData($entityTypeID);

	$fields = $this->getMapper()->map($this->getMap($entityTypeID), $options);

	if($entityTypeID === \CCrmOwnerType::Contact)
	{
		$companyID = self::getDestinationEntityID(\CCrmOwnerType::CompanyName, $this->resultData);
		if($companyID > 0)
		{
			$fields['COMPANY_ID'] = $companyID;
		}
	}
	elseif($entityTypeID === \CCrmOwnerType::Deal)
	{
		if($this->isReturnCustomer)
		{
			$contactIDs = Crm\Binding\LeadContactTable::getLeadContactIDs($this->entityID);
			if(!empty($contactIDs))
			{
				$fields['CONTACT_IDS'] = $contactIDs;
				$fields['CONTACT_ID'] = $contactIDs[0];
			}

			$companyID = $this->mapper->getSourceFieldValue('COMPANY_ID');
			if($companyID > 0)
			{
				$fields['COMPANY_ID'] = $companyID;
			}
		}
		else
		{
			$contactID = self::getDestinationEntityID(\CCrmOwnerType::ContactName, $this->resultData);
			if($contactID > 0)
			{
				$fields['CONTACT_ID'] = $contactID;
			}

			$companyID = self::getDestinationEntityID(\CCrmOwnerType::CompanyName, $this->resultData);
			if($companyID > 0)
			{
				$fields['COMPANY_ID'] = $companyID;
			}
		}
	}
	return $fields;
}

Добавить комментарий