3.7 KiB
Epic 4: Progression Tracking
Goal: Implémenter le tracking des progressions par personnage : quêtes Dofus, donjons par paliers, et recherchés par région. L'utilisateur peut marquer les progressions comme complétées et voir les statistiques par team.
Story 4.1: Progression Database Schema
As a developer, I want a flexible schema for tracking character progressions, so that different types of progressions can be managed uniformly.
Acceptance Criteria:
- Model
ProgressionType: id, category (enum: DOFUS_QUEST, DUNGEON, WANTED), name, region (nullable), levelRange (nullable), createdAt - Model
CharacterProgression: characterId, progressionTypeId, completed (boolean), completedAt (nullable) - Enum
ProgressionCategory: DOFUS_QUEST, DUNGEON, WANTED - Index composite sur (characterId, progressionTypeId) pour performance
- Migration générée et appliquée
- Seed script avec données de progression types :
- 10 quêtes Dofus (Turquoise, Pourpre, Émeraude, Glaces, Abyssal, Nébuleux, Domakuro, Dorigami, Tacheté, Vulbis)
- Donjons par paliers (1-50, 51-100, 101-150, 151-190, 191-200)
- Recherchés par région (Astrub, Amakna, Frigost I/II/III, etc.)
Story 4.2: Character Progression View
As a user, I want to see and edit a character's progressions on their detail page, so that I can track what each character has completed.
Acceptance Criteria:
- Section "Progressions" sur la page
/characters/:id - Onglets par catégorie : Quêtes Dofus | Donjons | Recherchés
- Liste des items avec checkbox pour marquer fait/pas fait
- Date de complétion affichée si complété
- Clic sur checkbox toggle l'état et sauvegarde immédiatement
- Compteur de progression par catégorie (ex: "7/10 Dofus")
- Filtres : Tous | Faits | Non faits
- Items triés par nom ou par ordre logique (niveau pour donjons)
Story 4.3: Bulk Progression Update
As a user, I want to update progressions for multiple characters at once, so that I can quickly mark a dungeon done for my whole team.
Acceptance Criteria:
- Page
/progressions/bulkaccessible depuis le menu - Sélecteur de personnages (multi-select avec filtres)
- Sélection possible par team entière (bouton "Sélectionner team X")
- Sélecteur de progression type à mettre à jour
- Action : "Marquer comme fait" ou "Marquer comme non fait"
- Confirmation avant exécution avec récapitulatif (X personnages, progression Y)
- Toast de succès avec nombre de mises à jour effectuées
- Retour à la page précédente après action
Story 4.4: Team Progression Status
As a user, I want to see the progression status of my team for a specific objective, so that I can see who still needs to complete it.
Acceptance Criteria:
- Sur
/teams/:id, nouvelle section "Statut des progressions" - Sélecteur de progression type (ex: "Dofus Turquoise")
- Tableau : membres de la team avec statut (fait/pas fait) pour cette progression
- Pourcentage global affiché (ex: "6/8 = 75%")
- Indicateur visuel clair (vert = fait, rouge = pas fait)
- Bouton "Marquer fait pour tous" pour bulk update depuis cette vue
- Filtrable par catégorie de progression
Story 4.5: Progression Filters in Character List
As a user, I want to filter characters by progression status, so that I can find who hasn't completed a specific objective.
Acceptance Criteria:
- Nouvelle section dans la sidebar des filtres : "Progression"
- Sélecteur de progression type
- Options : "A fait" / "N'a pas fait"
- Combinable avec les autres filtres existants
- Exemple d'usage : "Montrer tous les Cra qui n'ont pas fait le Dofus Turquoise"
- Compteur de résultats mis à jour
- Filtre stocké dans l'URL