No description
Find a file
2026-01-01 18:41:49 +01:00
.idea make migration script 2026-01-01 18:41:22 +01:00
assets refatco 2025-12-19 19:22:23 +01:00
bin Initial commit 2025-12-06 11:23:06 +01:00
config Init bundle release 2026-01-01 18:38:17 +01:00
migrations make migration script 2026-01-01 18:41:22 +01:00
public Initial commit 2025-12-06 11:23:06 +01:00
src feat : add bundle, clean useless code 2025-12-30 13:12:38 +01:00
templates refatco 2025-12-19 19:22:23 +01:00
tests add more test 2025-12-19 17:47:07 +01:00
translations Initial commit 2025-12-06 11:23:06 +01:00
.editorconfig Initial commit 2025-12-06 11:23:06 +01:00
.env on going more info 2025-12-07 12:22:43 +01:00
.env.dev Initial commit 2025-12-06 11:23:06 +01:00
.env.test Initial commit 2025-12-06 11:23:06 +01:00
.gitignore Initial commit 2025-12-06 11:23:06 +01:00
compose.override.yaml Initial commit 2025-12-06 11:23:06 +01:00
compose.yaml Initial commit 2025-12-06 11:23:06 +01:00
composer.json Init bundle release 2026-01-01 18:38:17 +01:00
composer.lock Init bundle release 2026-01-01 18:38:17 +01:00
deploy.sh add deploy script 2025-12-07 11:59:25 +00:00
importmap.php add localisation 2025-12-19 19:15:04 +01:00
phpunit.dist.xml Initial commit 2025-12-06 11:23:06 +01:00
README.md Init hexa 2025-12-06 13:12:20 +01:00
symfony.lock feat : add bundle, clean useless code 2025-12-30 13:12:38 +01:00

parking-pmr

Projet Symfony visant à afficher sur une carte Google les places de parkings récupérées depuis une API REST.

Architecture mise en place: Hexagonale (Ports & Adapters)

  • Domain (coeur métier)
    • App/Domain/Parking/Parking: entité/VO représentant une place de parking
    • App/Domain/Parking/ParkingRepositoryInterface: port primaire pour accéder aux parkings
  • Application (use cases)
    • App/Application/Parking/GetAllParkings: cas dusage pour lister les parkings
  • Infrastructure (adapters)
    • App/Infrastructure/Parking/ApiParkingRepository: adaptateur utilisant HttpClient pour interroger lAPI REST externe
  • Interface utilisateur (Symfony Controller + Twig)
    • App/Controller/HomeController: injecte le cas dusage et transmet les données au template
    • templates/home/index.html.twig: prépare laffichage de la carte (div #map) et liste les parkings

Configuration

  1. Définir lURL de lAPI REST en variable denvironnement (par exemple dans .env.local):

    PARKING_API_URL="https://exemple.tld/api/parkings"

  2. La valeur est injectée via config/services.yaml dans le service ApiParkingRepository.

Lancer lapplication

  • Démarrer le serveur Symfony et accéder à la page daccueil (/). Si lURL dAPI est renseignée et renvoie des éléments avec au minimum latitude/longitude, la liste des parkings sera affichée.

Prochaines étapes (non incluses dans ce commit)

  • Brancher le SDK Google Maps et placer des marqueurs en fonction des coordonnées
  • Affiner le mapping JSON -> domaine selon le format réel de lAPI
  • Ajouter des tests unitaires pour le cas dusage et ladaptateur