Refactor fetching task ids to doctrine in task subscribers listing

[MAILPOET-4006]
This commit is contained in:
Rostislav Wolny
2022-03-17 13:37:24 +01:00
committed by Veljko V
parent 57359c0d8a
commit 823aca38e4
2 changed files with 25 additions and 4 deletions

View File

@@ -48,6 +48,17 @@ class SendingQueuesRepository extends Repository {
->getOneOrNullResult();
}
public function getTaskIdsByNewsletterId(int $newsletterId): array {
$results = $this->entityManager->createQueryBuilder()
->select('IDENTITY(s.task) as task_id')
->from(SendingQueueEntity::class, 's')
->andWhere('s.newsletter = :newsletter')
->setParameter('newsletter', $newsletterId)
->getQuery()
->getArrayResult();
return array_map('intval', array_column($results, 'task_id'));
}
public function isSubscriberProcessed(SendingQueueEntity $queue, SubscriberEntity $subscriber): bool {
$task = $queue->getTask();
if (is_null($task)) return false;