Use Doctrine in Newsletter::setStatus()
[MAILPOET-2946]
This commit is contained in:
@ -322,6 +322,25 @@ class NewslettersRepository extends Repository {
|
||||
return count($ids);
|
||||
}
|
||||
|
||||
public function existsNotificationHistory(NewsletterEntity $newsletter): bool {
|
||||
$result = $this->entityManager->createQueryBuilder()
|
||||
->select('n')
|
||||
->from(NewsletterEntity::class, 'n')
|
||||
->join('n.queues', 'q')
|
||||
->join('q.task', 't')
|
||||
->where('n.parent = :parent')
|
||||
->andWhere('n.type = :type')
|
||||
->andWhere('n.status = :status')
|
||||
->andWhere('t.status != :taskStatus')
|
||||
->setParameter('parent', $newsletter)
|
||||
->setParameter('type', NewsletterEntity::TYPE_NOTIFICATION_HISTORY)
|
||||
->setParameter('status', NewsletterEntity::STATUS_SENDING)
|
||||
->setParameter('taskStatus', ScheduledTaskEntity::STATUS_PAUSED)
|
||||
->setMaxResults(1)
|
||||
->getQuery()->execute();
|
||||
return count($result) > 0;
|
||||
}
|
||||
|
||||
public function prefetchOptions(array $newsletters) {
|
||||
$this->entityManager->createQueryBuilder()
|
||||
->select('PARTIAL n.{id}, o, opf')
|
||||
|
Reference in New Issue
Block a user