Test relations for bibliography

This commit is contained in:
2024-11-04 22:08:44 +01:00
parent 0a41ff4a7b
commit a2f518ee15
5 changed files with 33 additions and 7 deletions

View File

@@ -18,7 +18,7 @@ class BibliographyRepository extends ServiceEntityRepository
parent::__construct($registry, Bibliography::class);
}
public function findAllCollection(int $collectionId): ?ArrayCollection
public function findAllByCollection(int $collectionId): ?ArrayCollection
{
$rsm = new ResultSetMappingBuilder($this->getEntityManager());
$rsm->addRootEntityFromClassMetadata('App\Entity\Bibliography', 'b');

View File

@@ -3,9 +3,10 @@
namespace App\Repository;
use App\Entity\Collection;
use App\Repository\BibliographyRepository;
use Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository;
use Doctrine\Persistence\ManagerRegistry;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\ORM\Query\ResultSetMappingBuilder;
/**
* @extends ServiceEntityRepository<Collection>
@@ -16,5 +17,24 @@ class CollectionRepository extends ServiceEntityRepository
{
parent::__construct($registry, Collection::class);
}
}
public function findAllByBibliography(int $biblioId): ?ArrayCollection
{
$rsm = new ResultSetMappingBuilder($this->getEntityManager());
$rsm->addRootEntityFromClassMetadata('App\Entity\Collection', 'c');
$query = $this->getEntityManager()->createNativeQuery(
"SELECT id, stato, editor, tit_coll, data_coll
FROM collection c
JOIN rel_riferimento_collezione
ON Collezione_id_coll = id
WHERE Bibliografia_id_bib = :biblioId",
$rsm
);
$query->setParameter('biblioId', $biblioId);
$collections = new ArrayCollection($query->getResult());
return $collections;
}
}