Architecture Frontend¶
Vue d'ensemble¶
Le frontend est une application Angular structurée par fonctionnalités.
Fichiers d'entrée principaux:
front/src/main.tsfront/src/app/app.config.tsfront/src/app/app.routes.ts
Routing¶
Routes principales:
/accueil/connexion/recherche/mes-emprunts/creer-utilisateur/creer-ouvrage/emprunts-bibliothecaire/emprunts-retard
Guards utilisés¶
authGuard: exige un utilisateur connectébibliothecaireGuard: exige le rôlebibliothecaireconnexionGuard: bloque la page de connexion si déjà connecté
Gestion de session¶
Le service ConnexionService:
- stocke l'utilisateur connecté dans
sessionStorage - expose un
BehaviorSubject(utilisateurConnecte$) - gère
connecter(),deconnecter(),estConnecte()
Services API¶
Le frontend s'appuie sur des services Angular dédiés:
AccueilService: statistiques d'accueilConnexionService: authentification et sessionRechercheService: recherche d'ouvragesEmpruntService: vérification, emprunts, exemplairesCreerOuvrageService: auteurs, emplacements, création livre/revueCreerUtilisateurService: départements, création utilisateurUtilisateurService: recherche utilisateur, consultation/mise à jour caution
La plupart des endpoints ciblent http://localhost:8080/api/....
Organisation des composants¶
Le dossier front/src/app est organisé par écrans:
accueilconnexionrecherchemes-empruntscreer-ouvragecreer-utilisateuremprunts-bibliothecaireemprunts-retardsharedpour les éléments partagés (ex: navbar)