- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/requisite/conversion/entityaddressconverter.php
- Класс: Bitrix\Crm\Requisite\Conversion\EntityAddressConverter
- Вызов: EntityAddressConverter::addEntityRequisite
protected function addEntityRequisite(int $entityId, $requisiteAddressMap, $requisitePresetMap)
{
$requisiteId = 0;
$requisite = EntityRequisite::getSingleInstance();
$presetId = $this->defaultPresetId > 0 ? $this->defaultPresetId : 0;
if ($presetId <= 0 && !empty($requisiteAddressMap))
{
reset($requisiteAddressMap);
$firstRequisiteId = key($requisiteAddressMap);
if (isset($requisitePresetMap[$firstRequisiteId]) && $requisitePresetMap[$firstRequisiteId] > 0)
{
$presetId = $requisitePresetMap[$firstRequisiteId];
}
}
if ($presetId <= 0)
{
throw new EntityAddressConverterException(
$this->entityTypeId,
$presetId,
EntityAddressConverterException::ERR_CANT_PICK_PRESET_FOR_REQUISITE
);
}
$requisiteAddResult = $requisite->add(
array(
'ENTITY_TYPE_ID' => $this->entityTypeId,
'ENTITY_ID' => $entityId,
'PRESET_ID' => $presetId,
'NAME' => CCrmOwnerType::GetCaption($this->entityTypeId, $entityId, false),
'SORT' => 500,
'ADDRESS_ONLY' => 'Y',
'ACTIVE' => 'Y'
)
);
if($requisiteAddResult->isSuccess())
{
$requisiteId = (int)$requisiteAddResult->getId();
}
return $requisiteId;
}