Fix count of tasks on the status page

[MAILPOET-4664]
This commit is contained in:
Jan Lysý
2022-11-14 19:52:48 +01:00
committed by Aschepikov
parent a7c1d8431d
commit efd3377ecd

View File

@@ -218,11 +218,12 @@ class ScheduledTasksRepository extends Repository {
], ],
$limit = Scheduler::TASK_BATCH_SIZE $limit = Scheduler::TASK_BATCH_SIZE
) { ) {
$result = [];
foreach ($statuses as $status) {
$tasksQuery = $this->doctrineRepository->createQueryBuilder('st') $tasksQuery = $this->doctrineRepository->createQueryBuilder('st')
->select('st') ->select('st')
->where('st.deletedAt IS NULL') ->where('st.deletedAt IS NULL')
->where('st.status IN (:statuses)'); ->where('st.status = :status');
if (in_array(ScheduledTaskEntity::VIRTUAL_STATUS_RUNNING, $statuses)) { if (in_array(ScheduledTaskEntity::VIRTUAL_STATUS_RUNNING, $statuses)) {
$tasksQuery = $tasksQuery->orWhere('st.status IS NULL'); $tasksQuery = $tasksQuery->orWhere('st.status IS NULL');
@@ -233,11 +234,15 @@ class ScheduledTasksRepository extends Repository {
->setParameter('type', $type); ->setParameter('type', $type);
} }
return $tasksQuery $tasks = $tasksQuery
->setParameter('statuses', $statuses) ->setParameter('status', $status)
->setMaxResults($limit) ->setMaxResults($limit)
->getQuery() ->getQuery()
->getResult(); ->getResult();
$result = array_merge($result, $tasks);
}
return $result;
} }
/** /**