Use a single string instead of array of strings

[MAILPOET-3625]
This commit is contained in:
Pavel Dohnal
2021-08-20 13:51:02 +02:00
committed by Veljko V
parent 3b7752daed
commit 5d967f3457
2 changed files with 5 additions and 9 deletions

View File

@ -156,7 +156,7 @@ class ImportExport extends APIEndpoint {
public function setupWooCommerceInitialImport() {
try {
$task = $this->scheduledTasksRepository->findScheduledOrRunningTask([WooCommerceSync::TASK_TYPE]);
$task = $this->scheduledTasksRepository->findScheduledOrRunningTask(WooCommerceSync::TASK_TYPE);
if (($task instanceof ScheduledTaskEntity) && $task->getStatus() === null) {
return $this->successResponse();
}

View File

@ -46,19 +46,15 @@ class ScheduledTasksRepository extends Repository {
->getResult();
}
/**
* @param string[] $types
* @return ScheduledTaskEntity|null
*/
public function findScheduledOrRunningTask(array $types = []): ?ScheduledTaskEntity {
public function findScheduledOrRunningTask(?string $type): ?ScheduledTaskEntity {
$queryBuilder = $this->doctrineRepository->createQueryBuilder('st')
->select('st')
->where('(st.status = :scheduledStatus) OR (st.status is NULL)')
->setParameter('scheduledStatus', ScheduledTaskEntity::STATUS_SCHEDULED);
if (!empty($types)) {
if (!empty($type)) {
$queryBuilder
->andWhere('st.type in (:types)')
->setParameter('types', $types);
->andWhere('st.type = :type')
->setParameter('type', $type);
}
return $queryBuilder->getQuery()->getOneOrNullResult();
}