E1 - 🌐 Gérer ses sites et points de suivi¶
← Retour au hub story mapping · Parcours principal : P1 - Déclarer un site de suivi · ✅ MUST
Portée : permettre à l'utilisateur de déclarer ses sites de suivi (créés en amont sur le portail VigieChiro) dans l'application, avec leurs points d'écoute, pour pouvoir y rattacher ensuite les nuits importées. Inclut la création à la volée depuis l'import.
Persona principal : Marie (mais utilisé par tous : Karim avec ses 3 chantiers parallèles, Samuel avec ses 36+ sites).
Pré-requis : E0.S1 (schéma BD initialisé), E0.S2 (DAO sites/points opérationnels).
E1.S1 - Saisir un site de suivi avec son n° de carré¶
En tant que Marie (utilisatrice débutante)
Je veux déclarer un nouveau site de suivi en saisissant son n° de carré et au moins un point d'écoute
Afin de pouvoir y rattacher mes futures nuits de capture lors de l'import
Critères d'acceptation :
- Le formulaire valide que le n° de carré fait exactement 6 chiffres (R1 du modèle conceptuel).
- Le formulaire alerte si l'utilisateur saisit 5 chiffres pour les départements 1-9 (leading zero manquant) avec un message explicite (ex. « Pour le département 4, le n° de carré doit commencer par 0 »).
- Le nom convivial est facultatif mais recommandé (placeholder « ex. Étang de la Tuilière »).
- Le protocole est préselectionné sur
Point Fixeet non modifiable (seul protocole supporté pour le MVP). - Au moins un point d'écoute est exigé pour valider le site.
- Le code de point doit faire 1 lettre majuscule + 1 chiffre (R2), validé à la saisie.
- Le site créé apparaît immédiatement dans la vue des sites après validation.
- Le site est persisté en base et survit au redémarrage de l'application.
Parcours rattaché : P1
Maquettes cibles : M-Sites (vue listant les sites + bouton « Ajouter »), M-Site-detail (formulaire de création/édition)
Dépendances : E0.S1, E0.S2
Complexité : ★★ (simple — formulaire avec validations métier sur un seul écran)
MoSCoW : ✅ MUST
E1.S2 - Ajouter, modifier ou retirer des points d'écoute sur un site existant¶
En tant que Marie
Je veux pouvoir gérer la liste des points d'écoute d'un site déjà déclaré (en ajouter, en renommer, en supprimer)
Afin de maintenir mes sites à jour si j'étends mon protocole ou si je corrige une erreur de saisie initiale
Critères d'acceptation :
- Depuis la fiche détail d'un site, l'utilisateur voit la liste de ses points avec un bouton « + Ajouter un point ».
- Chaque point existant a une action « Modifier » et une action « Supprimer ».
- La modification valide les mêmes règles que la création (R2 : 1 lettre + 1 chiffre).
- La suppression d'un point est bloquée si des passages y sont rattachés, avec un message explicite (« Ce point est utilisé par 3 passages. Supprimez d'abord les passages ou modifiez le rattachement. »).
- La modification du code d'un point (ex.
A1→A2) n'affecte pas les fichiers déjà renommés des passages existants - une note d'avertissement informe l'utilisateur (« Le renommage d'un point ne re-renomme pas les fichiers des passages déjà importés »). - Test d'intégration sur la suppression bloquée par contrainte d'intégrité.
Parcours rattaché : P1
Maquettes cibles : M-Site-detail (avec section « Points d'écoute » et boutons d'action)
Dépendances : E0.S2, E1.S1
Complexité : ★★ (simple — CRUD avec une contrainte d'intégrité métier)
MoSCoW : ✅ MUST
E1.S3 - Saisir les coordonnées GPS et un descriptif d'un point d'écoute¶
Je veux pouvoir associer des coordonnées GPS et un descriptif à chaque point d'écoute
Afin de retrouver facilement le point sur le terrain et de permettre les contrôles automatiques (cohérence horaires, calcul astronomique pour P6)
Critères d'acceptation :
- Le formulaire de création/édition d'un point inclut deux champs optionnels :
Latitude(décimal, ex. 43.5298) etLongitude(décimal, ex. 5.4474). - Un champ texte libre
Descriptif(multi-ligne, optionnel) permet d'ajouter des notes (« près du chêne, à 30 m du chemin »). - Si les coordonnées sont saisies, elles sont validées comme étant dans des plages plausibles (latitude entre -90 et 90, longitude entre -180 et 180).
- Les coordonnées et le descriptif sont persistés.
- La présence des coordonnées GPS est un prérequis débloquant pour la story de cohérence horaires (E6, parcours P6).
Parcours rattaché : P1
Maquettes cibles : M-Site-detail (champs supplémentaires dans le formulaire de point)
Dépendances : E0.S2, E1.S1
Complexité : ★ (trivial — 2 champs avec validation simple)
MoSCoW : ✅ MUST (les coordonnées débloquent E6 « Cohérence horaires »)
E1.S4 - Vue des sites déclarés avec compteurs de passages¶
Je veux une vue d'ensemble de tous mes sites déclarés avec, pour chacun, un compteur du nombre de passages enregistrés
Afin de me repérer rapidement dans mon volume et identifier d'un coup d'œil les sites qui n'ont pas encore été utilisés cette saison
Critères d'acceptation :
- La vue principale liste tous les sites déclarés (carte, ligne ou tableau, à arbitrer).
- Pour chaque site, on voit : le n° de carré, le nom convivial, le nombre de points d'écoute, le nombre de passages cette saison, la date du dernier passage importé.
- Un clic sur un site ouvre sa fiche détail (M-Site-detail).
- Un bouton mis en avant « + Nouveau site » est toujours visible.
- Si aucun site n'est déclaré, la vue affiche un état vide explicite (« Vous n'avez encore aucun site. Commencez par en déclarer un. ») avec une seule action mise en avant.
- La vue se met à jour automatiquement après création/modification d'un site.
Parcours rattaché : P1, point d'entrée vers P2
Maquettes cibles : M-Sites
Dépendances : E0.S2, E0.S3 (pour les compteurs de passages), E1.S1
Complexité : ★★★ (moyen — vue avec agrégation, état vide, navigation)
MoSCoW : ✅ MUST
E1.S5 - Créer un nouveau site directement depuis la modale d'import¶
En tant que Marie
Je veux pouvoir créer un nouveau site sans quitter le flux d'import si je réalise que je n'ai pas encore déclaré le site auquel ma nuit appartient
Afin de ne pas être obligée d'annuler l'import, déclarer le site, puis recommencer l'import
Critères d'acceptation :
- Dans la modale d'import (P2, étape 3), le combobox « Site » propose en plus une option « + Créer un nouveau site » en tête de liste.
- Le clic sur cette option ouvre le formulaire de P1 (E1.S1) en superposition sans fermer la modale d'import.
- Après validation du nouveau site, la modale d'import se rafraîchit avec ce site présélectionné (et le combobox des points est mis à jour).
- Si l'utilisateur annule la création du site, il revient à la modale d'import dans son état précédent (aucun fichier n'a été touché, R9).
- Cas particulier des fichiers déjà préfixés (extraction du quadruplet) : si le carré ne correspond à aucun site déclaré, la même option « + Créer un nouveau site » est proposée, avec le n° de carré pré-rempli depuis le préfixe.
Parcours rattaché : P1 (variante), P2
Maquettes cibles : M-Import (avec l'option « + Créer un nouveau site » dans le combobox)
Dépendances : E1.S1, E2 (la modale d'import existe)
Complexité : ★★ (simple — composition d'écrans déjà développés)
MoSCoW : ✅ MUST