Commit Graph

68 Commits

Author SHA1 Message Date
Manus
f676395973 Checkpoint: Correction du bouton "Tester la connexion" FreePro :
- Backend : réécriture de loginToFreePro avec timeout 15s, gestion robuste des erreurs, multiples endpoints tentés, vérification de l'accès /account/ pour confirmer la connexion
- Frontend : suppression de la garde incorrecte sur loginPassword === "••••••••", validation par trim() + includes("@") + longueur minimale
- Résultat : le bouton répond maintenant et retourne un message d'erreur explicite si les credentials sont incorrects
2026-06-08 09:42:32 -04:00
Manus
e32d540bc9 Checkpoint: Ajout de l'onglet "Paramétrage" dans la page Ventilation FreePro :
- Table DB freeproSettings (URL portail, credentials, fréquence, date antériorité, statut dernière récupération)
- Service freeproAutoImport.ts : connexion HTTP au portail FreePro, téléchargement CSV, pipeline d'import
- Procédures tRPC : getSettings, saveSettings, testConnection, forceImport
- Job périodique en mémoire (daily/weekly/monthly) via setInterval
- Frontend : wrapper Tabs (onglet 1 = Import & Historique, onglet 2 = Paramétrage)
- Onglet Paramétrage : credentials, fréquence, date antériorité, bouton "Forcer récupération", statut
- Tests unitaires : 8 tests passés
2026-06-08 09:24:05 -04:00
Manus
51830b88be fix: PDF généré côté serveur (pdf-lib) - 1 page A4 portrait garantie 2026-06-05 11:27:58 -04:00
Manus
b5705b5209 fix: PDF A4 portrait, total sans slash, bouton SharePoint FreePro 2026-06-05 10:08:38 -04:00
Manus
054cee0e06 fix: lignes FreePro sans structure affectées à 3069UDA (au lieu de vide) 2026-06-05 09:56:12 -04:00
Manus
a4c347e554 feat: import FreePro accepte .xls, .xlsx et .csv 2026-06-05 09:20:42 -04:00
Manus
db96b29c9f fix: correction extraction insertId MySQL2 dans createFreeproImport (result[0].insertId) 2026-06-05 08:38:31 -04:00
Manus
ce6760a2ea fix: insertion freeproVentilationLines par lots de 50 pour eviter limite MySQL 2026-06-05 08:26:31 -04:00
Manus
7f56fa7045 Checkpoint: Module Ventilation FreePro complet : import Excel FreePro, transformation automatique (script/TTC/type XOAUTH2), tableau de ventilation par structure+type, historique par mois, export PDF. Menu Ventilations ajouté dans la navigation. 2026-06-05 08:02:29 -04:00
Manus
4ef130f21d Checkpoint: OAuth2 IMAP pour Office 365 : ajout du mode d'authentification OAuth2 pour l'import email (Azure AD Client Credentials), sélecteur basic/oauth2 dans l'UI, bouton "Tester la connexion IMAP", procédure testEmailConnection dans le router. Migration DB emailImportAuthMode appliquée. 2026-06-05 05:54:21 -04:00
Manus
22515e5414 feat: date de début de lecture emails dans paramètres import 2026-06-02 10:53:45 -04:00
Manus
7c73d701ac fix: nom fichier export conforme date-fournisseur-numero.pdf 2026-05-06 12:18:03 -04:00
Manus
4086227df7 feat: export manuel (exportToPdf) supporte maintenant SharePoint en plus du dossier local 2026-05-06 12:12:38 -04:00
Manus
41ae95737b fix: logs explicites export SharePoint dans validateBAP + migration colonnes bapHistory camelCase 2026-05-06 11:07:58 -04:00
Manus
94844b0589 feat: bouton Tester l'upload SharePoint + tooltip erreur SP dans historique BAP 2026-05-06 10:18:46 -04:00
Manus
6c21c71660 fix: export SharePoint - erreur remontée au frontend, meilleur parsing URL et détection bibliothèque 2026-05-06 09:41:40 -04:00
Manus
5cb1f878a5 fix: page Paramètres - 2 onglets Import/Export, bug date expiration secret corrigé, chargement optimisé 2026-05-06 09:10:41 -04:00
Manus
6553aee8a6 feat: améliorations SharePoint - test connexion Azure AD, alerte expiration secret, log statut upload dans BapHistory 2026-05-06 07:55:46 -04:00
Manus
766f2b444d feat: intégration Microsoft Graph pour export SharePoint - helper uploadToSharePoint, champs Azure AD en DB et UI 2026-05-06 07:29:23 -04:00
Manus
b5f7e98f4d fix: ajouter 'both' dans l'enum bapExportMode (schema DB + validation Zod) pour permettre la sauvegarde des paramètres SharePoint 2026-05-05 09:56:07 -04:00
Manus
8536c9a8aa fix: corriger URL Manus Forge de forge.manus.im vers forge.manus.ai 2026-05-05 09:31:54 -04:00
Manus
699e245cf0 fix: afficher le nom du signataire BAP même sans image de signature (fallback texte) 2026-05-05 05:58:18 -04:00
Manus
37cc9442da feat: les admins voient toutes les factures/logs/historique BAP, colonne Utilisateur dans Factures 2026-05-03 10:56:20 -04:00
Manus
62b7a61bf5 Checkpoint: Ajout de la section "Moteur IA" dans les paramètres : sélecteur Mistral/Manus, champs clé API avec affichage masqué, persistance en DB, migration VPS appliquée 2026-04-15 08:04:54 -04:00
Manus
7fbb3d5f2c Checkpoint: Placement intelligent du cartouche BAP : détection de zone blanche par rasterisation PDF (pdftoppm + sharp), cartouche positionné automatiquement dans la zone blanche disponible, ou sur une nouvelle page annexe si aucune zone suffisante n'existe 2026-04-15 07:35:41 -04:00
Manus
412da0e68f Checkpoint: Ajout du téléchargement groupé ZIP dans Factures BAP, bouton Re-générer dans Historique BAP, filtres Validées BAP / En attente BAP dans Factures BAP 2026-04-12 17:53:38 -04:00
Manus
ba3392b1e4 Checkpoint: La route /api/download-bap accepte maintenant un param filename et le met dans Content-Disposition (RFC 5987). Les fonctions downloadBapPdf dans InvoicesBAP.tsx et BapHistory.tsx passent le filename formaté dans l'URL. 2026-04-12 17:42:15 -04:00
Manus
d1dda66b9a Checkpoint: Bouton Télécharger toujours visible pour les factures en état Validé dans InvoicesBAP, même après rechargement. Le pdfUrl est récupéré depuis bapHistory via une nouvelle route tRPC getBapPdfUrls. Nommage uniforme Date - Fournisseur - N°Facture.pdf sur tous les points d'export. 2026-04-12 17:36:09 -04:00
Manus
132f8ccec2 Checkpoint: isSubscription appliqué lors des imports. Seuil de confiance persisté en base (champ learningConfidenceThreshold dans userSettings). LearningSettings.tsx charge et sauvegarde le seuil via settings.get/upsert. 2026-04-12 15:27:19 -04:00
Manus
3ae1e47ca6 Checkpoint: Bouton Relancer corrigé (automatismes uniquement, sans LLM). Système d'apprentissage complet : table invoiceLearnings, routes tRPC, déclenchement depuis InvoiceDetail, application lors des imports, page LearningSettings dans Configuration > Apprentissages IA. 2026-04-12 14:54:29 -04:00
Manus
8acfb4eae1 Checkpoint: Ajout route tRPC invoices.reprocessSelected et bouton Relancer (violet) dans la barre d'outils de Factures BAP 2026-04-12 14:20:05 -04:00
Manus
d4fe15c23d Checkpoint: Correction du bouton téléchargement BAP : la route /api/download-bap utilise maintenant un query param pdfPath pour accepter les chemins complets avec sous-dossiers (ex: /storage/2026-04/BAP_xxx.pdf). Ajout d'une route de compatibilité qui cherche dans tous les sous-dossiers. Sécurité anti-path-traversal maintenue. 2026-04-12 10:31:18 -04:00
Manus
9d71f1e34a Checkpoint: Ajout du bouton de téléchargement direct du PDF annoté BAP : route Express /api/download-bap/:filename avec Content-Disposition attachment, bouton Télécharger dans InvoicesBAP (apparaît après validation), boutons Voir + Télécharger dans l'Historique BAP. Correction du layout PDF (2 colonnes) également incluse. 2026-04-12 10:05:02 -04:00
Manus
3cbd705249 Checkpoint: Correction du layout de la zone BAP dans les PDFs annotés : mise en page 2 colonnes (texte à gauche / signature à droite), séparation du destinataire sur sa propre ligne, suppression du chevauchement entre le nom d'établissement et l'image de signature. Appliqué aux deux routes validateBAP et validateBAPBulk. 2026-04-12 09:49:38 -04:00
Manus
76554214b2 Checkpoint: Ajout du bouton "Valider tout en BAP" sur la fenêtre Factures BAP : route validateBAPBulk côté serveur (traitement de toutes les factures éligibles en une passe), mutation côté client avec ouverture des PDFs générés, bouton vert dans le header de la page. 2026-04-12 09:40:33 -04:00
Manus
d07ff1b34d Checkpoint: Correction critique : la route validateBAP et exportToPdf lisent maintenant le PDF source et l'image de signature depuis l'URL publique en fallback si le fichier local n'est pas disponible (cas du VPS où les fichiers sont stockés localement mais pas dans la sandbox). 2026-04-12 06:17:38 -04:00
Manus
5f7c8c7c7f Checkpoint: Améliorations Factures BAP : suppression colonne Abonnement, mode d'export configurable (navigateur/dossier), génération PDF annoté avec zone blanche (CAPEX/OPEX | BAP | Destinataire + signature du service) lors du clic BAP, historique BAP dans le menu Traçabilité, table bapHistory en DB. 2026-04-12 05:57:02 -04:00
Manus
edf7cc704d Checkpoint: Ajout du filtre destinataire dans la liste des factures (dropdown + recherche textuelle), graphique "Top 10 destinataires" et liste détaillée dans le dashboard, filtre destinataire dans les paramètres SFTP (sftpRecipientFilter) avec application lors de l'export 2026-04-12 05:20:55 -04:00
Manus
604426523d Checkpoint: Ajout complet du champ "Destinataire" (recipientName) dans toute l'application : schéma DB (invoices.recipientName + userSettings.recipientKeywords), extraction IA (prompt LLM + interface), services d'import (email, dossier, upload manuel), interface utilisateur (liste des factures, détail, paramètres mots-clés), règles d'automatisme et configuration des champs LLM obligatoires. 2026-04-12 05:06:06 -04:00
Manus
d8d2ef14da Checkpoint: Connexion locale avec identifiant libre (non-email), compte adminItinova créé, page Login mise à jour avec champ Identifiant 2026-03-22 13:23:16 -04:00
Manus
ee49992530 Checkpoint: Ajout de l'association Service→Signature dans l'onglet Signatures des Paramètres et apposition automatique de la signature sur les PDFs exportés lors de l'export BAP. Inclut : table serviceSignatures, routes tRPC, interface de configuration, et modification de exportToPdf pour apposer la signature en bas à droite du PDF avec le nom du signataire. 2026-03-14 19:28:50 -04:00
Manus
33a82e2ad2 Checkpoint: Ajout de l'onglet "Signatures" dans la page Paramètres : table DB signatures (firstName, lastName, imageKey, imageUrl), migration appliquée, routes tRPC (list, upload, create, delete), composant SignaturesSection avec formulaire d'ajout (prénom+nom+upload image), grille d'affichage des signatures avec aperçu, bouton de suppression au survol 2026-03-14 18:52:47 -04:00
Manus
9868a1afda Checkpoint: Ajout du bouton Validation BAP dans la page Factures BAP : nouveau champ bapValidated/bapValidatedAt dans le schéma, migration DB, route tRPC validateBAP avec vérification des critères (Score 100%, non exportée, isSubscription=0, service+typeAchat+ventilation remplis), bouton vert actif/désactivé avec tooltip explicatif, badge "Validé" pour les factures déjà validées 2026-03-06 04:17:53 -05:00
Manus
f16efa4197 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.
2026-02-13 10:33:09 -05:00
Manus
d32359fc10 Checkpoint: Ajout de la configuration des champs obligatoires pour le score LLM
Nouvelle fonctionnalité permettant de configurer quels champs sont obligatoires ou optionnels pour atteindre un score de reconnaissance de 100%.

