- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/controller/activity/todo.php
- Класс: Bitrix\Crm\Controller\Activity\ToDo
- Вызов: ToDo::updateResponsibleUserAction
public function updateResponsibleUserAction(
int $ownerTypeId,
int $ownerId,
int $id,
int $responsibleId
): ?array
{
$todo = $this->loadEntity($ownerTypeId, $ownerId, $id);
if (!$todo)
{
return null;
}
if ($todo->isCompleted())
{
$this->addError(new Error( Loc::getMessage('CRM_ACTIVITY_TODO_UPDATE_RESPONSIBLE_USER_ERROR')));
return null;
}
if ($responsibleId <= 0)
{
$this->addError(new Error('Parameter "responsibleId" must be greater than 0'));
return null;
}
$prevResponsibleId = $todo->getResponsibleId();
$todo->setResponsibleId($responsibleId);
$todo = (Manager::createFromEntity($todo))->getPreparedEntity([], true);
$result = $this->saveTodo($todo);
if ($result === null)
{
return null;
}
$this->tryNotifyWhenUpdate(
$id,
$ownerTypeId,
$ownerId,
$responsibleId,
$prevResponsibleId
);
return $result;
}