Application web de billetterie en ligne pour la gestion et la réservation de concerts.
Avant de lancer le projet, assure-toi d'avoir installé :
- Node.js v18 ou supérieur
- npm v9 ou supérieur
- Angular CLI v17 ou supérieur
npm install -g @angular/cli- Le backend JAX-RS doit tourner sur
http://localhost:8080
git clone <url-du-repo>
cd concert_frontnpm installng serveL'application sera accessible sur http://localhost:4200
L'URL du backend est configurée dans chaque service Angular (src/app/services/) :
private apiUrl = 'http://localhost:8080';Si ton backend tourne sur un port différent, modifie cette valeur dans :
src/app/services/auth.tssrc/app/services/event.service.tssrc/app/services/ticket.service.ts
- Consulter la liste des concerts disponibles
- Voir les détails de chaque concert (artiste, lieu, date, prix, places)
- Accéder au formulaire d'inscription / connexion
- Créer un compte client
- Se connecter / se déconnecter
- Parcourir et réserver des billets pour des concerts
- Consulter ses billets achetés
- Se connecter avec un compte manager (créé par un admin)
- Créer des événements (concerts)
- Consulter la liste de ses événements avec leur statut
- Supprimer un événement (si non validé)
- Connexion avec le compte admin par défaut (
admin@concert.com/admin123) - Créer des comptes managers
- Consulter tous les événements
- Valider ou refuser les événements soumis par les managers
src/app/
├── components/
│ ├── public/ → Pages publiques (accueil, concerts)
│ ├── auth/ → Connexion, inscription
│ ├── client/ → Dashboard client, tickets
│ ├── manager/ → Dashboard manager, événements
│ └── admin/ → Dashboard admin, gestion managers/événements
├── services/
│ ├── auth.ts → Authentification, gestion session
│ ├── event.service.ts → Gestion des événements
│ └── ticket.service.ts→ Gestion des billets
└── guards/
├── auth.guard.ts → Protection des routes (connexion requise)
└── role.guard.ts → Protection par rôle (CLIENT, MANAGER, ADMIN)
| Rôle | Accès | Création du compte |
|---|---|---|
| CLIENT | Réservation de billets | Inscription publique |
| MANAGER | Gestion des événements | Créé par un Admin |
| ADMIN | Gestion globale | Initialisé au démarrage du backend |
- Angular 17+ — Framework frontend
- TypeScript — Langage principal
- Angular Router — Navigation et guards
- HttpClient — Communication avec l'API REST
- Reactive Forms — Gestion des formulaires