- Модуль: tasks
- Путь к файлу: ~/bitrix/modules/tasks/lib/integration/crm/timeline/taskrepository.php
- Класс: BitrixTasksIntegrationCRMTimelineTaskRepository
- Вызов: TaskRepository::getTask
public function getTask(): ?TaskObject
{
if ($this->task)
{
return $this->task;
}
$select = [
'ID',
'TITLE',
'DESCRIPTION',
'UF_CRM_TASK',
'STATUS',
'SCENARIO',
'DEADLINE',
'RESPONSIBLE_ID',
'CREATED_BY',
'UF_TASK_WEBDAV_FILES',
'GROUP_ID',
'START_DATE_PLAN',
'END_DATE_PLAN',
'PRIORITY',
];
$query = (new TaskQuery($this->userId))
->setBehalfUser($this->userId)
->setSelect($select)
->setWhere([
'=ID' => $this->taskId,
])
->skipAccessCheck()
->setLimit(1);
$list = new TaskList();
$tasks = $list->getList($query);
$task = $tasks[0] ?? null;
if (!is_null($task))
{
$this->task = new TaskObject($task);
$this->task->fillMemberList();
}
else
{
$this->task = null;
}
return $this->task;
}