From b7f6c3150e78dedcd2a2ac56883459063e39eb91 Mon Sep 17 00:00:00 2001 From: natib21 Date: Fri, 3 Jul 2026 16:46:31 +0000 Subject: [PATCH] fix --- .../src/pages/operations/LastMilePage.tsx | 23 +++++++++++-------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/apps/edr-freight-web/backoffice/src/pages/operations/LastMilePage.tsx b/apps/edr-freight-web/backoffice/src/pages/operations/LastMilePage.tsx index 4854ee7a7..71964c038 100644 --- a/apps/edr-freight-web/backoffice/src/pages/operations/LastMilePage.tsx +++ b/apps/edr-freight-web/backoffice/src/pages/operations/LastMilePage.tsx @@ -1003,6 +1003,13 @@ const LastMilePage = () => { const releaseRow = pickupReadyByBooking.get(row.original.bookingId) ?? pickupReadyByBooking.get(bookingRef(row.original)); const truckArrivalLabel = releaseRow?.releaseOrderReference ? "Truck Leaving" : "Truck Arrival"; + // Only the current step's action is active; the rest stay disabled. + // Step order: 0 Ready·1 Assign·2 Arrived·3 Leave·4 In-transit·5 Distance·6 Delivered. + const activeStep = computeLastMileSteps(row.original, releaseRow).findIndex((s) => s.active); + const canAdvance = activeStep === 0 || activeStep === 4 || activeStep === 6; + const canAssignStep = activeStep === 1; + const canTruck = activeStep === 2 || activeStep === 3; + const canDistance = activeStep === 5; return ( @@ -1014,19 +1021,17 @@ const LastMilePage = () => { } - disabled={!nextStatus || (nextStatus === "IN_TRANSIT" && !assigned)} + disabled={!nextStatus || !canAdvance} onClick={() => handleAdvanceStatus(row.original)} > - {nextStatus === "IN_TRANSIT" && !assigned - ? "Assign a vehicle first" - : nextStatus - ? `Mark ${STATUS_META[nextStatus].label}` - : STATUS_META[row.original.status].label} + {nextStatus + ? `Mark ${STATUS_META[nextStatus].label}` + : STATUS_META[row.original.status].label} } - disabled={assigned || delivered} + disabled={!canAssignStep} onClick={() => openAssign(row.original.id)} > Assign @@ -1040,7 +1045,7 @@ const LastMilePage = () => { } - disabled={!assigned} + disabled={!canTruck} onClick={() => openTruckArrival(row.original)} > {truckArrivalLabel} @@ -1054,7 +1059,7 @@ const LastMilePage = () => { } - disabled={delivered} + disabled={!canDistance} onClick={() => openDistance(row.original.id)} > Add distance