diff --git a/src/Service/RiderAPIHandler/CMBRiderAPIHandler.php b/src/Service/RiderAPIHandler/CMBRiderAPIHandler.php index 7954a703..49fec3bc 100644 --- a/src/Service/RiderAPIHandler/CMBRiderAPIHandler.php +++ b/src/Service/RiderAPIHandler/CMBRiderAPIHandler.php @@ -466,6 +466,29 @@ class CMBRiderAPIHandler implements RiderAPIHandlerInterface if (empty($trade_in_type)) $trade_in_type = 'none'; + // get time when JO was accepted by rider + $accept_event_type = CMBJOEventType::RIDER_ACCEPT; + $rider_id = $this->session->getRider()->getID(); + $jo_id = $jo->getID(); + $date_accept = ''; + + $accept_results = $this->em->getRepository(JOEvent::class)->findby(['type_id' => $accept_event_type, 'rider' => $rider_id, 'job_order' => $jo_id], ['date_happen' => 'DESC']); + if ($accept_results != null) + { + $jo_event = current($accept_results); + $date_accept = $jo_event->getDateHappen()->format('Ymd H:i:s'); + } + + // get time when JO was started by rider + $start_event_type = CMBJOEventType::RIDER_START; + $date_start = ''; + $start_results = $this->em->getRepository(JOEvent::class)->findby(['type_id' => $start_event_type, 'rider' => $rider_id, 'job_order' => $jo_id], ['date_happen' => 'DESC']); + if ($start_results != null) + { + $jo_event = current($start_results); + $date_start = $jo_event->getDateHappen()->format('Ymd H:i:s'); + } + $jo_data[] = [ 'job_order' => [ 'id' => $jo->getID(), @@ -508,6 +531,9 @@ class CMBRiderAPIHandler implements RiderAPIHandlerInterface 'has_warranty_doc' => false, 'flag_coolant' => $jo->hasCoolant(), 'has_motolite' => $cv->hasMotoliteBattery(), + // date and time accepted and started + 'date_accept' => $date_accept, + 'date_start' => $date_start, ] ]; } @@ -758,6 +784,29 @@ class CMBRiderAPIHandler implements RiderAPIHandlerInterface else $cust_email = $jo->getMeta('customer_email'); + // get time when JO was accepted by rider + $accept_event_type = CMBJOEventType::RIDER_ACCEPT; + $rider_id = $this->session->getRider()->getID(); + $jo_id = $jo->getID(); + $date_accept = ''; + + $accept_results = $this->em->getRepository(JOEvent::class)->findby(['type_id' => $accept_event_type, 'rider' => $rider_id, 'job_order' => $jo_id], ['date_happen' => 'DESC']); + if ($accept_results != null) + { + $jo_event = current($accept_results); + $date_accept = $jo_event->getDateHappen()->format('Ymd H:i:s'); + } + + // get time when JO was started by rider + $start_event_type = CMBJOEventType::RIDER_START; + $date_start = ''; + $start_results = $this->em->getRepository(JOEvent::class)->findby(['type_id' => $start_event_type, 'rider' => $rider_id, 'job_order' => $jo_id], ['date_happen' => 'DESC']); + if ($start_results != null) + { + $jo_event = current($start_results); + $date_start = $jo_event->getDateHappen()->format('Ymd H:i:s'); + } + $data = [ 'id' => $jo->getID(), 'service_type' => $jo->getServiceType(), @@ -812,7 +861,11 @@ class CMBRiderAPIHandler implements RiderAPIHandlerInterface // customer email 'customer_email' => $cust_email, - // END: cmb speicifc details + // date and time accepted and started + 'date_accept' => $date_accept, + 'date_start' => $date_start, + + // END: cmb specific details ]; return $data;