• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/kanban/entity/dynamic.php
  • Класс: Bitrix\Crm\Kanban\Entity\Dynamic
  • Вызов: Dynamic::updateItemsCategory
public function updateItemsCategory(array $ids, int $categoryId, \CCrmPerms $permissions): Result
{
	$result = new Result();

	$category = $this->factory->getCategory($categoryId);
	if (!$category)
	{
		return $result->addError(new Error('Category not found'));
	}
	if (!Service\Container::getInstance()->getUserPermissions()->canViewItemsInCategory($category))
	{
		return $result->addError(new Error('Access Denied'));
	}

	foreach($ids as $id)
	{
		$item = $this->factory->getItem($id);
		if(!$item)
		{
			continue;
		}
		$item->setCategoryId($categoryId);
		$operation = $this->factory->getUpdateOperation($item);
		$updateResult = $operation->launch();
		if(!$updateResult->isSuccess())
		{
			$result->addErrors($updateResult->getErrors());
		}
		elseif($this->isNeedToRunAutomation())
		{
			$this->runAutomationOnUpdate($item->getId(), $item->getData());
		}
	}

	return $result;
}