From 72821e586c80804e99932e2f2c3d91b00713c828 Mon Sep 17 00:00:00 2001 From: NotII <46204250+NotII@users.noreply.github.com> Date: Fri, 10 Oct 2025 14:28:55 +0100 Subject: [PATCH] Change tracking number addition order in shipping flow Tracking number is now added after marking the order as shipped instead of before. This ensures the order status is updated prior to associating a tracking number. --- app/dashboard/orders/[id]/page.tsx | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/app/dashboard/orders/[id]/page.tsx b/app/dashboard/orders/[id]/page.tsx index 2294f2e..4bc2979 100644 --- a/app/dashboard/orders/[id]/page.tsx +++ b/app/dashboard/orders/[id]/page.tsx @@ -266,22 +266,22 @@ export default function OrderDetailsPage() { const handleMarkAsShipped = async () => { try { setIsMarkingShipped(true); - - // If a tracking number is present in the inline box, add it first - if (trackingNumber && trackingNumber.trim()) { - await handleAddTrackingNumber(trackingNumber.trim()); - setTrackingNumber(""); - } - // Then mark as shipped (clientFetch handles API URL and auth token) + // First mark as shipped (clientFetch handles API URL and auth token) const response = await clientFetch(`/orders/${orderId}/status`, { method: "PUT", body: JSON.stringify({ status: "shipped" }), }); - + if (response && response.message === "Order status updated successfully") { setOrder((prevOrder) => prevOrder ? { ...prevOrder, status: "shipped" } : null); toast.success("Order marked as shipped successfully!"); + + // If a tracking number is present in the inline box, add it after marking as shipped + if (trackingNumber && trackingNumber.trim()) { + await handleAddTrackingNumber(trackingNumber.trim()); + setTrackingNumber(""); + } } else { throw new Error(response.error || "Failed to mark order as shipped"); }