Bibliography for Reuse

This commit is contained in:
Nicolò P 2025-08-08 16:28:56 +02:00
parent f91d88e04c
commit f35be9c845
4 changed files with 39 additions and 54 deletions

View File

@ -49,13 +49,10 @@ class ReuseController extends AbstractController
{ {
$repo = $em->getRepository(Reuse::class); $repo = $em->getRepository(Reuse::class);
$coordinates = $repo->coordinates($reuse->getId()); $coordinates = $repo->coordinates($reuse->getId());
//$repo = $em->getRepository(Bibliography::class); $repo = $em->getRepository(Bibliography::class);
//$biblio = $repo->findAllByNotConserved($reuse->getId()); $biblio = $repo->findAllByReuse($reuse->getId());
//$repo = $em->getRepository(Document::class); $reuse->setBibliography($biblio);
//$documents = $repo->findByNotConserved($reuse->getId());
$reuse->setBibliography([]);
//$reuse->setDocuments($documents);
$reuse->setLat($coordinates['lat']); $reuse->setLat($coordinates['lat']);
$reuse->setLng($coordinates['lng']); $reuse->setLng($coordinates['lng']);

View File

@ -120,6 +120,41 @@ class BibliographyRepository extends ServiceEntityRepository
$entities[] = $biblio; $entities[] = $biblio;
} }
return $entities;
}
/**
* @return Bibliography[]
*/
public function findAllByReuse(int $reuseId): array
{
$conn = $this->getEntityManager()->getConnection();
$sql = '
SELECT
b.id,
b.citazione,
b.riferimento,
br.pagine
FROM bibliografia b
INNER JOIN bibliografia_reimpiego br ON br.id_bibliografia = b.id
WHERE br.id_reimpiego = :reuseId
ORDER BY br.ordine ASC
';
$stmt = $conn->prepare($sql);
$results = $stmt->executeQuery(['reuseId' => $reuseId])->fetchAllAssociative();
$entities = [];
foreach ($results as $row) {
$biblio = new Bibliography();
$biblio->setId($row['id']);
$biblio->setCitation($row['citazione']);
$biblio->setReference($row['riferimento']);
$biblio->setPages($row['pagine']);
$entities[] = $biblio;
}
return $entities; return $entities;
} }
} }

View File

@ -32,28 +32,4 @@ class NotConservedRepository extends ServiceEntityRepository
return $conn->executeQuery($sql, ['id' => $id]) return $conn->executeQuery($sql, ['id' => $id])
->fetchAssociative(); ->fetchAssociative();
} }
// /**
// * @return NotConserved[] Returns an array of NotConserved objects
// */
// public function findByExampleField($value): array
// {
// return $this->createQueryBuilder('n')
// ->andWhere('n.exampleField = :val')
// ->setParameter('val', $value)
// ->orderBy('n.id', 'ASC')
// ->setMaxResults(10)
// ->getQuery()
// ->getResult()
// ;
// }
// public function findOneBySomeField($value): ?NotConserved
// {
// return $this->createQueryBuilder('n')
// ->andWhere('n.exampleField = :val')
// ->setParameter('val', $value)
// ->getQuery()
// ->getOneOrNullResult()
// ;
// }
} }

View File

@ -32,28 +32,5 @@ class ReuseRepository extends ServiceEntityRepository
return $conn->executeQuery($sql, ['id' => $id]) return $conn->executeQuery($sql, ['id' => $id])
->fetchAssociative(); ->fetchAssociative();
} }
// /**
// * @return Finding[] Returns an array of Finding objects
// */
// public function findByExampleField($value): array
// {
// return $this->createQueryBuilder('f')
// ->andWhere('f.exampleField = :val')
// ->setParameter('val', $value)
// ->orderBy('f.id', 'ASC')
// ->setMaxResults(10)
// ->getQuery()
// ->getResult()
// ;
// }
// public function findOneBySomeField($value): ?Finding
// {
// return $this->createQueryBuilder('f')
// ->andWhere('f.exampleField = :val')
// ->setParameter('val', $value)
// ->getQuery()
// ->getOneOrNullResult()
// ;
// }
} }