Newer
Older
activity-manager / src / Repository / TaskRepository.php
@Kilian Riou Kilian Riou on 14 Apr 2021 811 bytes Add task table
<?php
namespace App\Repository;

use Doctrine\ORM\EntityRepository;
use Doctrine\ORM\QueryBuilder;

class TaskRepository extends EntityRepository
{

    /** @var array Default sorting */
    public const DEFAULT_ORDER = [
        'activity' => 'desc',
        'name' => 'asc',
    ];

    /**
     * {@inheritdoc}
     */
    public function findAll(): array
    {
        return $this->findBy([], ActivityRepository::DEFAULT_ORDER);
    }

    /**
     * {@inheritdoc}
     */
    public function createQueryBuilder($alias, $indexBy = null): QueryBuilder
    {
        $queryBuilder = parent::createQueryBuilder($alias, $indexBy);
        foreach ($this::DEFAULT_ORDER as $field => $order) {
            $queryBuilder->addOrderBy($alias . '.' . $field, $order);
        }

        return $queryBuilder;
    }
}