M-Site-detail - Détail d'un site de suivi¶
Type : vue de détail (atteinte par clic sur une card de M-Sites). Persona principal : Marie, partagée avec Karim. Samuel accède à cette vue ponctuellement, sa vue de prédilection est M-MultiSite. Parcours couverts : P1 - Déclarer un site de suivi. Stories couvertes : E1.S2 - Ajouter / modifier / retirer des points, E1.S3 - Saisir GPS et descriptif.
Cette vue présente un site et tout ce qui s'y rattache : sa fiche d'identité (n° de carré, nom, protocole, dates), ses points d'écoute (avec coordonnées GPS optionnelles), et l'historique des passages enregistrés sur ce site. C'est aussi depuis cet écran qu'on modifie le site (ajout/retrait de points, mise à jour des coordonnées GPS).
Wireframe principal - site avec 3 points et plusieurs passages¶
Annotations¶
- Bandeau d'infos clés : 6 cellules condensées (n° de carré, département dérivé des 2 premiers chiffres, protocole, date de création, dernière nuit importée, total passages 2026). C'est la fiche d'identité du site.
- Cards points d'écoute : 3 cards en ligne (sur écran large) ou en colonne (sur écran étroit). La card C3 montre l'état GPS manquant (badge orange
.gps-missing) qui débloquerait E6.S3 (vérification astronomique) si renseigné. - Tableau passages : 7 lignes ici, mais la liste s'allonge à mesure de la saison. Filtrable par statut via le bouton 🔽 en haut à droite.
- Codes statut :
Importé(gris) : copie depuis la SD faite, transformation pas encore lancéeTransformé(orange) : séquences d'écoute disponibles, vérification à faire (P3)Vérifié(rouge si verdict À jeter) ou suivi du verdict OK / DouteuxDéposé(bleu) : téléversement déclaré sur Vigie-Chiro, attente Tadarida
Interactions clés¶
| Élément | Action |
|---|---|
| Breadcrumb « ‹ Mes sites » | Retour à M-Sites |
| Bouton ✏ Modifier (header) | Ouvre formulaire d'édition du site (mêmes champs que création) |
| Bouton 🗑 Supprimer (header) | Confirmation forte. Si des passages sont rattachés, le bouton est désactivé avec message explicite (E1.S2) |
| Bouton + Ajouter un point | Ouvre la modale d'édition d'un nouveau point (cf. variante ci-dessous) |
| ✏ sur une card de point | Ouvre la même modale en mode édition |
| 🗑 sur une card de point | Confirmation. Bloquée si des passages utilisent ce point |
| Bouton 📥 Importer une nuit | Ouvre M-Import avec le site pré-sélectionné |
| Clic sur une ligne du tableau | Ouvre M-Passage du passage sélectionné |
| 🎧 Vérifier (action ligne) | Ouvre M-Qualification directement sur ce passage |
| 📂 Ouvrir (action ligne) | Idem clic sur la ligne, ouvre M-Passage |
Variante - modale d'édition d'un point d'écoute¶
Activée par le bouton + Ajouter un point ou par l'icône ✏ d'une card existante. Les champs GPS et le descriptif sont optionnels mais recommandés.
Notes sur la modale¶
- Champs requis vs optionnels : seul le code de point est obligatoire (étoile rouge
*). Le descriptif et les coordonnées GPS sont optionnels mais utiles. - La validation R2 (1 lettre majuscule + 1 chiffre) est faite à la saisie : si l'utilisateur tape
AAou1A, le champ devient rouge avec un message d'erreur. - La validation des coordonnées (latitude entre -90 et 90, longitude entre -180 et 180) est faite à la perte de focus.
- Le bouton + Ajouter devient Modifier en mode édition d'un point existant. Les valeurs sont alors pré-remplies.
Variante - confirmation de suppression bloquée¶
Si l'utilisateur tente de supprimer un point qui a des passages rattachés, l'opération est bloquée avec un message explicite (E1.S2 critère « bloquée si des passages y sont rattachés »).
Notes sur la suppression bloquée¶
- L'application n'autorise jamais la suppression silencieuse de données métier (R7/R9 implicites : intégrité des fichiers).
- Le bouton « Voir passages » filtre le tableau passages du site sur le point concerné, pour aider l'utilisateur à identifier ce qu'il devrait supprimer en premier.
- Le bouton « Compris » ferme simplement la modale sans rien faire.
Notes pour l'implémentation¶
- La section infos clés est calculée à partir de la BD (DAO sites + DAO passages, agrégation par site_id).
- Le tableau passages doit supporter au moins 50 lignes sans pagination (cas Karim avec 2-3 enregistreurs sur le même site). Au-delà, prévoir une pagination ou un filtrage explicite.
- Le statut workflow affiché (
Importé,Transformé,Vérifié,Déposé) est l'attribut persisté en BD (E0.S3). La couleur du badge est dérivée du statut, pas stockée. - Les icônes d'action (✏, 🗑, 📂, 🎧) doivent être suffisamment grandes pour être cliquables (touch targets ≥ 24×24 px en pratique, 14px ici pour le mock).