- Optimisation des listes de passages (user/admin) - Amélioration du flux de création avec validation temps réel - Amélioration du flux de consultation avec export multi-formats - Amélioration du flux de modification avec suivi des changements - Ajout de la génération PDF pour les reçus - Migration de la structure des uploads - Implémentation de la file d'attente d'emails - Ajout des permissions de suppression de passages - Corrections de bugs et optimisations performances 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
3.1 KiB
3.1 KiB
TODO-API.md
📋 Liste des tâches à implémenter
🔴 PRIORITÉ HAUTE
1. Système de backup pour les suppressions (DELETE)
Demandé le : 20/08/2025 Objectif : Sauvegarder toutes les données supprimées (soft delete) dans un fichier SQL pour pouvoir les restaurer en cas d'erreur humaine.
Détails techniques :
- Créer un système de backup automatique lors de chaque DELETE
- Stocker les données dans un fichier SQL avec structure permettant la réintégration facile
- Format suggéré :
/backups/deleted/{année}/{mois}/deleted_{table}_{YYYYMMDD}.sql
Tables concernées :
ope_pass(passages) - DELETE /passages/{id}users(utilisateurs) - DELETE /users/{id}operations(opérations) - DELETE /operations/{id}ope_sectors(secteurs) - DELETE /sectors/{id}
Structure du backup suggérée :
-- Backup deletion: ope_pass
-- Date: 2025-08-20 14:30:45
-- User: 9999985 (cv_mobile)
-- Entity: 5
-- Original ID: 19500576
INSERT INTO ope_pass_backup (
original_id,
deleted_at,
deleted_by_user_id,
deleted_by_entity_id,
-- tous les champs originaux
fk_operation,
fk_sector,
fk_user,
montant,
encrypted_name,
encrypted_email,
-- etc...
) VALUES (
19500576,
'2025-08-20 14:30:45',
9999985,
5,
-- valeurs originales
...
);
-- Pour restauration facile :
-- UPDATE ope_pass SET chk_active = 1 WHERE id = 19500576;
Fonctionnalités à implémenter :
-
Service de backup :
BackupService.php- Méthode
backupDeletedRecord($table, $id, $data) - Génération automatique du SQL de restauration
- Rotation des fichiers (garder 90 jours)
- Méthode
-
Intégration dans les controllers
- Ajouter l'appel au BackupService avant chaque soft delete
- Logger l'emplacement du backup
-
Interface de restauration (optionnel)
- Endpoint GET /api/backups/deleted pour lister les backups
- Endpoint POST /api/backups/restore/{backup_id} pour restaurer
-
Commande de restauration manuelle
- Script PHP :
php scripts/restore_deleted.php --table=ope_pass --id=19500576
- Script PHP :
Avantages :
- Traçabilité complète des suppressions
- Restauration rapide en cas d'erreur
- Audit trail pour conformité
- Tranquillité d'esprit pour le client
🟡 PRIORITÉ MOYENNE
2. Amélioration des logs
- Ajouter plus de contexte dans les logs
- Rotation automatique des logs
- Dashboard de monitoring
3. Optimisation des performances
- Cache des requêtes fréquentes
- Index sur les tables volumineuses
- Pagination optimisée
🟢 PRIORITÉ BASSE
4. Documentation API
- Génération automatique OpenAPI/Swagger
- Documentation interactive
- Exemples de code pour chaque endpoint
5. Tests automatisés
- Tests unitaires pour les services critiques
- Tests d'intégration pour les endpoints
- Tests de charge
📝 Notes
- Les tâches marquées 🔴 doivent être traitées en priorité
- Chaque tâche implémentée doit être documentée
- Prévoir des tests pour chaque nouvelle fonctionnalité
Dernière mise à jour : 20/08/2025