From 9a65f694b9d598ea5afcb6d39a7c9325877a1d6b Mon Sep 17 00:00:00 2001 From: michaelschal <35957947-michaelschal@users.noreply.replit.com> Date: Wed, 13 Aug 2025 21:53:41 +0000 Subject: [PATCH] Fix order status incorrectly showing as delivered in production Correctly set delivery and order statuses to 'planned' in production to resolve an issue where orders were incorrectly marked as 'delivered' upon delivery creation. Replit-Commit-Author: Agent Replit-Commit-Session-Id: 7c468936-2a88-4686-ac0a-84921a45222d Replit-Commit-Checkpoint-Type: full_checkpoint Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/7c468936-2a88-4686-ac0a-84921a45222d/r577GWu --- attached_assets/image_1755121899561.png | Bin 0 -> 24971 bytes replit.md | 8 ++++++ server/storage.ts | 36 +++++++++++++++++++++++- 3 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 attached_assets/image_1755121899561.png diff --git a/attached_assets/image_1755121899561.png b/attached_assets/image_1755121899561.png new file mode 100644 index 0000000000000000000000000000000000000000..47934b1d0cf97d8fd3e230e7a68ef26ea6c7b6db GIT binary patch literal 24971 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 Zos&n=AfsKkmcC++hg|+y{N33f{tY^3J1GDF literal 0 HcmV?d00001 diff --git a/replit.md b/replit.md index 2ca26ef..b98ffc9 100644 --- a/replit.md +++ b/replit.md @@ -19,6 +19,14 @@ La plateforme fournit une gestion robuste des flux de travail de livraison avec ## Recent Changes +### 2025-08-13 - Correction statut commande lors liaison avec livraison (PRODUCTION) +✅ **Problème production PostgreSQL résolu** : +- **Problème** : Commandes passaient à "delivered" au lieu de "planned" lors liaison avec livraison +- **Cause** : Méthode createDelivery() dans DatabaseStorage (PostgreSQL) manquait logique status +- **Solution** : Ajout logique complète dans createDelivery() production identique à développement +- **Correction** : Commandes liées passent maintenant à "planned" (jaune) et non "delivered" +- **Test** : Synchronisation automatique uniquement lors validation, pas création + ### 2025-08-13 - Interface épurée + redirection automatique + réorganisation navigation ✅ **Redirection automatique vers authentification** : - RouterProduction redirige immédiatement si utilisateur non connecté diff --git a/server/storage.ts b/server/storage.ts index c108fb0..0d05870 100644 --- a/server/storage.ts +++ b/server/storage.ts @@ -591,7 +591,41 @@ export class DatabaseStorage implements IStorage { } async createDelivery(deliveryData: InsertDelivery): Promise { - const [delivery] = await db.insert(deliveries).values(deliveryData).returning(); + // Créer la livraison avec statut "planned" par défaut + const deliveryDataWithStatus = { + ...deliveryData, + status: deliveryData.status || 'planned' // Force planned status by default + }; + + const [delivery] = await db.insert(deliveries).values(deliveryDataWithStatus).returning(); + + // Si une commande est liée, la marquer comme "planned" (pas delivered!) + if (deliveryData.orderId) { + try { + console.log(`🔗 PRODUCTION: Delivery #${delivery.id} linked to order #${deliveryData.orderId}, updating order status to 'planned'`); + + // Récupérer la commande actuelle + const [currentOrder] = await db + .select() + .from(orders) + .where(eq(orders.id, deliveryData.orderId)); + + if (currentOrder && currentOrder.status === 'pending') { + await db + .update(orders) + .set({ + status: 'planned', + updatedAt: new Date() + }) + .where(eq(orders.id, deliveryData.orderId)); + + console.log(`✅ PRODUCTION: Order #${deliveryData.orderId} status updated to 'planned'`); + } + } catch (error) { + console.error(`❌ PRODUCTION: Failed to update order #${deliveryData.orderId} status to planned:`, error); + } + } + return delivery; }