- Модуль: tasks
- Путь к файлу: ~/bitrix/modules/tasks/lib/scrum/service/sprintservice.php
- Класс: BitrixTasksScrumServiceSprintService
- Вызов: SprintService::getSprintData
public function getSprintData(EntityForm $sprint): array
{
$info = $sprint->getInfo();
$timeHelper = new TimeHelper($sprint->getCreatedBy());
$dateStartTs = $sprint->getDateStart()->getTimestamp() + $timeHelper->getCurrentOffsetUTC();
$dateEndTs = $sprint->getDateEnd()->getTimestamp() + $timeHelper->getCurrentOffsetUTC();
$averageNumberStoryPoints = 0;
if ($sprint->isPlannedSprint())
{
$storyPoints = new StoryPoints();
$averageNumberStoryPoints = $storyPoints
->calculateAverageNumberCompletedStoryPoints($sprint->getGroupId())
;
}
return [
'id' => $sprint->getId(),
'tmpId' => $sprint->getTmpId(),
'name' => $sprint->getName(),
'sort' => $sprint->getSort(),
'dateStartFormatted' => ConvertTimeStamp($dateStartTs),
'dateEndFormatted' => ConvertTimeStamp($dateEndTs),
'dateStart' => $dateStartTs,
'dateEnd' => $dateEndTs,
'weekendDaysTime' => $this->getWeekendDaysTime($sprint),
'storyPoints' => '',
'completedStoryPoints' => '',
'uncompletedStoryPoints' => '',
'completedTasks' => 0,
'uncompletedTasks' => 0,
'status' => $sprint->getStatus(),
'numberTasks' => 0,
'averageNumberStoryPoints' => $averageNumberStoryPoints,
'items' => [],
'views' => [],
'info' => $info->getInfoData(),
'isExactSearchApplied' => 'N',
'allowedActions' => [
'start' => $this->canStartSprint($this->userId, $sprint->getGroupId()),
'complete' => $this->canCompleteSprint($this->userId, $sprint->getGroupId()),
],
'isShownContent' => (
($sprint->isShownContent($this->userId) && !$sprint->isCompletedSprint())
? 'Y'
: 'N'
),
];
}