Add event log entries for rider api events #162

This commit is contained in:
Kendrick Chan 2018-08-09 04:53:09 +08:00
parent df709aa353
commit 28b298dbb4
2 changed files with 47 additions and 12 deletions

View file

@ -466,11 +466,19 @@ class RAPIController extends Controller
// set jo status to in transit
$jo->setStatus(JOStatus::IN_TRANSIT);
$em->flush();
// TODO: send mqtt event (?)
// TODO: add event
// add event log
$rider = $this->session->getRider();
$event = new JOEvent();
$event->setDateHappen(new DateTime())
->setTypeID(JOEventType::RIDER_ACCEPT)
->setJobOrder($jo)
->setRider($rider);
$em->persist($event);
$em->flush();
return $res->getReturnResponse();
}
@ -483,13 +491,12 @@ class RAPIController extends Controller
if ($res->isError())
return $res->getReturnResponse();
$rider = $this->session->getRider();
// $jo->cancel("rider cancelled");
// requeue it, instead of cancelling it
$jo->requeue();
// add event
// add event log
$rider = $this->session->getRider();
$event = new JOEvent();
$event->setDateHappen(new DateTime())
->setTypeID(JOEventType::REQUEUE)
@ -524,6 +531,16 @@ class RAPIController extends Controller
// set jo status to in progress
$jo->setStatus(JOStatus::IN_PROGRESS);
// add event log
$rider = $this->session->getRider();
$event = new JOEvent();
$event->setDateHappen(new DateTime())
->setTypeID(JOEventType::RIDER_ARRIVE)
->setJobOrder($jo)
->setRider($rider);
$em->persist($event);
$em->flush();
// send mqtt event
@ -541,7 +558,6 @@ class RAPIController extends Controller
];
$mclient->sendEvent($jo, $payload);
// TODO: add event
return $res->getReturnResponse();
}
@ -563,6 +579,15 @@ class RAPIController extends Controller
*/
$jo->fulfill();
// add event log
$rider = $this->session->getRider();
$event = new JOEvent();
$event->setDateHappen(new DateTime())
->setTypeID(JOEventType::FULFILL)
->setJobOrder($jo)
->setRider($rider);
$em->persist($event);
$em->flush();
// send mqtt event (fulfilled)
@ -579,9 +604,6 @@ class RAPIController extends Controller
];
$mclient->sendEvent($jo, $payload);
// TODO: add event
return $res->getReturnResponse();
}
@ -775,10 +797,17 @@ class RAPIController extends Controller
// save invoice
$jo->setInvoice($invoice);
$em->persist($invoice);
// add event log
$rider = $this->session->getRider();
$event = new JOEvent();
$event->setDateHappen(new DateTime())
->setTypeID(JOEventType::RIDER_EDIT)
->setJobOrder($jo)
->setRider($rider);
$em->persist($event);
$em->flush();
// TODO: add event
// TODO: send mqtt event (?)
return $res->getReturnResponse();

View file

@ -11,6 +11,9 @@ class JOEventType extends NameValue
const FULFILL = 'fulfill';
const OPEN_EDIT = 'open_edit';
const REQUEUE = 'requeue';
const RIDER_ACCEPT = 'accept';
const RIDER_ARRIVE = 'arrive';
const RIDER_EDIT = 'rider_edit';
const COLLECTION = [
'create' => 'Created',
@ -20,5 +23,8 @@ class JOEventType extends NameValue
'fulfill' => 'Fulfilled',
'open_edit' => 'Open Edit',
'requeue' => 'Requeue',
'accept' => 'Rider Accept',
'arrive' => 'Rider Arrive',
'rider_edit' => 'Rider Edit',
];
}