Modifications:
- Nouvelle table llmFieldsConfig dans la base de données
- Routes tRPC pour gérer la configuration (getAll, updateField)
- Interface utilisateur dans la page Paramètres avec tableau et cases à cocher
- Modification du code d'extraction pour générer dynamiquement l'instruction de score
- Initialisation automatique des champs par défaut (supplierName, invoiceNumber, invoiceDate, totalAmount obligatoires)
- Tests unitaires pour valider la fonctionnalité

L'utilisateur peut maintenant personnaliser quels champs doivent être détectés pour qu'une facture atteigne 100% de score.
2026-02-13 03:39:41 -05:00
Manus
96f6367094 Checkpoint: Ré-application automatique des règles d'automatisme sur factures BAP existantes
 **Mise à jour automatique des factures BAP**

Le système applique maintenant automatiquement les règles d'automatisme sur toutes les factures BAP existantes lors de la création, modification ou activation d'une règle.

**Déclencheurs de ré-application automatique :**
1. **Création d'une règle active** : Si isActive = 1, toutes les factures BAP sont analysées et mises à jour
2. **Modification d'une règle active** : Si la règle modifiée est active, ré-application immédiate
3. **Activation d'une règle** : Lors du passage de isActive 0 → 1, ré-application automatique

**Fonctionnement :**
- Filtrage automatique des factures BAP (isSubscription = 0)
- Application séquentielle de toutes les règles actives par ordre de priorité
- Mise à jour des champs : Type d'achat, Service concerné, Ventilation comptable
- Traçage des champs auto-remplis dans autoFilledFields pour coloration (vert)
- Invalidation du cache des factures pour rafraîchissement immédiat de l'interface

**Notifications utilisateur :**
- Création : "Règle créée et appliquée aux factures BAP existantes" (si active)
- Modification : "Règle mise à jour et appliquée aux factures BAP existantes" (si active)
- Messages différenciés selon l'état actif/inactif de la règle

**Route API supplémentaire :**
- `automationRules.reapplyToExistingInvoices` : Permet une ré-application manuelle si nécessaire
- Retourne le nombre total de factures BAP et le nombre de factures mises à jour

Architecture technique :
- server/routers.ts : Ajout de la logique de ré-application dans create/update/toggleActive
- server/routers.ts : Nouvelle route reapplyToExistingInvoices pour ré-application manuelle
- server/automationEngine.ts : Utilisation de applyAutomationRules(userId, invoice)
- client/src/pages/AutomationRules.tsx : Notifications différenciées selon le contexte
- client/src/pages/AutomationRules.tsx : Invalidation du cache invoices pour rafraîchissement

Bénéfices utilisateur :
- **Cohérence** : Toutes les factures BAP sont toujours à jour avec les règles actives
- **Gain de temps** : Pas besoin de ré-appliquer manuellement les règles
- **Transparence** : Notifications claires sur l'application automatique
- **Flexibilité** : Possibilité de créer des règles inactives pour tests avant activation
- **Traçabilité** : Coloration verte des champs auto-remplis dans l'interface Factures BAP
2026-02-12 04:07:06 -05:00
Manus
d0ef89e6ba Checkpoint: Améliorations majeures de la gestion des règles d'automatisme
Trois nouvelles fonctionnalités implémentées :

 **Assistant de création guidée**
