diff --git a/src/Service/JobOrderHandler/CMBJobOrderHandler.php b/src/Service/JobOrderHandler/CMBJobOrderHandler.php index 7712f426..64cfb3fb 100644 --- a/src/Service/JobOrderHandler/CMBJobOrderHandler.php +++ b/src/Service/JobOrderHandler/CMBJobOrderHandler.php @@ -1124,6 +1124,11 @@ class CMBJobOrderHandler implements JobOrderHandlerInterface $cancel_reason = $req->request->get('cancel_reason'); $obj->cancel($cancel_reason); + // get assigned rider. If not null, clear rider's active JO + $rider = $obj->getRider(); + if ($rider != null) + $rider->setActiveJobOrder(); + // the event $event = new JOEvent(); $event->setDateHappen(new DateTime()) diff --git a/src/Service/RiderAPIHandler/CMBRiderAPIHandler.php b/src/Service/RiderAPIHandler/CMBRiderAPIHandler.php index 9a7c0b28..464b41aa 100644 --- a/src/Service/RiderAPIHandler/CMBRiderAPIHandler.php +++ b/src/Service/RiderAPIHandler/CMBRiderAPIHandler.php @@ -1073,8 +1073,12 @@ class CMBRiderAPIHandler implements RiderAPIHandlerInterface $jo->cancel($cancel_reason); + // set rider's active job order to null // add event log $rider = $this->session->getRider(); + + $rider->setActiveJobOrder(); + $event = new JOEvent(); $event->setDateHappen(new DateTime()) ->setTypeID(CMBJOEventType::REQUEUE)