src/Controller/Api/NoteGameController.php line 84

Open in your IDE?
  1. <?php
  2. namespace App\Controller\Api;
  3. use App\Services\Api\NoteGameManager;
  4. use Doctrine\ORM\EntityManagerInterface;
  5. use Symfony\Component\DependencyInjection\ParameterBag\ParameterBagInterface;
  6. use Symfony\Component\HttpFoundation\JsonResponse;
  7. use Symfony\Component\HttpFoundation\Request;
  8. use Symfony\Component\Routing\Annotation\Route;
  9. class NoteGameController extends ApiController
  10. {
  11.   /** @var NoteGameManager $noteGameManager */
  12.   protected $noteGameManager;
  13.   /**
  14.    * @param NoteGameManager $noteGameManager
  15.    */
  16.   public function __construct(EntityManagerInterface $emParameterBagInterface $parameterBagNoteGameManager $noteGameManager)
  17.   {
  18.     parent::__construct($em$parameterBag);
  19.     $this->noteGameManager $noteGameManager;
  20.   }
  21.   /**
  22.    * @param Request $request
  23.    * @return JsonResponse
  24.    *
  25.    * @Route("/note_game/add", name="api_note_game_add", methods={"POST"})
  26.    */
  27.   public function add(Request $request)
  28.   {
  29.     $request $this->transformJsonBody($request);
  30.     $data $this->getDataFromRequest($request);
  31.     $response $this->noteGameManager->add($data$request);
  32.     return $this->response($response);
  33.   }
  34.   /**
  35.    * @param Request $request
  36.    * @return JsonResponse
  37.    *
  38.    * @Route("/note_game/update/{id}", name="api_note_game_update", methods={"POST"})
  39.    */
  40.   public function update(Request $requestInt $id)
  41.   {
  42.     $request $this->transformJsonBody($request);
  43.     $data $this->getDataUpdateFromRequest($request);
  44.     $response $this->noteGameManager->update($data$id);
  45.     return $this->response($response);
  46.   }
  47.   /**
  48.    * @param Request $request
  49.    * @return JsonResponse
  50.    *
  51.    * @Route("/note_game/delete/{id}", name="api_note_game_delete", methods={"POST"})
  52.    */
  53.   public function delete(Int $id)
  54.   {
  55.     $response $this->noteGameManager->delete($id);
  56.     return $this->response($response);
  57.   }
  58.   /**
  59.    * @param Request $request
  60.    * @return JsonResponse
  61.    *
  62.    * @Route("/note_game/{game_id}", name="api_note_game_get", methods={"POST"})
  63.    */
  64.   public function getNotesGame(Request $requestInt $game_id)
  65.   {
  66.     $response $this->noteGameManager->getNotesGame($request$game_id);
  67.     return $this->response($response);
  68.   }
  69.   protected function getDataFromRequest(Request $request)
  70.   {
  71.     $data = [
  72.       "game_id" => $request->get('game_id'),
  73.       "note" => $request->get('note'),
  74.     ];
  75.     return $data;
  76.   }
  77.   protected function getDataUpdateFromRequest(Request $request)
  78.   {
  79.     $data = [
  80.       "note" => $request->get('note'),
  81.     ];
  82.     return $data;
  83.   }
  84. }