- Deux modes de création : "Assistant de création" (guidé) et "Mode avancé" (complet)
- Interface simplifiée pour les utilisateurs non techniques
- Boutons séparés pour choisir le mode de création

 **Test de règles avant activation**
- Bouton "Tester la règle" dans le formulaire de création/édition
- Simulation sur toutes les factures existantes sans modification
- Affichage des résultats :
  * Nombre total de factures
  * Nombre de factures affectées
  * Aperçu des 10 premières factures avec les modifications prévues
- Permet de valider l'impact avant d'activer la règle

 **Duplication de règles**
- Bouton "Dupliquer" (icône Copy bleue) dans la liste des règles
- Création automatique d'une copie avec le suffixe "(copie)"
- Règle dupliquée désactivée par défaut pour éviter les conflits
- Facilite la création de variantes de règles similaires

Architecture technique :
- server/routers.ts : Ajout des routes `test` et `duplicate` dans automationRules
- server/routers.ts : Ajout des interfaces Condition et Actions
- server/routers.ts : Implémentation de la logique d'évaluation des conditions pour le test
- client/src/pages/AutomationRules.tsx : Ajout des mutations testMutation et duplicateMutation
- client/src/pages/AutomationRules.tsx : Ajout des états wizardMode, wizardStep, testResultsOpen, testResults
- client/src/pages/AutomationRules.tsx : Modification des boutons de création (Assistant vs Mode avancé)
- client/src/pages/AutomationRules.tsx : Ajout du bouton "Tester la règle" dans le DialogFooter
- client/src/pages/AutomationRules.tsx : Ajout du Dialog des résultats de test avec statistiques et aperçu
- client/src/pages/AutomationRules.tsx : Ajout du bouton "Dupliquer" dans le tableau des règles

