Add startJobOrder API call. Add RIDER_START event type. #421
This commit is contained in:
parent
22c1fab15c
commit
79b19a61f6
4 changed files with 52 additions and 0 deletions
|
|
@ -95,3 +95,9 @@ cmb_rapi_offline:
|
|||
controller: App\Controller\CMBRAPIController::goOffline
|
||||
methods: [POST]
|
||||
|
||||
cmb_rapi_jo_start:
|
||||
path: /cmbrapi/joborderstart
|
||||
controller: App\Controller\CMBRAPIController::startJobOrder
|
||||
methods: [POST]
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -437,4 +437,27 @@ class CMBRAPIController extends Controller
|
|||
return $res->getReturnResponse();
|
||||
}
|
||||
|
||||
public function startJobOrder(Request $req, RiderAPIHandlerInterface $rapi_handler)
|
||||
{
|
||||
$res = new APIResult();
|
||||
|
||||
$data = $rapi_handler->startJobOrder($req);
|
||||
|
||||
if (isset($data['error']))
|
||||
{
|
||||
$message = $data['error'];
|
||||
|
||||
$res->setError(true)
|
||||
->setErrorMessage($message);
|
||||
}
|
||||
else
|
||||
{
|
||||
$res->setData($data);
|
||||
}
|
||||
|
||||
// response
|
||||
return $res->getReturnResponse();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -14,6 +14,7 @@ class CMBJOEventType extends NameValue
|
|||
const RIDER_ACCEPT = 'accept';
|
||||
const RIDER_IN_TRANSIT = 'rider_in_transit';
|
||||
const RIDER_ARRIVE = 'arrive';
|
||||
const RIDER_START = 'rider_start';
|
||||
const RIDER_EDIT = 'rider_edit';
|
||||
|
||||
const COLLECTION = [
|
||||
|
|
@ -27,6 +28,7 @@ class CMBJOEventType extends NameValue
|
|||
'accept' => 'Rider Accept',
|
||||
'rider_in_transit' => 'Rider in Transit',
|
||||
'arrive' => 'Rider Arrive',
|
||||
'start' => 'Rider Start',
|
||||
'rider_edit' => 'Rider Edit',
|
||||
];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1255,6 +1255,27 @@ class CMBRiderAPIHandler implements RiderAPIHandlerInterface
|
|||
return $data;
|
||||
}
|
||||
|
||||
public function startJobOrder(Request $req)
|
||||
{
|
||||
$required_params = ['jo_id'];
|
||||
$data = $this->checkJO($req, $required_params, $jo);
|
||||
if (isset($data['error']))
|
||||
return $data;
|
||||
|
||||
// add event log
|
||||
$rider = $this->session->getRider();
|
||||
$event = new JOEvent();
|
||||
$event->setDateHappen(new DateTime())
|
||||
->setTypeID(CMBJOEventType::RIDER_START)
|
||||
->setJobOrder($jo)
|
||||
->setRider($rider);
|
||||
$this->em->persist($event);
|
||||
|
||||
$this->em->flush();
|
||||
|
||||
return $data;
|
||||
}
|
||||
|
||||
protected function checkMissingParameters(Request $req, $params = [])
|
||||
{
|
||||
$missing = [];
|
||||
|
|
|
|||
Loading…
Reference in a new issue