Biblio and images for Finding

This commit is contained in:
2024-11-25 17:46:26 +01:00
parent 766cf988e4
commit 5e3b4da7c0
4 changed files with 100 additions and 0 deletions

View File

@@ -2,11 +2,13 @@
namespace App\Controller;
use App\Entity\Bibliography;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\Routing\Attribute\Route;
use Doctrine\ORM\EntityManagerInterface;
use App\Entity\Finding;
use App\Entity\Image;
class FindingController extends AbstractController
{
@@ -26,4 +28,25 @@ class FindingController extends AbstractController
return $this->json($findings);
}
#[Route('/finding/{id<\d+>}', name: 'app_finding_record')]
public function record(Finding $finding, EntityManagerInterface $em): JsonResponse
{
$repo = $em->getRepository(Finding::class);
$coords = $repo->coordinates($finding->getId());
$finding->setLat($coords['lat']);
$finding->setLng($coords['lng']);
$repo = $em->getRepository(Bibliography::class);
$biblio = $repo->findAllByFinding($finding->getId());
$repo = $em->getRepository(Image::class);
$images = $repo->findBy(
['finding' => $finding->getId()],
['sequence' => 'ASC']
);
$finding->setBibliography($biblio);
$finding->setImages($images);
return $this->json($finding);
}
}