This commit is contained in:
2025-07-08 20:03:19 +02:00
parent cff56f0bfd
commit dbbf14bbf4

View File

@ -175,7 +175,9 @@ class RedmineService
public function majProjectIssues(Project $project, string $apiKey, bool $force = false) public function majProjectIssues(Project $project, string $apiKey, bool $force = false)
{ {
$rissues = $this->getProjectIssues($project->getId(), $apiKey, $force ? null : $project->getUpdateAt()); $rissues = $this->getProjectIssues($project->getId(), $apiKey, $force ? null : $project->getUpdateAt());
$rissueids = [];
foreach ($rissues as $rissue) { foreach ($rissues as $rissue) {
array_push($rissueids, $rissue['id']);
$issue = $this->issueRepository->find($rissue['id']); $issue = $this->issueRepository->find($rissue['id']);
if (!$issue) { if (!$issue) {
$issue = new Issue(); $issue = new Issue();
@ -227,6 +229,15 @@ class RedmineService
$this->em->flush(); $this->em->flush();
} }
if ($force) {
foreach ($project->getIssues() as $issue) {
if (!in_array($issue->getId(), $rissueids)) {
$this->em->remove($issue);
$this->em->flush();
}
}
}
} }
public function getProjectIssues(int $projectId, string $apiKey, ?\DateTimeInterface $updatedSince = null): array public function getProjectIssues(int $projectId, string $apiKey, ?\DateTimeInterface $updatedSince = null): array