Checkpoint: Historique, statistiques et réessai automatique des rappels
**Nouvelles fonctionnalités** : 1. **Page d'historique des rappels** (`/admin/rappels/historique`) - Tableau complet de tous les rappels envoyés - Filtres avancés : date début/fin, séquence, statut (succès/échec), email - Recherche par email avec mise en surbrillance - Pagination (50 résultats par page) - Affichage du nombre de tentatives pour chaque rappel - Code couleur : vert pour succès, rouge pour échec 2. **Tableau de bord statistiques** (`/admin/rappels/statistiques`) - 4 cartes de statistiques globales : total envoyés, succès, échecs, taux de succès - Graphique d'évolution : nombre de rappels envoyés par jour (succès vs échecs) - Graphique du taux de succès par jour (barres) - Top 10 des emails problématiques avec nombre d'échecs - Visualisation interactive avec Recharts 3. **Système de réessai automatique** - Détection automatique des rappels échoués - Délai exponentiel : 1h après 1er échec, 4h après 2ème, 24h après 3ème - Limite de 3 tentatives maximum - Notification automatique à l'admin en cas d'abandon (3 échecs) - Mise à jour automatique du statut dans les logs - Vérification toutes les heures **Nouveaux champs dans logsRappels** : - `nbTentatives` : nombre de tentatives d'envoi (1 à 3) - `prochainEssai` : date du prochain essai en cas d'échec **Nouveaux fichiers** : - `client/src/pages/admin/AdminRappelsHistorique.tsx` : Page d'historique - `client/src/pages/admin/AdminRappelsStats.tsx` : Page de statistiques - `server/rappelRetry.ts` : Système de réessai automatique - `server/rappelDb.ts` : Fonctions étendues (filtres, stats, évolution) **Fichiers modifiés** : - `drizzle/schema.ts` : Ajout de nbTentatives et prochainEssai - `server/routers.ts` : Nouvelles procédures tRPC (historique, statistiques, évolution) - `client/src/App.tsx` : Routes pour historique et statistiques - `client/src/components/DashboardLayout.tsx` : Sous-menu Rappels - `server/_core/index.ts` : Initialisation du scheduler de retry **Bénéfices** : - ✅ Traçabilité complète de tous les rappels - ✅ Analyse des performances avec graphiques - ✅ Identification rapide des emails problématiques - ✅ Réessai automatique des échecs sans intervention manuelle - ✅ Notification en cas d'échec persistant - ✅ Optimisation de la délivrabilité des emails
This commit is contained in:
29
todo.md
29
todo.md
@@ -96,3 +96,32 @@
|
||||
- [x] Créer la fonction de notification admin
|
||||
- [x] Intégrer les notifications dans le catch des erreurs d'envoi
|
||||
- [x] Ajouter un résumé des échecs dans les logs
|
||||
|
||||
## Historique et statistiques des rappels
|
||||
|
||||
### Backend
|
||||
- [x] Créer les fonctions de récupération des logs avec filtres
|
||||
- [x] Créer les fonctions de statistiques (taux succès, emails problématiques)
|
||||
- [x] Ajouter les procédures tRPC pour l'historique
|
||||
- [x] Ajouter les procédures tRPC pour les statistiques
|
||||
|
||||
### Page d'historique
|
||||
- [x] Créer AdminRappelsHistorique.tsx avec tableau des logs
|
||||
- [x] Ajouter les filtres (date, séquence, statut, email)
|
||||
- [x] Ajouter la recherche par email
|
||||
- [x] Ajouter la pagination
|
||||
- [x] Ajouter la route dans App.tsx
|
||||
|
||||
### Tableau de bord statistiques
|
||||
- [x] Créer AdminRappelsStats.tsx avec cartes de statistiques
|
||||
- [x] Ajouter le graphique d'évolution des envois
|
||||
- [x] Ajouter le graphique du taux de succès
|
||||
- [x] Ajouter la liste des emails problématiques
|
||||
- [x] Ajouter la route dans App.tsx
|
||||
|
||||
### Système de réessai automatique
|
||||
- [x] Ajouter le champ nbTentatives dans logsRappels
|
||||
- [x] Ajouter le champ prochainEssai dans logsRappels
|
||||
- [x] Créer la fonction de retry avec délai exponentiel
|
||||
- [x] Intégrer le retry dans rappelScheduler
|
||||
- [x] Limiter à 3 tentatives maximum
|
||||
|
||||
Reference in New Issue
Block a user