mirror of
https://github.com/R0m1k3/LogiFlow.git
synced 2026-10-18 04:37:19 +02:00
Improve order and delivery synchronization for accurate status tracking
Update the calendar page to fetch all orders and deliveries without date filters, enriching them for accurate analysis and specifically targeting CMD-55 to diagnose and fix status discrepancies. Replit-Commit-Author: Agent Replit-Commit-Session-Id: a8a78c07-e900-425c-a577-5b4c5894379d Replit-Commit-Checkpoint-Type: full_checkpoint Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/a8a78c07-e900-425c-a577-5b4c5894379d/KuIk8gU
This commit is contained in:
1 parent
4422a561c7
commit
213208d48f
3 files changed
+233
-17
No files matched your search
@@ -149,38 +149,53 @@ export default function Calendar() {
|
||||
try {
|
||||
console.log('🔄 Starting manual sync of order-delivery status...');
|
||||
|
||||
// Solution temporaire : récupérer TOUTES les données et faire la sync côté client
|
||||
// Solution temporaire : récupérer TOUTES les données sans filtres de dates
|
||||
console.log('📡 Fetching ALL orders (no date filter)...');
|
||||
const ordersResponse = await fetch('/api/orders', { credentials: 'include' });
|
||||
const allOrders = await ordersResponse.json();
|
||||
const filteredOrders = await ordersResponse.json();
|
||||
|
||||
// Récupérer aussi toutes les livraisons pour avoir une vue complète
|
||||
console.log('📡 Fetching ALL deliveries (no date filter)...');
|
||||
const deliveriesResponse = await fetch('/api/deliveries', { credentials: 'include' });
|
||||
const allDeliveries = await deliveriesResponse.json();
|
||||
|
||||
// Enrichir les commandes avec leurs livraisons pour avoir les bonnes relations
|
||||
const enrichedOrders = filteredOrders.map(order => {
|
||||
const orderDeliveries = allDeliveries.filter(delivery => delivery.orderId === order.id);
|
||||
return {
|
||||
...order,
|
||||
deliveries: orderDeliveries
|
||||
};
|
||||
});
|
||||
|
||||
console.log('📊 Data loaded for sync:', {
|
||||
orders: allOrders.length,
|
||||
deliveries: allDeliveries.length,
|
||||
filteredOrders: filteredOrders.length,
|
||||
enrichedOrders: enrichedOrders.length,
|
||||
allDeliveries: allDeliveries.length,
|
||||
deliveredDeliveries: allDeliveries.filter(d => d.status === 'delivered').length
|
||||
});
|
||||
|
||||
// Chercher spécifiquement CMD-55
|
||||
const cmd55 = allOrders.find(o => o.id === 55);
|
||||
if (cmd55) {
|
||||
console.log('🎯 CMD-55 Details:', {
|
||||
id: cmd55.id,
|
||||
status: cmd55.status,
|
||||
deliveries: cmd55.deliveries?.length || 0,
|
||||
deliveryDetails: cmd55.deliveries || []
|
||||
});
|
||||
} else {
|
||||
console.log('❌ CMD-55 not found in current orders');
|
||||
}
|
||||
const cmd55 = enrichedOrders.find(o => o.id === 55);
|
||||
const cmd55Deliveries = allDeliveries.filter(d => d.orderId === 55);
|
||||
|
||||
console.log('🎯 CMD-55 Analysis:', {
|
||||
foundInOrders: !!cmd55,
|
||||
cmd55Status: cmd55?.status || 'NOT_FOUND',
|
||||
cmd55Deliveries: cmd55Deliveries.length,
|
||||
deliveryStatuses: cmd55Deliveries.map(d => ({
|
||||
id: d.id,
|
||||
status: d.status,
|
||||
deliveredDate: d.deliveredDate,
|
||||
scheduledDate: d.scheduledDate
|
||||
}))
|
||||
});
|
||||
|
||||
let problematicOrders = 0;
|
||||
let fixedOrders = 0;
|
||||
|
||||
// Parcourir les commandes et identifier celles à corriger
|
||||
for (const order of allOrders) {
|
||||
// Parcourir les commandes enrichies et identifier celles à corriger
|
||||
for (const order of enrichedOrders) {
|
||||
console.log(`🔍 Analyzing order #CMD-${order.id}:`, {
|
||||
status: order.status,
|
||||
deliveries: order.deliveries?.length || 0,
|
||||
|
||||
Reference in new issue
Block a user