public function findCalendarByExternalCoverageIdAndApplication($externalCoverageId, $applicationCanonicalName)
    {
        $qb = $this->createQueryBuilder('cal');
        $qb
            ->addSelect('cus')
            ->addSelect('ne')
            ->addSelect('per')
            ->leftJoin('cal.customer', 'cus')
            ->leftJoin('cus.navitiaEntity', 'ne')
            ->join('ne.perimeters', 'per', 'WITH', 'per.externalCoverageId=:externalCoverageId')
            ->leftJoin('cus.applications', 'ca', 'WITH', 'ca.isActive=True')
            ->leftJoin('ca.application', 'app')
            ->andWhere('app.canonicalName=:applicationCanonicalName')
            ->setParameter('externalCoverageId', $externalCoverageId)
            ->setParameter('applicationCanonicalName', $applicationCanonicalName)
        ;

        return $qb->getQuery()->getResult();
    }