Bénéfices utilisateur :
- **Sécurité** : Test avant activation pour éviter les erreurs de configuration
- **Productivité** : Duplication rapide pour créer des variantes
- **Accessibilité** : Assistant guidé pour les utilisateurs non techniques
- **Transparence** : Visualisation de l'impact réel avant application
- **Confiance** : Validation des règles sur données réelles

Ces améliorations transforment la gestion des automatismes en un outil puissant, sécurisé et accessible à tous les profils d'utilisateurs.
2026-02-12 03:28:27 -05:00
Manus
716b259fe4 Checkpoint: Coloration des valeurs dans Factures BAP (automatique vs manuelle)
Nouvelle fonctionnalité visuelle :
 Valeurs remplies automatiquement par les règles : affichées en VERT
 Valeurs saisies manuellement : affichées en BLEU
 Traçage intelligent de l'origine des valeurs (automatique ou manuelle)
 Mise à jour automatique de la couleur lors d'une modification manuelle

Architecture technique :
- drizzle/schema.ts : Ajout du champ autoFilledFields (JSON) pour tracer l'origine
- server/automationEngine.ts : Enregistrement des champs remplis automatiquement
- server/routers.ts : Ajout de autoFilledFields dans le schéma d'update
- client/src/pages/InvoicesBAP.tsx : Fonction getFieldColor() pour déterminer la couleur
- Migration 0010_late_thor_girl.sql appliquée avec succès

Fonctionnement :
1. **Import de facture** : Les règles d'automatisme s'appliquent et marquent les champs remplis dans autoFilledFields
2. **Affichage** : La fonction getFieldColor() analyse autoFilledFields pour déterminer la couleur :
   - Champ dans autoFilledFields → VERT (rempli automatiquement)
   - Champ avec valeur mais pas dans autoFilledFields → BLEU (rempli manuellement)
   - Champ vide → Pas de couleur
3. **Modification manuelle** : Lors d'une édition, le champ est retiré de autoFilledFields et passe en BLEU

Bénéfices utilisateur :
- Visibilité immédiate sur l'origine des données
- Confiance accrue dans les automatismes (vert = validé par règle)
- Identification rapide des saisies manuelles nécessitant vérification
- Traçabilité complète du remplissage des champs métier

