mirror of
https://github.com/R0m1k3/LogiFlow.git
synced 2026-10-16 03:40:06 +02:00
Automatically mark orders as delivered when deliveries are updated or validated
Implement automatic synchronization to update associated orders to 'delivered' status when a delivery's status is set to 'delivered' or when a delivery is validated, simplifying the order management workflow. 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
213208d48f
commit
e626976f38
2 files changed
+226
No files matched your search
@@ -690,6 +690,18 @@ export async function registerRoutes(app: Express): Promise<Server> {
|
||||
|
||||
const data = insertDeliverySchema.partial().parse(req.body);
|
||||
const updatedDelivery = await storage.updateDelivery(id, data);
|
||||
|
||||
// SYNCHRONISATION AUTOMATIQUE : Si livraison devient "delivered", marquer la commande associée comme "delivered"
|
||||
if (data.status === 'delivered' && updatedDelivery.orderId) {
|
||||
try {
|
||||
console.log(`🔄 Auto-sync: Delivery #${id} marked as delivered, updating order #${updatedDelivery.orderId}`);
|
||||
await storage.updateOrder(updatedDelivery.orderId, { status: 'delivered' });
|
||||
console.log(`✅ Auto-sync: Order #${updatedDelivery.orderId} automatically marked as delivered`);
|
||||
} catch (error) {
|
||||
console.error(`❌ Auto-sync failed for order #${updatedDelivery.orderId}:`, error);
|
||||
}
|
||||
}
|
||||
|
||||
res.json(updatedDelivery);
|
||||
} catch (error) {
|
||||
console.error("Error updating delivery:", error);
|
||||
@@ -828,6 +840,18 @@ export async function registerRoutes(app: Express): Promise<Server> {
|
||||
}
|
||||
|
||||
await storage.validateDelivery(id, blData);
|
||||
|
||||
// SYNCHRONISATION AUTOMATIQUE : Quand validation, marquer la commande associée comme "delivered"
|
||||
if (delivery.orderId) {
|
||||
try {
|
||||
console.log(`🔄 Auto-sync: Delivery #${id} validated, updating order #${delivery.orderId} to delivered`);
|
||||
await storage.updateOrder(delivery.orderId, { status: 'delivered' });
|
||||
console.log(`✅ Auto-sync: Order #${delivery.orderId} automatically marked as delivered`);
|
||||
} catch (error) {
|
||||
console.error(`❌ Auto-sync failed for order #${delivery.orderId}:`, error);
|
||||
}
|
||||
}
|
||||
|
||||
res.json({ message: "Delivery validated successfully" });
|
||||
} catch (error) {
|
||||
console.error("Error validating delivery:", error);
|
||||
|
||||
Reference in new issue
Block a user