91 Commits

Author SHA1 Message Date
Manus
16759b4ad5 feat: purge import history by retention 2026-10-09 10:22:46 +00:00
Manus
6d72547509 fix: paginate import history and report 2026-10-09 09:58:08 +00:00
Manus
939dddd1d8 fix: require BAP before original PDF exports 2026-10-09 08:44:02 +00:00
Manus
f9434d3a79 fix: autoriser le reimport apres suppression 2026-10-02 21:15:28 +00:00
Manus
ba4e42c7f1 fix: recalculer les scores de qualité à l import 2026-10-02 20:59:23 +00:00
Manus
70f867d62b fix: relancer les sources vides après purge 2026-10-02 20:46:21 +00:00
Manus
c5f0c9eed6 fix: rétablir la suppression de facture en recette 2026-10-02 17:05:14 +00:00
Manus
e9d25d9270 feat: route invoice analysis through referentiel ia 2026-09-30 16:20:22 +00:00
Manus
0d65592d75 feat: lancer manuellement les imports SFR 2026-09-30 16:42:27 +02:00
Manus
a9c81b4238 fix: masquer les erreurs SQL des connecteurs web 2026-09-30 15:57:09 +02:00
Manus
77d57f4e42 fix: normaliser les URLs des connecteurs web 2026-09-30 14:55:13 +02:00
Manus
daa5fb8463 fix: recalculer le score après correction manuelle 2026-09-30 12:20:12 +02:00
Manus
f7cfa73206 Checkpoint: Les exportations PDF manuelles résolvent désormais une destination facture par facture via les règles actives d’Automatismes d’export, y compris pour les factures d’abonnement. Les paramètres globaux demeurent le repli ; les destinations Teams et SharePoint utilisent l’envoi Microsoft existant. Suite complète : 56 tests, TypeScript et build validés.
All checks were successful
Validation applicative / TypeScript, tests et build (push) Successful in 3m6s
2026-09-04 10:44:41 +00:00
Manus
071376c9b1 Checkpoint: La configuration Microsoft Azure AD est de nouveau centralisée dans Paramètres : URL SharePoint, Tenant ID, Client ID, secret masqué, date d’expiration et tests de connexion/upload. Les Automatismes d’export ne contiennent plus d’identifiants et restent dédiés aux règles de destination. Tests, TypeScript, build et rendu de la page Paramètres validés en sandbox. 2026-09-02 12:31:50 +00:00
Manus
582ca77f28 Checkpoint: Automatismes séparé en onglets Import et Export. Les règles d’export ciblent un destinataire ou une ventilation, avec destination locale, Teams ou SharePoint et ouverture navigateur optionnelle. La validation BAP unique ou en masse applique la première règle active par priorité puis conserve le paramétrage historique comme repli. Paramètres d’export déplacés vers Automatismes et page renommée Paramètres. Migration additive, tests, TypeScript, build et contrôles visuels validés. 2026-09-02 12:13:23 +00:00
Manus
0b2f1b781d Checkpoint: Historique des imports enrichi avec le compte, la source, le déclencheur, les résultats, les erreurs et les informations du fichier source. Les administrateurs peuvent déclencher une lecture e-mail ponctuelle pour une boîte configurée, avec confirmation explicite, sans activer ni créer de planification. Migration importTrigger appliquée en sandbox ; TypeScript, 48 tests, build et rendus bureau/mobile validés. 2026-09-02 11:43:23 +00:00
Manus
5128322a6d Checkpoint: Ajout du récapitulatif annuel BAP et abonnements au tableau de bord, et de Budget réel par fournisseur avec filtres Année/Mois et ventilation abonnements/hors abonnement. 2026-08-29 22:15:35 +00:00
Manus
a0c440dfae Checkpoint: Le seuil d’éligibilité et de validation BAP est centralisé à 90 % dans le serveur et l’interface. Les validations unitaires, TypeScript, build et rendu de la page Factures BAP sont réussis en sandbox. 2026-08-27 13:02:07 +00:00
Manus
b603541adf Checkpoint: Correctifs validés en sandbox : retour contextuel depuis le détail vers Factures BAP avec filtres et tri conservés, et nouvelle action Abonnement Oui/Non/Ne pas modifier dans les automatismes. Ajout de tests de non-régression. 2026-08-26 10:20:20 +00:00
Manus
d729a94a96 Checkpoint: Correction robuste des doublons de factures : empreinte SHA-256 unique des PDF sources, détection globale avant import manuel/email/dossier/web, verrou contre les vérifications IMAP concurrentes, attente réelle de fin de traitement avant marquage lu, migration et tests de non-régression. 2026-08-22 10:31:54 +00:00
Manus
54164b1b33 Checkpoint: Audit technique : suppression des composants, scripts et dépendances inutilisés ; chargement différé des pages ; génération de sauvegardes SQL robuste par lots ; centralisation des contrôles d’accès ; sécurisation des cookies Azure et imports web ; documentation de maintenance et 5 tests de non-régression ajoutés. 2026-08-17 20:21:58 +00:00
Manus
4ce2d2877a Checkpoint: Ajout onglet Sauvegarde DB dans ImportSettings : endpoint POST /api/db-backup (mysqldump), GET /api/db-backup/:filename, procédures tRPC backup.list et backup.delete, composant BackupSection avec liste des sauvegardes et téléchargement. 2026-08-08 10:04:57 +00:00
Manus
711ce6b83a Checkpoint: Ajout du système de connecteurs web : table webImportSources, CRUD tRPC, page WebImportSources.tsx, endpoint /api/web-import/push-invoice, script cron SFR (scripts/web-import/sfr-connector.mjs) 2026-07-30 13:53:07 +00:00
Manus
5d18dfa468 Checkpoint: Ajout de la table deletedInvoices (blacklist) : quand une facture est supprimée, son numéro est enregistré et l'import email/fichier ne la réimporte plus. 2026-07-30 09:48:00 +00:00
Manus
827c9ec41e Checkpoint: Ajout de Google Gemini (gemini-2.0-flash) comme 3ème moteur IA : schéma DB mis à jour (enum aiProvider + colonne geminiApiKey dans userSettings et importSettings), llm.ts mis à jour avec routing vers l'API Google AI Studio (compatible OpenAI), fenêtre de configuration IA mise à jour avec 3 cartes (Mistral / Gemini / Manus) et champ clé API Gemini. 2026-07-27 15:55:07 +00:00
Manus
1951b9b9d1 Checkpoint: Les admins voient désormais toutes les factures (tous userId) : getById, update, delete, validateBAP, devalidateBAP, validateBAPBulk, reprocessSelected, regenerateBapPdf, search, exportToExcel, exportToPdf, exportSFTP, bapHistory.delete/regenerate — tous corrigés pour les admins. 2026-07-13 08:13:49 -04:00
Manus
d4c9bf635a Checkpoint: Fix: la procédure deleteAll des importLogs permet maintenant aux admins de supprimer tous les logs (pas seulement les leurs). Correction de deleteAllImportLogs dans db.ts pour accepter userId=null (suppression totale). 2026-06-17 06:20:40 -04:00
Manus
f7d3f6d5b3 Checkpoint: Ajout colonne "Source import" (Email / Dossier / Fichier) dans l'historique des imports : schéma DB migré, backend mis à jour (routers.ts, emailImportService.ts, folderImportService.ts), frontend History.tsx avec badges colorés dans le tableau et le dialog de détails. 2026-06-17 06:11:46 -04:00
Manus
b97efb5c57 Checkpoint: Fix: bouton de téléchargement PDF BAP pour factures validées sans PDF (NOVRH VF11521, EVOLUCARE ET098857). Ajout procédure regenerateBapPdf côté serveur + bouton orange RefreshCw côté frontend pour régénérer le PDF à la volée. Déployé en recette et production. 2026-06-17 03:41:18 -04:00
Manus
1a09c98ef5 fix: exportStatus mis à jour à 'exported' après validation BAP (unitaire et en masse) 2026-06-16 12:18:40 -04:00
Manus
22b34fcf1e fix: nommage fichiers BAP - format AAAA-MM-JJ - Fournisseur - NFacture.pdf 2026-06-15 12:28:04 -04:00
Manus
b34e145d5d feat: bouton Dévalider BAP, barre actions 2 lignes, suppression colonne Utilisateur 2026-06-15 12:14:25 -04:00
Manus
a9387eaaea feat: détection doublons par numéro+montant dans les 3 points d'import 2026-06-15 12:02:24 -04:00
Manus
056bccd985 Checkpoint: Ajout de la colonne 'Export SP' dans le tableau historique de Ventilation FreePro : icône horloge grise = non exporté, icône verte = exporté (date au survol), icône rouge = erreur (message au survol). Le statut est sauvegardé en base (sharepointUploadStatus, sharepointUploadPath, sharepointUploadError, sharepointExportedAt) lors de chaque export via 'Envoyer vers SharePoint'. 2026-06-08 10:53:34 -04:00
Manus
f3e985af5f Checkpoint: Fix testConnection : le backend lit désormais le mot de passe directement en base (jamais exposé au frontend). Timeout porté à 25s. Détection correcte de invalid_credentials dans la réponse JSON FreePro. 2026-06-08 09:58:58 -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
a4c347e554 feat: import FreePro accepte .xls, .xlsx et .csv 2026-06-05 09:20:42 -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