Checkpoint: Checkpoint saved: Améliorations majeures de l'export des factures BAP

Deux nouvelles fonctionnalités implémentées :

 **Indicateur visuel d'exportabilité**
- Icône verte ✓ (CheckCircle) dans la colonne Score pour identifier visuellement les factures exportables
- L'icône apparaît uniquement pour les factures qui remplissent tous les critères :
  * Score de qualité = 100%
  * Type d'achat rempli (CAPEX ou OPEX)
  * Service concerné rempli
  * Ventilation comptable remplie
- Tooltip "Facture exportable" au survol de l'icône

 **Export automatique vers le dossier configuré**
- Les PDFs sont maintenant copiés automatiquement vers le dossier configuré dans les paramètres (exportFolder)
- Création automatique du dossier d'export s'il n'existe pas
- Gestion des erreurs de copie avec messages détaillés
- Notification de succès affichant le nombre de factures exportées et le chemin du dossier
- Mise à jour du statut d'export (exported/export_error) pour chaque facture
- Validation préalable : le dossier d'export doit être configuré avant l'export

Modifications techniques :
- client/src/pages/InvoicesBAP.tsx : Ajout de l'icône CheckCircle dans la colonne Score
- client/src/pages/InvoicesBAP.tsx : Modification du callback onSuccess pour afficher le dossier d'export
- client/src/pages/Invoices.tsx : Mise à jour du callback onSuccess (même modification)
- server/routers.ts : Refonte complète de la route exportToPdf :
  * Récupération du paramètre exportFolder depuis importSettings
  * Validation que exportFolder est configuré
  * Création du dossier d'export avec fs.mkdir (recursive)
  * Copie des PDFs avec fs.copyFile depuis storage vers exportFolder
  * Gestion des erreurs individuelles par facture
  * Retour des informations : exportFolder, copiedCount, liste des factures

Bénéfices utilisateur :
- **Visibilité** : Identification immédiate des factures prêtes à l'export grâce à l'icône verte
- **Automatisation** : Plus besoin d'ouvrir manuellement les PDFs dans le navigateur
- **Organisation** : Les PDFs sont automatiquement copiés dans le dossier de destination
- **Traçabilité** : Notification claire avec le chemin du dossier et le nombre de factures exportées
- **Fiabilité** : Gestion des erreurs avec mise à jour du statut pour chaque facture

Cette amélioration transforme l'export en un processus entièrement automatisé et transparent pour l'utilisateur.
This commit is contained in:
Manus
2026-02-13 10:33:09 -05:00
parent 661e477d36
commit f16efa4197
4 changed files with 100 additions and 31 deletions

13
todo.md
View File

@@ -486,4 +486,15 @@
- [x] Ajouter bouton "Exporter" qui s'active si au moins une facture est cochée
- [x] Utiliser la route tRPC existante pour exporter les factures sélectionnées
- [x] Implémenter la génération de fichiers d'export (PDF)
- [ ] Tester la sélection et l'export des factures BAP
- [x] Tester la sélection et l'export des factures BAP
## Améliorations export factures BAP
- [x] Ajouter icône verte ✓ dans la colonne Score pour les factures exportables
- [x] Modifier la fonction getQualityBadge pour afficher l'indicateur d'exportabilité
- [x] Modifier la route tRPC exportToPdf pour copier les PDFs vers exportFolder
- [x] Ajouter la logique de copie de fichiers avec fs.copyFile
- [x] Récupérer le paramètre exportFolder depuis importSettings
- [x] Créer le dossier exportFolder s'il n'existe pas
- [x] Gérer les erreurs de copie de fichiers
- [x] Afficher une notification de succès avec le chemin du dossier d'export
- [ ] Tester l'export vers le dossier configuré