• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/lib/scrum/utility/burndownchart.php
  • Класс: BitrixTasksScrumUtilityBurnDownChart
  • Вызов: BurnDownChart::prepareIdealBurnDownChartData
public function prepareIdealBurnDownChartData(float $sumStoryPoints, SprintRanges $sprintRanges): array
{
	$idealData = [
		[
			'day' => Loc::getMessage('TASKS_SCRUM_SPRINT_BURN_DOWN_CHART_NULL_DAY_LABEL'),
			'idealValue' => $sumStoryPoints
		]
	];

	$weekDayCount = count($sprintRanges->getWeekdays());
	$averagePointsPerDay = $weekDayCount > 0 ? ($sumStoryPoints / $weekDayCount) : 0;

	$value = 0;
	foreach ($sprintRanges->getWeekdays() as $dayNumber => $dayTime)
	{
		$realDayNumber = $sprintRanges->getRealDayNumber($dayNumber);
		$value += $averagePointsPerDay;
		$idealData[] = [
			'day' => Loc::getMessage('TASKS_SCRUM_SPRINT_BURN_DOWN_CHART_DAY_LABEL').' '.$realDayNumber,
			'idealValue' => round(($sumStoryPoints - $value), 2)
		];
	}

	return $idealData;
}