src/MDS/ApiBundle/Controller/ApiCardController.php line 22

Open in your IDE?
  1. <?php
  2. namespace App\MDS\ApiBundle\Controller;
  3. use App\Helper\CardHelper;
  4. use App\MDS\ApiBundle\Auth;
  5. use App\Repository\CardRepository;
  6. use FOS\RestBundle\Controller\AbstractFOSRestController;
  7. use FOS\RestBundle\Controller\Annotations as Rest;
  8. use Symfony\Component\HttpFoundation\JsonResponse;
  9. use Symfony\Component\HttpFoundation\Request;
  10. use Symfony\Component\Serializer\Normalizer\AbstractNormalizer;
  11. use Symfony\Component\Serializer\SerializerInterface;
  12. final class ApiCardController extends AbstractFOSRestController
  13. {
  14.     /**
  15.      * Devolver las tarjetas activas
  16.      * 
  17.      * @Rest\Get("/api/card/active")
  18.      */
  19.     function activeCards(Request $requestCardRepository $cardRepositorySerializerInterface $serializer) : JsonResponse {
  20.         $token $request->headers->get('token');
  21.         try {
  22.             Auth::check($token);
  23.         } catch (\Throwable $th) {
  24.             return new JsonResponse($thJsonResponse::HTTP_BAD_REQUEST);
  25.         }
  26.         $cards $cardRepository->findBy(['status' => CardHelper::STATUS_ACTIVATED]);
  27.         $cards $serializer->serialize($cards'json', [
  28.             AbstractNormalizer::GROUPS => ['card:read'],
  29.         ]);
  30.         return new JsonResponse($cardsJsonResponse::HTTP_OK, [], true);
  31.     }
  32. }