...Человеческий поиск в разработке...
- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/activity/provider/tasks/task.php
- Класс: Bitrix\Crm\Activity\Provider\Tasks\Task
- Вызов: Task::updateByTask
public function updateByTask(array $timelineParams): void { $taskId = $timelineParams['TASK_ID'] ?? null; if (is_null($taskId)) { return; } $task = TaskObject::getObject($taskId); if (is_null($task)) { return; } $activity = $this->find($taskId); if (is_null($activity)) { return; } $updateData = []; $activityStartTime = is_null($activity->getStartTime()) ? '' : $activity->getStartTime()->toString(); $activityEndTime = is_null($activity->getEndTime()) ? '' : $activity->getEndTime()->toString(); $taskStartDatePlan = is_null($task->getStartDatePlan()) ? '' : $task->getStartDatePlan()->toString(); $taskEndDatePlan = is_null($task->getEndDatePlan()) ? '' : $task->getEndDatePlan()->toString(); if ($activityStartTime !== $taskStartDatePlan) { $updateData['START_TIME'] = $taskStartDatePlan; } if ($activityEndTime !== $taskEndDatePlan) { $updateData['END_TIME'] = $taskEndDatePlan; } if ($activity->getResponsibleId() !== $task->getResponsibleMemberId()) { $updateData['RESPONSIBLE_ID'] = $task->getResponsibleMemberId(); } if ($activity->getSubject() !== $task->getTitle()) { $updateData['SUBJECT'] = $task->getTitle(); } if ($activity->getPriority() !== (int)$task->getPriority()) { $updateData['PRIORITY'] = Task2ActivityPriority::getPriority((int)$task->getPriority()); } if (!empty($updateData)) { $updateData['ASSOCIATED_ENTITY_ID'] = $task->getId(); $this->update($activity->getId(), $updateData); } }