mirror of
https://github.com/R0m1k3/LogiFlow.git
synced 2026-10-16 03:40:06 +02:00
Improve reconciliation process by skipping already processed deliveries
Optimize the reconciliation page by pre-populating results for already reconciled deliveries and skipping them in the auto-verification loop. Also, add an API endpoint for administrators to diagnose cache status for reconciled deliveries. Replit-Commit-Author: Agent Replit-Commit-Session-Id: daf3525c-b971-454a-b0c0-7a9845e786cc Replit-Commit-Checkpoint-Type: full_checkpoint
This commit is contained in:
1 parent
9ed380a279
commit
aef303b709
3 files changed
+89
-1
No files matched your search
@@ -242,14 +242,46 @@ export default function BLReconciliation() {
|
||||
console.log('🔄 Déclenchement vérifications automatiques...');
|
||||
}
|
||||
|
||||
// Pré-populer les résultats pour les livraisons déjà réconciliées
|
||||
const newVerificationResults = { ...verificationResults };
|
||||
let hasNewReconciledResults = false;
|
||||
|
||||
deliveriesWithBL.forEach((delivery: any) => {
|
||||
// Si la livraison est déjà réconciliée, marquer comme vérifiée avec succès
|
||||
if (delivery.reconciled && !verificationResults[delivery.id]) {
|
||||
newVerificationResults[delivery.id] = {
|
||||
exists: true,
|
||||
matchType: delivery.invoiceReference ? 'invoice_reference' : 'bl_number',
|
||||
fromCache: true,
|
||||
permanent: true,
|
||||
reconciled: true
|
||||
};
|
||||
hasNewReconciledResults = true;
|
||||
|
||||
if (import.meta.env.DEV) {
|
||||
console.log(`✅ Livraison ${delivery.id} déjà réconciliée, marquée comme vérifiée`);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
// Mettre à jour les résultats si on a de nouvelles livraisons réconciliées
|
||||
if (hasNewReconciledResults) {
|
||||
setVerificationResults(newVerificationResults);
|
||||
}
|
||||
|
||||
deliveriesWithBL.forEach((delivery: any) => {
|
||||
// EXCLUURE les livraisons déjà réconciliées de la vérification automatique
|
||||
if (delivery.reconciled) {
|
||||
return; // Livraison déjà validée, pas besoin de vérifier
|
||||
}
|
||||
|
||||
// Vérifier seulement si on a une référence de facture ou un BL et pas déjà de résultat
|
||||
const hasVerifiableData = delivery.invoiceReference || delivery.blNumber;
|
||||
const notAlreadyProcessed = !verificationResults[delivery.id] && !verifyingDeliveries.has(delivery.id);
|
||||
|
||||
if (hasVerifiableData && notAlreadyProcessed) {
|
||||
if (import.meta.env.DEV) {
|
||||
console.log(`🔍 Vérification auto pour livraison ${delivery.id}:`, {
|
||||
console.log(`🔍 Vérification auto pour livraison NON réconciliée ${delivery.id}:`, {
|
||||
invoiceRef: delivery.invoiceReference,
|
||||
blNumber: delivery.blNumber
|
||||
});
|
||||
|
||||
Reference in new issue
Block a user