diff --git a/src/Controller/DocumentController.php b/src/Controller/DocumentController.php index f0846b5..cc18e1f 100644 --- a/src/Controller/DocumentController.php +++ b/src/Controller/DocumentController.php @@ -35,10 +35,8 @@ class DocumentController extends AbstractController public function view(document $document, EntityManagerInterface $em): Response { $repo = $em->getRepository(Bibliography::class); - /* $bibliographies = $repo->findAllByDocument($document->getId()); $document->setBibliographies($bibliographies); - */ $repo = $em->getRepository(document::class); $isEditable = $repo->hasCreatorEditor($document->getCreator()); diff --git a/src/Repository/BibliographyRepository.php b/src/Repository/BibliographyRepository.php index 01b34c6..95e3368 100644 --- a/src/Repository/BibliographyRepository.php +++ b/src/Repository/BibliographyRepository.php @@ -29,18 +29,6 @@ class BibliographyRepository extends ServiceEntityRepository return in_array('ROLE_EDITOR', $creator->getRoles()); } - /* - public function delete(int $id): void - { - $qb = $this->createQueryBuilder('b') - ->delete(Bibliography::class, 'bib') - ->where('bib.id = :id') - ->setParameter('id', $id); - - $qb->getQuery()->execute(); - } - */ - public function findAllByCollection(int $collectionId): ?ArrayCollection { $rsm = new ResultSetMappingBuilder($this->getEntityManager()); @@ -84,4 +72,29 @@ class BibliographyRepository extends ServiceEntityRepository return $bibliographies; } + + public function findAllByDocument(int $documentId): ?ArrayCollection + { + $rsm = new ResultSetMappingBuilder($this->getEntityManager()); + $rsm->addRootEntityFromClassMetadata('App\Entity\Bibliography', 'b'); + + $query = $this->getEntityManager()->createNativeQuery( + "SELECT + id, + stato, + editor, + cit_bib, + rif_bib + FROM bibliography b + JOIN rel_riferimento_documento + ON Bibliografia_id_bib = id + WHERE Documento_id_doc = :docId", + $rsm + ); + $query->setParameter('docId', $documentId); + + $bibliographies = new ArrayCollection($query->getResult()); + + return $bibliographies; + } } diff --git a/templates/bibliography/view.html.twig b/templates/bibliography/view.html.twig index c038c2e..f9ca4c5 100644 --- a/templates/bibliography/view.html.twig +++ b/templates/bibliography/view.html.twig @@ -92,6 +92,15 @@ Some stuff... +