48 lines
1.2 KiB
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;
|
|
}
|
|
}
|