- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/order/matcher/baseentitymatcher.php
- Класс: Bitrix\Crm\Order\Matcher\BaseEntityMatcher
- Вызов: BaseEntityMatcher::getFieldsToUpdate
protected function getFieldsToUpdate($entityId, $fields)
{
$mergerClassName = $this->getEntityMergerClassName();
switch ($this->duplicateControl)
{
case self::DUPLICATE_CONTROL_MODES['MERGE']:
$entityFields = $this->loadOriginalFields($entityId);
$entityFields['FM'] = $this->loadOriginalMultiFields($entityId);
/** @var EntityMerger $merger */
$merger = new $mergerClassName(0, false);
$merger->mergeFields($fields, $entityFields, false, ['ENABLE_UPLOAD' => true]);
break;
case self::DUPLICATE_CONTROL_MODES['REPLACE']:
$entityFields = [
'FM' => $this->loadOriginalMultiFields($entityId)
];
/** @var EntityMerger $merger */
$merger = new $mergerClassName(0, false);
$merger->mergeFields($fields, $entityFields, false, ['ENABLE_UPLOAD' => true]);
break;
default:
$entityFields = [];
}
return $entityFields;
}