Feature #1133
openImplémenter une page de profil utilisateur avec gestion des crédits et des tiers d'abonnement
0%
## Spec — Page de profil utilisateur + gestion crédits & tiers (épopée #1133)
### Approche
Domaine hexagonal credits/tiers/audit dans `api/` (domain/application/infrastructure/presentation), édition réservée aux admins OmDev, événements de domaine déclenchant les notifications email. Frontend Next.js (next-intl en.ts+fr.ts, Atomic Design) : page profil client + page admin.
### Tiers
Démarrage 2 500 €, Maintenance 4 200 €, Évolutions 9 700 €, Pilotage 16 000 € (crédits/flux/SLA), seedés et synchronisés avec les offres commerciales.
### Critères d'acceptation (épopée)
- Page profil client accessible (« Mon compte »); infos perso modifiables sauf email.
- Changement mot de passe sécurisé : vérif ancien + email de confirmation.
- Jauge crédits adaptative (vert >50 %, orange <30 %, rouge <10 %).
- Tier affiché avec avantages + couleur distinctive; bouton « Demander une mise à niveau » (optionnel).
- Page admin : lister/filtrer/modifier tiers, ajuster crédits, historique consultable.
- Emails : mot de passe / tier / crédits bas (<20 %).
- Permissions : seuls les admins OmDev modifient tiers/crédits.
### Enfants (split par responsabilité)
1. Backend — modèle crédits/tiers + permissions + historique (racine).
2. Backend — notifications email (dépend de 1).
3. Frontend — page profil client (dépend de 1).
4. Fullstack — changement de mot de passe sécurisé (dépend de 1,2).
5. Fullstack — page admin (dépend de 1,2).
Description
### Problème
Actuellement, les utilisateurs de Pipeliner n'ont pas de page dédiée pour consulter ou gérer leur profil, leurs crédits disponibles, leur niveau d'abonnement (tier), ou pour modifier leur mot de passe. Les administrateurs OmDev ne peuvent pas non plus attribuer ou modifier les tiers des clients directement depuis l'interface.
### Contexte
Dans le cadre de l'amélioration de l'expérience utilisateur et de la gestion administrative, il est nécessaire d'ajouter une page de profil complète pour les clients et une interface dédiée pour les administrateurs. Cette fonctionnalité permettra :
- Aux clients de visualiser leurs informations personnelles, leurs crédits restants, leur tier actuel, et de modifier leur mot de passe.
- Aux administrateurs de gérer les tiers des clients et, optionnellement, leurs crédits.
Les tiers disponibles sont : Démarrage (2 500 €), Maintenance (4 200 €), Évolutions (9 700 €), et Pilotage (16 000 €), chacun avec des caractéristiques spécifiques (crédits, flux, SLA).
### Comportement proposé
1. **Page de profil client** :
- Affichage des informations personnelles (nom, email, entreprise).
- Section dédiée aux crédits restants avec une jauge visuelle (couleur adaptative selon le niveau de consommation).
- Affichage du tier actuel avec ses avantages (liste à puces).
- Formulaire sécurisé pour changer le mot de passe (avec vérification de l'ancien mot de passe et envoi d'un email de confirmation).
- Option : historique des consommations de crédits.
2. **Page admin** :
- Liste filtrable des clients avec leurs informations clés (nom, email, tier, crédits restants).
- Possibilité de modifier le tier d'un client via un menu déroulant.
- Option : ajout/soustraction manuelle de crédits.
- Historique des modifications apportées aux tiers et crédits.
3. **Notifications** :
- Envoi d'emails automatiques pour les changements de mot de passe, de tier, ou en cas de crédits bas (<20%).
## Acceptance criteria
['- [ ] La page de profil client est accessible depuis le menu principal (ex. : bouton "Mon compte").', '- [ ] Les informations personnelles du client sont affichées et modifiables (sauf email).', "- [ ] Le changement de mot de passe est sécurisé : vérification de l'ancien mot de passe et envoi d'un email de confirmation.", '- [ ] Les crédits restants sont affichés sous forme de jauge visuelle avec une couleur adaptative (vert >50%, orange <30%, rouge <10%).', '- [ ] Le tier actuel est affiché avec ses avantages (liste à puces) et une couleur distinctive par niveau.', '- [ ] Un bouton "Demander une mise à niveau" est présent (optionnel, redirige vers un formulaire ou un email).', '- [ ] La page admin permet de lister, filtrer et modifier les tiers des clients.', '- [ ] Les modifications de tier ou de crédits sont enregistrées dans un historique consultable.', '- [ ] Les notifications par email sont envoyées pour les changements de mot de passe, de tier, ou en cas de crédits bas.', '- [ ] Les données des crédits et des tiers sont synchronisées en temps réel avec les offres commerciales.', '- [ ] Les permissions sont vérifiées : seuls les administrateurs OmDev peuvent modifier les tiers et crédits.']
## Classification
- feature
## Complexity
- 7/10 — La complexité est élevée en raison de l'intégration de plusieurs fonctionnalités (jauges visuelles, gestion des crédits, notifications, historique), de la synchronisation avec les offres commerciales, et de la sécurisation des modifications de mot de passe.
Files