fix: recalculer les scores de qualité à l import
This commit is contained in:
@@ -5,6 +5,7 @@ import {
|
||||
createSourceFile,
|
||||
updateSourceFile,
|
||||
getUserSettings,
|
||||
getLlmFieldsConfigByUser,
|
||||
getSourceFileByContentHash,
|
||||
findDuplicateInvoice,
|
||||
isInvoiceBlacklisted,
|
||||
@@ -17,6 +18,7 @@ import { calculateFileSha256 } from "./fileFingerprint";
|
||||
import { sendImportNotification } from "./notificationService";
|
||||
import { getOffice365ImapToken } from "./office365OAuth";
|
||||
import { applyAutomationRules } from "./automationEngine";
|
||||
import { withCalculatedInvoiceQuality } from "@shared/invoiceQuality";
|
||||
|
||||
export interface EmailImportConfig {
|
||||
userId: number;
|
||||
@@ -219,6 +221,7 @@ async function processEmailAttachment(
|
||||
manusForgeApiUrl: settings.manusForgeApiUrl,
|
||||
geminiApiKey: (settings as any).geminiApiKey || null,
|
||||
} : undefined;
|
||||
const qualityFieldsConfig = await getLlmFieldsConfigByUser(userId);
|
||||
|
||||
// Extract invoices
|
||||
console.log(`[EmailImport] Starting invoice extraction (provider: ${aiSettings?.aiProvider || 'mistral'})...`);
|
||||
@@ -248,6 +251,7 @@ async function processEmailAttachment(
|
||||
|
||||
for (let i = 0; i < result.invoices.length; i++) {
|
||||
const invoiceData = result.invoices[i]!;
|
||||
const invoiceWithQuality = withCalculatedInvoiceQuality(invoiceData, qualityFieldsConfig);
|
||||
|
||||
try {
|
||||
// Update progress
|
||||
@@ -310,7 +314,7 @@ async function processEmailAttachment(
|
||||
totalAmount: invoiceData.totalAmount?.toString(),
|
||||
recipientName: invoiceData.recipientName,
|
||||
pageRange: invoiceData.pageRange,
|
||||
qualityScore: invoiceData.qualityScore,
|
||||
qualityScore: invoiceWithQuality.qualityScore,
|
||||
extractedText: invoiceData.extractedText,
|
||||
metadataFileKey: metadataKey,
|
||||
metadataFileUrl: metadataUrl,
|
||||
|
||||
Reference in New Issue
Block a user