• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/lib/scrum/service/sprintservice.php
  • Класс: BitrixTasksScrumServiceSprintService
  • Вызов: SprintService::getCompletedSprints
public function getCompletedSprints(int $groupId, PageNavigation $sprintNav = null): array
{
	$sprints = [];

	$query = new Query(EntityTable::getEntity());

	$query->setSelect(['*']);
	$query->setFilter([
		'GROUP_ID'=> $groupId,
		'=ENTITY_TYPE' => EntityForm::SPRINT_TYPE,
		'=STATUS' => EntityForm::SPRINT_COMPLETED,
	]);
	$query->setOrder([
		'DATE_END' => 'DESC',
	]);

	if ($sprintNav)
	{
		$query->setOffset($sprintNav->getOffset());
		$query->setLimit($sprintNav->getLimit() + 1);
	}

	$queryObject = $query->exec();

	$n = 0;
	while ($sprintData = $queryObject->fetch())
	{
		$n++;
		if ($sprintNav && ($n > $sprintNav->getPageSize()))
		{
			break;
		}

		$sprint = new EntityForm();

		$sprint->fillFromDatabase($sprintData);

		$sprints[] = $sprint;
	}

	if ($sprintNav)
	{
		$sprintNav->setRecordCount($sprintNav->getOffset() + $n);
	}

	return $sprints;
}