Add inconsistency check and fix for sending queues without newsletter
[MAILPOET-1587]
This commit is contained in:
committed by
Aschepikov
parent
cb4cea678a
commit
0d7898b3a5
@@ -7,10 +7,12 @@ use MailPoet\UnexpectedValueException;
|
||||
class DataInconsistencyController {
|
||||
const ORPHANED_SENDING_TASKS = 'orphaned_sending_tasks';
|
||||
const ORPHANED_SENDING_TASK_SUBSCRIBERS = 'orphaned_sending_task_subscribers';
|
||||
const SENDING_QUEUE_WITHOUT_NEWSLETTER = 'sending_queue_without_newsletter';
|
||||
|
||||
const SUPPORTED_INCONSISTENCY_CHECKS = [
|
||||
self::ORPHANED_SENDING_TASKS,
|
||||
self::ORPHANED_SENDING_TASK_SUBSCRIBERS,
|
||||
self::SENDING_QUEUE_WITHOUT_NEWSLETTER,
|
||||
];
|
||||
|
||||
private DataInconsistencyRepository $repository;
|
||||
@@ -25,6 +27,7 @@ class DataInconsistencyController {
|
||||
$result = [
|
||||
self::ORPHANED_SENDING_TASKS => $this->repository->getOrphanedSendingTasksCount(),
|
||||
self::ORPHANED_SENDING_TASK_SUBSCRIBERS => $this->repository->getOrphanedScheduledTasksSubscribersCount(),
|
||||
self::SENDING_QUEUE_WITHOUT_NEWSLETTER => $this->repository->getSendingQueuesWithoutNewsletterCount(),
|
||||
];
|
||||
$result['total'] = array_sum($result);
|
||||
return $result;
|
||||
@@ -38,6 +41,8 @@ class DataInconsistencyController {
|
||||
$this->repository->cleanupOrphanedSendingTasks();
|
||||
} elseif ($inconsistency === self::ORPHANED_SENDING_TASK_SUBSCRIBERS) {
|
||||
$this->repository->cleanupOrphanedScheduledTaskSubscribers();
|
||||
} elseif ($inconsistency === self::SENDING_QUEUE_WITHOUT_NEWSLETTER) {
|
||||
$this->repository->cleanupSendingQueuesWithoutNewsletter();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user