• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/Service/Operation/Add.php
  • Класс: Bitrix\Crm\Service\Operation\Add
  • Вызов: Add::createTimelineRecord
protected function createTimelineRecord(): void
{
	$timelineController = TimelineManager::resolveController([
		'ASSOCIATED_ENTITY_TYPE_ID' => $this->item->getEntityTypeId()
	]);

	if ($timelineController)
	{
		$timelineController->onCreate(
			$this->item->getId(),
			[
				'FIELDS' => $this->item->getData(),
				'FIELDS_MAP' => $this->item->getFieldsMap(),
			]
		);
	}

	$factory = Container::getInstance()->getFactory($this->getItem()->getEntityTypeId());

	if (!$factory->isStagesEnabled())
	{
		return;
	}

	$newStage = $factory->getStage((string)$this->item->getStageId());
	if (!$newStage)
	{
		return;
	}

	$wasItemMovedToFinalStage = (
		$factory->isStagesEnabled()
		&& PhaseSemantics::isFinal($newStage->getSemantics())
	);

	if ($wasItemMovedToFinalStage)
	{
		MarkController::getInstance()->onItemMoveToFinalStage(
			$this->getItemIdentifier(),
			$newStage->getSemantics(),
			$this->getContext()->getUserId(),
		);
	}
}