142 lines
4.4 KiB
PHP
142 lines
4.4 KiB
PHP
<?php
|
|
|
|
namespace Catalyst\APIBundle\Command;
|
|
|
|
use Symfony\Component\Console\Command\Command;
|
|
use Symfony\Component\Console\Input\InputArgument;
|
|
use Symfony\Component\Console\Input\InputOption;
|
|
use Symfony\Component\Console\Input\InputInterface;
|
|
use Symfony\Component\Console\Output\OutputInterface;
|
|
use Symfony\Component\Security\Core\Encoder\EncoderFactoryInterface;
|
|
|
|
use Catalyst\APIBundle\Connector\Client as APIClient;
|
|
|
|
|
|
class TestAPICommand extends Command
|
|
{
|
|
protected function configure()
|
|
{
|
|
$this->setName('api:test-connector-all')
|
|
->setDescription('Test API connector with all commands.')
|
|
->setHelp('Test API Connector with all commands.')
|
|
->addArgument('protocol', InputArgument::REQUIRED, 'protocol')
|
|
->addArgument('server', InputArgument::REQUIRED, 'server')
|
|
->addArgument('api_key', InputArgument::REQUIRED, 'api_key')
|
|
->addArgument('secret_key', InputArgument::REQUIRED, 'secret_key');
|
|
}
|
|
|
|
protected function execute(InputInterface $input, OutputInterface $output)
|
|
{
|
|
$protocol = $input->getArgument('protocol');
|
|
$server = $input->getArgument('server');
|
|
$api_key = $input->getArgument('api_key');
|
|
$secret_key = $input->getArgument('secret_key');
|
|
|
|
// api client
|
|
$api = new APIClient($server, $api_key, $secret_key);
|
|
$api->setProtocol($protocol);
|
|
|
|
// test
|
|
$api->get('/capi/test');
|
|
|
|
// TODO: shift this out of the bundle, since it's project specific
|
|
|
|
// warranty register
|
|
$serial = 'AJ34LJADR12134LKJL5';
|
|
$plate_num = 'XEN918';
|
|
$params = [
|
|
'serial' => $serial,
|
|
'plate_number' => $plate_num,
|
|
'warranty_class' => 'private',
|
|
'sku' => 'WMEB24CB-CPN00-LX',
|
|
'date_purchase' => '20181001',
|
|
'date_expire' => '20191001',
|
|
'first_name' => 'First',
|
|
'last_name' => 'Last',
|
|
'mobile_number' => '09231234567',
|
|
];
|
|
$api->post('/capi/warranties', $params);
|
|
|
|
// get all warranties
|
|
$params = [
|
|
'order' => 'DESC',
|
|
'limit' => '5',
|
|
'start' => '1',
|
|
];
|
|
|
|
$api->get('/capi/warranties', $params);
|
|
|
|
|
|
// warranty find
|
|
$api->get('/capi/warranties/' . $serial);
|
|
|
|
// warranty update
|
|
$id = 86811;
|
|
$params = [
|
|
'serial' => $serial,
|
|
'plate_number' => $plate_num,
|
|
'warranty_class' => 'private',
|
|
'sku' => 'WMEB24CB-CPN00-LX',
|
|
'date_purchase' => '20181001',
|
|
'date_expire' => '20191001',
|
|
'first_name' => 'First',
|
|
'last_name' => 'Last',
|
|
'mobile_number' => '123456789111',
|
|
];
|
|
$api->post('/capi/warranties/'. $id, $params);
|
|
|
|
// warranty set privacy policy
|
|
$id = 86811;
|
|
$policy_id = 2;
|
|
$params = [
|
|
'privacy_policy_id' => $policy_id,
|
|
];
|
|
$api->post('/capi/warranties/' . $id .'/privacypolicy', $params);
|
|
|
|
// warranty claim
|
|
$id = 86811;
|
|
$serial = 'AJ34LJADR12134LKJL5';
|
|
$params = [
|
|
'serial' => $serial,
|
|
];
|
|
$api->post('/capi/warranties/' . $id . '/claim', $params);
|
|
|
|
// warranty cancel
|
|
$id = 86811;
|
|
$api->get('/capi/warranties/' . $id . '/cancel');
|
|
|
|
// plate warranty
|
|
$api->get('/capi/plates/' . $plate_num . '/warranties');
|
|
|
|
// warranty delete
|
|
$id = 86811;
|
|
$api->post('/capi/warranties/' . $id . '/delete');
|
|
|
|
// battery
|
|
$api->get('/capi/battery_brands');
|
|
$api->get('/capi/battery_sizes');
|
|
$api->get('/capi/batteries');
|
|
|
|
// vehicle
|
|
$api->get('/capi/vehicle_manufacturers');
|
|
$api->get('/capi/vehicles');
|
|
|
|
// privacy policy
|
|
$privacy_policy_id = 2;
|
|
$api->get('/capi/privacy_policy/' . $privacy_policy_id );
|
|
|
|
// register new customer
|
|
$params = [
|
|
'first_name' => 'Krispups',
|
|
'last_name' =>'Porzindog',
|
|
'mobile_number' => '9221111111',
|
|
'v_make_id' => '22241',
|
|
'v_model_year' => '2018',
|
|
'v_plate_number' => 'KPP1234',
|
|
'v_color' => 'White',
|
|
'v_condition' => 'new',
|
|
'v_fuel_type' => 'gas',
|
|
];
|
|
$api->post('/capi/quick_registration', $params);
|
|
}
|
|
}
|