Add rider availability ajax call #424
This commit is contained in:
parent
f060223fb5
commit
b24bae3788
3 changed files with 40 additions and 4 deletions
|
|
@ -56,3 +56,8 @@ rider_priority_down_jo:
|
|||
path: /riders/{id}/priority_down/{jo_id}
|
||||
controller: App\Controller\RiderController::priorityDownJO
|
||||
methods: [GET]
|
||||
|
||||
rider_ajax_avialable:
|
||||
path: /riders/{id}/available
|
||||
controller: App\Controller\RiderController::ajaxAvailable
|
||||
methods: [GET]
|
||||
|
|
|
|||
|
|
@ -85,7 +85,6 @@ class MapEventHandler {
|
|||
var obj = JSON.parse(payload);
|
||||
|
||||
var status = obj.status;
|
||||
console.log(status);
|
||||
console.log("status " + status);
|
||||
switch (status) {
|
||||
case 'rider_offline':
|
||||
|
|
@ -94,14 +93,27 @@ class MapEventHandler {
|
|||
case 'rider_online':
|
||||
var lat = parseFloat(obj.latitude);
|
||||
var lng = parseFloat(obj.longitude);
|
||||
this.dashmap.putRiderAvailableMarker(chan_split[1], lat, lng);
|
||||
|
||||
// cheeck if rider is available / unavailable
|
||||
// TODO: make url not hardcoded
|
||||
$.get('https://cmbdev.wildcard.cc/riders/' + chan_split[1] + '/available').done(function(data) {
|
||||
console.log('rider availability - ' + data);
|
||||
switch (data) {
|
||||
case 'available':
|
||||
this.dashmap.putRiderAvailableMarker(chan_split[1], lat, lng);
|
||||
break;
|
||||
case 'unavailable':
|
||||
this.dashmap.putRiderActiveJOMarker(chan_split[1], lat, lng);
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case "location":
|
||||
console.log("got location for rider " + chan_split[1] + " - " + payload);
|
||||
// console.log("got location for rider " + chan_split[1] + " - " + payload);
|
||||
var pl_split = payload.split(':');
|
||||
console.log(pl_split);
|
||||
// console.log(pl_split);
|
||||
|
||||
// check for correct format
|
||||
if (pl_split.length != 2)
|
||||
|
|
|
|||
|
|
@ -596,4 +596,23 @@ class RiderController extends Controller
|
|||
|
||||
return $this->redirecttoRoute('rider_update', ['id' => $rider->getID()]);
|
||||
}
|
||||
|
||||
/**
|
||||
* @ParamConverter("rider", class="App\Entity\Rider")
|
||||
*/
|
||||
public function ajaxAvailable(EntityManagerInterface $em, Rider $rider)
|
||||
{
|
||||
$jos = $rider->getOpenJobOrders();
|
||||
if (count($jos) > 0)
|
||||
$avail = 'available';
|
||||
else
|
||||
$avail = 'unavaiable';
|
||||
|
||||
$response = new Response(
|
||||
'active',
|
||||
Response::HTTP_OK,
|
||||
['content-type' => 'text/plain']
|
||||
);
|
||||
return $response;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue