resq/src/Command/TestRiderTrackerCommand.php

48 lines
1.2 KiB
PHP

<?php
namespace App\Command;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputArgument;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
use CrEOF\Spatial\PHP\Types\Geometry\Point;
use App\Service\RiderTracker;
class TestRiderTrackerCommand extends Command
{
protected function configure()
{
$this->setName('test:ridertracker')
->setDescription('Test the rider tracker service')
->setHelp('Test the rider tracker service.')
->addArgument('rider_id', InputArgument::REQUIRED, 'Rider ID');
}
public function __construct(RiderTracker $rtracker)
{
$this->rtracker = $rtracker;
parent::__construct();
}
public function execute(InputInterface $input, OutputInterface $output)
{
$rider_id = $input->getArgument('rider_id');
$coordinates = $this->rtracker->getRiderLocation($rider_id);
if ($coordinates != null)
{
echo "Rider Location: " . $coordinates->getLongitude() . "," . $coordinates->getLatitude() . "\n";
}
else
{
echo "Invalid rider id." . "\n";
}
return 0;
}
}