diff --git a/components/ordercontainer/OrderContainer.tsx b/components/ordercontainer/OrderContainer.tsx index 5f9f99a..1c2d6d5 100644 --- a/components/ordercontainer/OrderContainer.tsx +++ b/components/ordercontainer/OrderContainer.tsx @@ -114,11 +114,15 @@ const OrderContainerInner = ({ setActiveOrderId(order.id); setActiveOrderNumber(order.orderNumber); - // If pickupFor query param, force pickup step (if order is PAID or AWAITING_PICKUP) + // If pickupFor query param, force pickup step so the customer can + // (re)select their timeslot. PRINTED orders are still allowed to + // change their slot (see select-timeslot route), so include it here + // too — otherwise statusToStep would send them to COMPLETE. if ( pickupForOrderId && (order.status === OrderStatus.PAID || - order.status === OrderStatus.AWAITING_PICKUP) + order.status === OrderStatus.AWAITING_PICKUP || + order.status === OrderStatus.PRINTED) ) { setOrderStep(OrderStep.PICKUP); } else { diff --git a/pages/my-orders.tsx b/pages/my-orders.tsx index 33b4d22..ccc2f5b 100644 --- a/pages/my-orders.tsx +++ b/pages/my-orders.tsx @@ -170,7 +170,10 @@ const MyOrders: NextPage = ({ contactInfo }) => { ); } - if (order.status === OrderStatus.AWAITING_PICKUP) { + if ( + order.status === OrderStatus.AWAITING_PICKUP || + order.status === OrderStatus.PRINTED + ) { return (