🏅 Profil joueur — Cas d'utilisation¶
UC-PROF-001 : Consulter ses statistiques¶
Acteur : Joueur authentifié
Préconditions : L'utilisateur est connecté
Scénario principal :
- Le joueur accède à sa page de profil
- Le système affiche les statistiques personnelles : nombre de parties, victoires, défaites, ratio
- Le système affiche l'évolution du niveau sous forme de graphique
Scénario alternatif :
- A1 : Le joueur n'a aucune partie validée → Le système affiche des valeurs à zéro et un message invitant le joueur à jouer ses premières parties
UC-PROF-002 : Consulter l'historique des parties¶
Acteur : Joueur authentifié
Préconditions : L'utilisateur est connecté
Scénario principal :
- Le joueur accède à la page « Activités » (historique)
- Le système affiche la liste paginée des parties terminées ou validées
- Chaque carte de partie affiche : badge résultat (victoire/défaite/en attente), score, type de match, lieu, date, avatars des adversaires
- Le joueur peut filtrer par type de partie (toutes, compétitives, amicales)
- Le joueur peut naviguer entre les pages
Scénario alternatif :
- A1 : Aucune partie dans l'historique → Le système affiche un état vide avec un message informatif
UC-PROF-003 : Gérer ses clubs favoris¶
Acteur : Joueur authentifié
Préconditions : L'utilisateur est connecté
Ajouter un club favori¶
- Le joueur consulte la fiche d'un club
- Le joueur clique sur « Ajouter aux favoris »
- Le système ajoute le club à la liste des favoris
- Le club apparaît dans la section « Clubs favoris » du profil
Retirer un club favori¶
- Le joueur consulte sa page de profil
- Dans la section « Clubs favoris », le joueur clique sur le bouton cœur d'un club
- Le système retire le club de la liste des favoris
- Le club disparaît de la section
Règles :
- Un club ne peut être ajouté qu'une seule fois aux favoris
- Le retrait est immédiat et sans confirmation
Endpoints API¶
| Méthode | Endpoint | Description |
|---|---|---|
GET | /api/v1/profile/statistics | Statistiques personnelles du joueur |
GET | /api/v1/profile/history?page=1&per_page=10 | Historique paginé des parties |
GET | /api/v1/profile/favorite-clubs | Liste des clubs favoris |
POST | /api/v1/clubs/{club}/favorite | Ajouter un club aux favoris |
DELETE | /api/v1/clubs/{club}/favorite | Retirer un club des favoris |
Tous les endpoints nécessitent un token JWT valide (Authorization: Bearer {token}).