diff --git a/src/ExecutionEngine/Hydrator/JobRunListHydrator.php b/src/ExecutionEngine/Hydrator/JobRunListHydrator.php index 4408e61f6..f628f09cc 100644 --- a/src/ExecutionEngine/Hydrator/JobRunListHydrator.php +++ b/src/ExecutionEngine/Hydrator/JobRunListHydrator.php @@ -43,6 +43,7 @@ public function hydrate(JobRunEntity $jobRun): JobRun totalSteps: $totalSteps, creationDate: $jobRun->getCreationDate(), modificationDate: $jobRun->getModificationDate(), + jobName: $jobRun->getJob()?->getName() ?? '', ); } diff --git a/src/ExecutionEngine/Repository/JobRunRepository.php b/src/ExecutionEngine/Repository/JobRunRepository.php index 6bb49f3ce..9e1419052 100644 --- a/src/ExecutionEngine/Repository/JobRunRepository.php +++ b/src/ExecutionEngine/Repository/JobRunRepository.php @@ -18,6 +18,7 @@ use Doctrine\ORM\Tools\Pagination\Paginator; use Pimcore\Bundle\GenericExecutionEngineBundle\Entity\JobRun; use Pimcore\Bundle\StudioBackendBundle\Entity\ExecutionEngine\JobRunHidden; +use Pimcore\Bundle\StudioBackendBundle\Filter\MappedParameter\FilterParameter; use Pimcore\Bundle\StudioBackendBundle\MappedParameter\CollectionFilterParameter; /** @@ -59,14 +60,15 @@ public function getStudioJobRuns(int $ownerId, CollectionFilterParameter $parame $qb->andWhere('jr.ownerId = :ownerId') ->setParameter('ownerId', $ownerId); - $qb->setFirstResult($parameter->getFilters()->getStart()); - $qb->setMaxResults($parameter->getFilters()->getPageSize()); + $filters = $parameter->getFilters() ?? new FilterParameter(); + $qb->setFirstResult($filters->getStart()); + $qb->setMaxResults($filters->getPageSize()); $this->applyFilter($parameter, $qb); $qb->orderBy( - 'jr.'.$parameter->getFilters()->getSortFilter()->getKey(), - $parameter->getFilters()->getSortFilter()->getDirection()); + 'jr.'.$filters->getSortFilter()->getKey(), + $filters->getSortFilter()->getDirection()); // Add execution contexts condition $qb->andWhere('jr.executionContext IN (:executionContexts)') diff --git a/src/ExecutionEngine/Schema/JobRun.php b/src/ExecutionEngine/Schema/JobRun.php index 7dd9f7199..319073a85 100644 --- a/src/ExecutionEngine/Schema/JobRun.php +++ b/src/ExecutionEngine/Schema/JobRun.php @@ -25,7 +25,7 @@ title: 'JobRun', required: [ 'id', 'ownerId', 'state', 'executionContext', 'totalElements', 'currentMessage', - 'jobRunChildId', 'currentStep', 'totalSteps', 'creationDate', 'modificationDate', + 'jobRunChildId', 'currentStep', 'totalSteps', 'creationDate', 'modificationDate', 'jobName', ], type: 'object' )] @@ -56,6 +56,8 @@ public function __construct( private readonly ?int $creationDate = null, #[Property(description: 'Modification date', type: 'integer', example: null)] private readonly ?int $modificationDate = null, + #[Property(description: 'The name of the job', type: 'string', example: 'studio_ee_job_delete_assets')] + private readonly string $jobName = '', ) { } @@ -113,4 +115,9 @@ public function getTotalSteps(): ?int { return $this->totalSteps; } + + public function getJobName(): string + { + return $this->jobName; + } }