Cette fonctionnalité améliore considérablement la transparence du système d'automatisation et facilite le contrôle qualité des données.
2026-02-11 12:39:22 -05:00
Manus
72c3f503a3 Checkpoint: Système de gestion des automatismes pour remplissage automatique des factures
Nouvelle fonctionnalité majeure :
 Page "Automatismes" complète pour gérer les règles de remplissage automatique
 Système de règles conditionnelles SI...ALORS pour automatiser le remplissage des champs métier
 Support de conditions multiples avec logique AND/OR
 Application automatique des règles lors de l'import de factures
 Gestion de la priorité des règles (ordre d'exécution)
 Activation/désactivation des règles individuelles

Architecture technique :
- drizzle/schema.ts : Table automationRules avec conditions JSON et actions JSON
- server/db.ts : Fonctions CRUD complètes pour les règles (create, update, delete, list)
- server/routers.ts : Routes tRPC pour gérer les automatismes
- server/automationEngine.ts : Moteur d'évaluation et d'application des règles
- client/src/pages/AutomationRules.tsx : Interface complète de gestion des règles
- Migration 0009_regular_warhawk.sql appliquée avec succès

Fonctionnement des règles :
1. **Conditions (SI)** : Définissez des critères basés sur les champs de la facture
   - Champs disponibles : Fournisseur, N° Facture, Montant, Date, N° Commande, N° Bon de livraison
   - Opérateurs : contient, égal à, commence par, finit par, >, <, >=, <=
   - Logique : AND (toutes les conditions) ou OR (au moins une condition)

2. **Actions (ALORS)** : Définissez les champs à remplir automatiquement
   - Type d'achat (CAPEX/OPEX)
   - Service concerné (depuis la liste des services)
   - Ventilation comptable (depuis la liste des ventilations)

3. **Priorité** : Les règles sont appliquées dans l'ordre de priorité
   - Une règle de priorité supérieure ne peut pas être écrasée par une règle de priorité inférieure

4. **Application automatique** : Les règles s'appliquent automatiquement lors de l'import de factures

Exemples d'utilisation :
- SI Fournisseur contient "Microsoft" ET Montant > 1000 ALORS Type d'achat = CAPEX, Service = DSI
- SI Fournisseur contient "EDF" ALORS Type d'achat = OPEX, Ventilation = TOUS
- SI N° Facture commence par "AB" ALORS Service = Administration

Interface utilisateur :
- Liste des règles avec nom, conditions, actions et statut
- Formulaire de création/édition avec interface intuitive
- Boutons d'activation/désactivation rapide
- Suppression avec confirmation
- Affichage lisible des conditions et actions

Cette fonctionnalité permet de gagner un temps considérable en automatisant le remplissage des champs métier selon des règles métier prédéfinies.
2026-02-11 12:35:26 -05:00
Manus
6e04cbe798 Checkpoint: Ajout du paramètre "Dossier d'export" dans les paramètres de réception
Nouvelle fonctionnalité :
 Champ "Dossier d'export" ajouté dans la page Paramètres de réception
 Permet de configurer le chemin du dossier de destination pour l'export des factures
 Stockage en base de données dans la table importSettings
 Interface utilisateur avec carte dédiée et champ de saisie

Modifications techniques :
- drizzle/schema.ts : Ajout du champ exportFolder (type text, nullable) dans la table importSettings
- server/routers.ts : Ajout de exportFolder dans les routes importSettings.get et importSettings.update
- client/src/pages/ImportSettings.tsx : Ajout du state, initialisation, et carte UI pour le dossier d'export
- Migration de base de données : 0008_orange_prism.sql appliquée avec succès

Utilisation :
1. Accéder à "Paramètres de réception" dans le menu
2. Descendre jusqu'à la section "Dossier d'export"
3. Saisir le chemin absolu du dossier (ex: /chemin/vers/dossier/export)
4. Cliquer sur "Enregistrer les paramètres"
5. Le chemin est sauvegardé et pourra être utilisé pour les exports futurs

Ce paramètre permettra de centraliser la configuration du dossier d'export pour toutes les fonctionnalités d'export de l'application.
2026-02-11 12:26:52 -05:00