app/Plugin/IkusMobileApi/Controller/BrandController.php line 27

Open in your IDE?
  1. <?php
  2. namespace Plugin\IkusMobileApi\Controller;
  3. use Doctrine\ORM\NonUniqueResultException;
  4. use Eccube\Controller\AbstractController;
  5. use Plugin\IkusMobileApi\Service\BrandService;
  6. use Plugin\IkusMobileApi\Util\Paths;
  7. use Symfony\Component\HttpFoundation\JsonResponse;
  8. use Symfony\Component\HttpFoundation\Request;
  9. use Symfony\Component\Routing\Annotation\Route;
  10. class BrandController extends AbstractController
  11. {
  12.     private BrandService $brandService;
  13.     public function __construct(BrandService $brandService)
  14.     {
  15.         $this->brandService $brandService;
  16.     }
  17.     /**
  18.      * Brand API
  19.      * @Route("/api/brands", methods={"GET"})
  20.      * @param Request $request
  21.      * @return JsonResponse
  22.      */
  23.     public function brands(Request $request): JsonResponse
  24.     {
  25.         $results $this->brandService->findByBrands();
  26.         foreach ($results as &$result) {
  27.             if ($result['logo'] !== null) {
  28.                 $result['logo'] = $request->getSchemeAndHttpHost() . Paths::UPLOAD_RICH_CATEGORY $result['logo'];
  29.             }
  30.         }
  31.         unset($result);
  32.         return $this->json($results);
  33.     }
  34.     /**
  35.      * Brand Detail API
  36.      * @Route("/api/brand", methods={"GET"})
  37.      * @param Request $request
  38.      * @return JsonResponse
  39.      * @throws NonUniqueResultException
  40.      */
  41.     public function detail(Request $request): JsonResponse
  42.     {
  43.         $id $request->get('id');
  44.         $res $this->brandService->findById($id);
  45.         if ($res['logo'] !== null) {
  46.             $res['logo'] = $request->getSchemeAndHttpHost() . Paths::UPLOAD_RICH_CATEGORY $res['logo'];
  47.         }
  48.         if ($res['image'] !== null) {
  49.             $res['image'] = $request->getSchemeAndHttpHost() . Paths::UPLOAD_RICH_CATEGORY $res['image'];
  50.         }
  51.         return $this->json($res);
  52.     }
  53. }