This commit is contained in:
2025-07-06 22:56:43 +02:00
parent b1df69696f
commit 6fa2fb4cf1
5 changed files with 69 additions and 6 deletions

View File

@ -26,6 +26,30 @@ class HomeController extends AbstractController
return $this->noproject();
}
$redmine = $this->redmineService->getProject($project->getId(), $this->getParameter('redmineApikey'));
$project->setRedmine($redmine);
$this->redmineService->majProjectIssues($project, $this->getParameter('redmineApikey'), false);
$predmine = $project->getRedmine();
foreach ($project->getIssues() as $issue) {
foreach ($predmine['sprints'] as $key => $sprint) {
if ($sprint['id'] === $issue->getRedmine()['sprint']['agile_sprint_id']) {
if (!array_key_exists('story_points', $predmine['sprints'][$key])) {
$predmine['sprints'][$key]['story_points']['total'] = 0;
}
$predmine['sprints'][$key]['story_points']['total'] += $issue->getRedmine()['sprint']['story_points'];
if (!array_key_exists($issue->getRedmine()['status']['id'], $predmine['sprints'][$key]['story_points'])) {
$predmine['sprints'][$key]['story_points'][$issue->getRedmine()['status']['id']] = 0;
}
$predmine['sprints'][$key]['story_points'][$issue->getRedmine()['status']['id']] += $issue->getRedmine()['sprint']['story_points'];
}
}
}
$project->setRedmine($predmine);
return $this->render('home/home.html.twig', [
'usemenu' => true,
'usesidebar' => false,

View File

@ -83,7 +83,7 @@ class ProjectController extends AbstractController
$redmine = $this->redmineService->getProject($project->getId(), $this->getParameter('redmineApikey'));
$project->setRedmine($redmine);
$em->flush();
$this->redmineService->majProjectIssues($project, $this->getParameter('redmineApikey'), false);
$this->redmineService->majProjectIssues($project, $this->getParameter('redmineApikey'), true);
return $this->redirectToRoute('app_admin_project');
}

View File

@ -203,9 +203,11 @@ class RedmineService
// Calcul de la position sprint
$issueSprintId = $rissue['sprint']['agile_sprint_id'];
$sprintPosition = '';
foreach ($project->getRedmine()['sprints'] as $sprint) {
$sprintIndex = null;
foreach ($project->getRedmine()['sprints'] as $key => $sprint) {
if ($sprint['id'] === $issueSprintId) {
$sprintPosition = $sprint['id']; // ou $index + 1 si tu veux position humaine
$sprintPosition = $sprint['id'];
$sprintIndex = $key;
break;
}
}