resq/src/Controller/CAPI/DealerController.php

53 lines
1.5 KiB
PHP

<?php
namespace App\Controller\CAPI;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Request;
use Doctrine\ORM\Query;
use Doctrine\ORM\EntityManagerInterface;
use Catalyst\ApiBundle\Controller\ApiController;
use Catalyst\ApiBundle\Component\Response as APIResponse;
use App\Entity\Dealer;
use Catalyst\AuthBundle\Service\ACLGenerator as ACLGenerator;
class DealerController extends ApiController
{
protected $acl_gen;
public function __construct(ACLGenerator $acl_gen)
{
$this->acl_gen = $acl_gen;
}
public function getAll(EntityManagerInterface $em)
{
// get all dealer data order by dealer name
$this->denyAccessUnlessGranted('dealer.list', null, 'No access.');
$results = $em->getRepository(Dealer::class)->findBy([], ['name' => 'ASC']);
$dealers = [];
foreach($results as $res)
{
$dealer_id = $res->getId();
$dealer_name = $res->getName();
$dealer_address = $res->getAddress();
$dealer_branch_code = $res->getBranchCode();
$dealers[$dealer_id] = [
'id' => $dealer_id,
'name' => $dealer_name,
'address' => $dealer_address,
'branch_code' => $dealer_branch_code,
];
}
$data = [
'dealers' => $dealers,
];
return new APIResponse(true, 'Dealers loaded.', $data);
}
}