fix: force status 'completed' on ended dispositions

This commit is contained in:
Björn Fromme
2024-04-05 08:45:26 +02:00
parent 8d0babba14
commit a04dc7bee8
@@ -5,13 +5,11 @@ namespace App\Service\Cron;
use App\Entity\Disposition; use App\Entity\Disposition;
use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityManagerInterface;
use Psr\Log\LoggerInterface; use Psr\Log\LoggerInterface;
use Symfony\Component\Workflow\WorkflowInterface;
class DispositionStatusService class DispositionStatusService
{ {
public function __construct( public function __construct(
private readonly EntityManagerInterface $entityManager, private readonly EntityManagerInterface $entityManager,
private readonly WorkflowInterface $dispositionStateMachine,
private readonly LoggerInterface $logger private readonly LoggerInterface $logger
) { ) {
} }
@@ -28,9 +26,7 @@ class DispositionStatusService
} }
foreach ($endedDispositions as $disposition) { foreach ($endedDispositions as $disposition) {
if ($this->dispositionStateMachine->can($disposition, 'complete')) { $disposition->setStatus(Disposition::STATUS_COMPLETED);
$this->dispositionStateMachine->apply($disposition, 'complete');
}
} }
$this->entityManager->flush(); $this->entityManager->flush();