mirror of
https://github.com/R0m1k3/LogiFlow.git
synced 2026-10-12 01:37:40 +02:00
Merge pull request #110 from R0m1k3/1.1
Fix order status incorrectly showing as delivered in production
This commit is contained in:
3 files changed
+43
-1
No files matched your search
Binary file not shown.
|
After Width: | Height: | Size: 24 KiB |
@@ -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é
|
||||
|
||||
+35
-1
@@ -591,7 +591,41 @@ export class DatabaseStorage implements IStorage {
|
||||
}
|
||||
|
||||
async createDelivery(deliveryData: InsertDelivery): Promise<Delivery> {
|
||||
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;
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user