findAll(); $json = $serializerInterface->serialize($reservations,'json',['groups'=>'Reservation']); return new JsonResponse($json); } /** * @Route("api/reservation/fourniseur", name="api_reservation_fourniseur") */ public function ReservationFourniseur(Request $request,CodeCadeauReservationRepository $repo, SerializerInterface $serializerInterface) { $content = $request->getContent(); $data = json_decode($content); $id = $data->id; $em = $this->getDoctrine()->getManager(); $repository = $em->getRepository(Reservation::class); $reservations = $repository->findReservationsByFourniseurId($id); return new JsonResponse(array('status' => "success", "reservations" => $reservations)); } /** * @Route("api/reservation/fourniseur/processbokking", name="api_process_reservation_fourniseur") */ public function proccessReservation(Request $request,CodeCadeauReservationRepository $repo, SerializerInterface $serializerInterface) { $content = $request->getContent(); $data = json_decode($content); $id = $data->id; $em = $this->getDoctrine()->getManager(); $reserv = $this->getDoctrine() ->getRepository(Reservation::class) ->find($id); if ($data->operation == "accept") $reserv->setStatus("Acccepté"); else $res->setStatus("Annulé"); $em->flush(); return $this->redirectToRoute('reservation_fourniseur'); } /** * @Route("api/reservation/promo/{code}", name="api_reservation_promo") */ public function bookingRequestCheckPromoCode(Request $request,CodeCadeauReservationRepository $repository, SerializerInterface $serializerInterface) { // check if code cadeau is valid $content = $request->getContent(); $data = json_decode($content); $code = $data->code; $repository = $this->getDoctrine()->getRepository(CodeCadeauReservation::class); $promoObj = $repository->findOneBy(['code' => $code]); if ($promoObj == NULL){ $status = array('status' => "error", 'message' => "Code cadeau invalide !"); } else{ $status = array('status' => "success",'sommecode' => $promoObj->getPrix()); } return new JsonResponse($status); } /** * @Route("/api/addReservation", name="api_addreservation") */ public function addReservation(Request $request,CodeCadeauReservationRepository $repo, SerializerInterface $serializerInterface){ $em = $this->getDoctrine()->getManager(); $content = $request->getContent(); $data = $serializerInterface->deserialize($content,Reservation::class,'json'); $em->persist($data); $em->flush(); return new JsonResponse(array('status' => "success")); } }