Merge branch '41-fix-500-error-for-api-get-rider' into 'master'

Resolve "Fix 500 error for api get rider"

Closes #41

See merge request jankstudio/resq!39
This commit is contained in:
Kendrick Chan 2018-03-07 18:10:52 +00:00
commit 31f57d1b83
2 changed files with 38 additions and 3 deletions

View file

@ -611,12 +611,15 @@ class CustomerController extends BaseController
->setParameter('filter', '%' . $term . '%');
}
// get rows
$obj_rows = $query->orderBy('q.plate_number', 'asc')
$query_obj = $query->orderBy('q.plate_number', 'asc')
->setFirstResult($offset)
->setMaxResults($perpage)
->getQuery()
->getResult();
->getQuery();
// error_log($query_obj->getSql());
$obj_rows = $query_obj->getResult();
// build vehicles array
$vehicles = [];

View file

@ -36,6 +36,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
use CrEOF\Spatial\PHP\Types\Geometry\Point;
use Mosquitto\Client as MosquittoClient;
use DateTime;
class JobOrderController extends BaseController
@ -972,12 +973,43 @@ class JobOrderController extends BaseController
// validated! save the entity
$em->flush();
// get rider
$rider = $obj->getRider();
$image_url = $req->getScheme() . '://' . $req->getHttpHost() . $req->getBasePath() . '/assets/images/user.gif';
if ($rider->getImageFile() != null)
$image_url = $req->getScheme() . '://' . $req->getHttpHost() . $req->getBasePath() . '/uploads/' . $rider->getImageFile();
// send to mqtt
$payload = [
'event' => 'start_rating',
'jo_id' => $obj->getID(),
'driver_image' => $image_url,
'driver_name' => $rider->getFullName(),
'driver_id' => $rider->getID(),
];
$this->sendEvent($obj, $payload);
// return successful response
return $this->json([
'success' => 'Changes have been saved!'
]);
}
protected function sendEvent(JobOrder $job_order, $payload)
{
$session = $job_order->getCustomer()->getMobileSessions();
if (count($session) == 0)
return;
$phone_num = $session[0]->getPhoneNumber();
$channel = 'motolite.control.' . $phone_num;
$client = new MosquittoClient();
$client->connect('localhost', 1883);
$client->publish($channel, json_encode($payload));
$client->disconnect();
}
public function openHubForm(MapTools $map_tools, $id)
{
$this->denyAccessUnlessGranted('jo_open.list', null, 'No access.');