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
8ee10602d3
Checkpoint: Ajout de la connexion OAuth2 Microsoft 365 (Azure AD) : route callback /api/auth/azure/callback, bouton Microsoft sur la page de login, variables d'environnement Azure AD configurées
2026-07-07 05:54:46 -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
f49eadda2b
feat: warningMessage quota IA dans rapports d'import + redémarrage auto services
2026-06-09 12:15:26 -04:00
Manus
595f5dded1
fix: appliquer les règles d'automatisation (ventilation) lors de l'import email
2026-06-09 10:48:29 -04:00
Manus
6c7828d829
fix: transmettre aiSettings (provider Manus) lors de l'import email
2026-06-09 10:20:17 -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
43cacda7ad
Checkpoint: Correction des montants des lignes de ventilation : application d'un coefficient de redistribution proportionnel (totalTtc_officiel / totalTtc_calculé) sur chaque ligne pour que leur somme corresponde exactement au total TTC officiel FreePro. Les montants sont maintenant cohérents avec le portail.
2026-06-08 10:38:58 -04:00
Manus
ed01a07105
Checkpoint: Correction des montants TTC : utilisation du total_ttc retourné par l'API /api/api_red_october/v1/invoices au lieu de recalculer depuis les lignes CSV. Les montants correspondent maintenant exactement au portail FreePro.
2026-06-08 10:30:03 -04:00
Manus
9de1a767fa
Checkpoint: Récupération automatique FreePro opérationnelle : utilisation de l'API REST interne Angular /api/api_red_october/v1/invoices pour lister les factures, puis téléchargement CSV via /account/invoice/{ref}/primary_csv. 6 factures importées automatiquement (01/2026 à 06/2026).
2026-06-08 10:16:52 -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
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