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.

This commit is contained in:
Manus
2026-07-30 09:48:00 +00:00
parent aebc607e8a
commit 5d18dfa468
9 changed files with 2323 additions and 7 deletions

View File

@@ -34,6 +34,7 @@ import {
toggleUserActive,
deleteUser,
findDuplicateInvoice,
isInvoiceBlacklisted,
getAllInvoices,
getAllImportLogs,
getAllBapHistory,
@@ -253,6 +254,19 @@ export const appRouter = router({
processingProgress: `Extraction ${i + 1}/${result.invoiceCount} factures...`,
});
// Vérifier la blacklist (factures supprimées manuellement)
const blacklisted = await isInvoiceBlacklisted(invoiceData.invoiceNumber, userId);
if (blacklisted) {
duplicatesCount++;
duplicateDetails.push({
supplierName: invoiceData.supplierName,
invoiceNumber: invoiceData.invoiceNumber,
totalAmount: invoiceData.totalAmount,
reason: 'blacklisted',
});
continue;
}
// Check for duplicates (numéro de facture + montant)
const duplicate = await findDuplicateInvoice(
invoiceData.invoiceNumber,