Files
contrib/src/Repository/ProjetRepository.php

40 lines
1.0 KiB
PHP
Raw Normal View History

2025-10-16 17:09:34 +02:00
<?php
namespace App\Repository;
use App\Entity\Projet;
use Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository;
use Doctrine\Persistence\ManagerRegistry;
/**
* @extends ServiceEntityRepository<Projet>
*/
class ProjetRepository extends ServiceEntityRepository
{
public function __construct(ManagerRegistry $registry)
{
parent::__construct($registry, Projet::class);
}
// 🔹 Exemple : trouver un projet par son nom
public function findByName(string $name): ?Projet
{
return $this->createQueryBuilder('p')
->andWhere('p.name = :name')
->setParameter('name', $name)
->getQuery()
->getOneOrNullResult();
}
// 🔹 Exemple : récupérer tous les projets actifs
public function findActiveProjects(): array
{
return $this->createQueryBuilder('p')
->andWhere('p.isActive = :active')
->setParameter('active', true)
->orderBy('p.createdAt', 'DESC')
->getQuery()
->getResult();
}
}