src/Controller/Super/ReviewController.php line 24

Open in your IDE?
  1. <?php
  2. namespace App\Controller\Super;
  3. use Symfony\Component\Routing\Annotation\Route;
  4. use Symfony\Component\HttpFoundation\Request;
  5. use Symfony\Component\HttpFoundation\Response;
  6. use App\Entity\ReviewBatch;
  7. use App\Repository\ReviewRepository;
  8. use App\Entity\Review;
  9. use App\Form\ReviewType;
  10. /**
  11.  *
  12.  * @Route("/super/review/", name="super_review_")
  13.  * @author "wendell.zheng <wxzheng@ustc.edu.cn>"
  14.  */
  15. class ReviewController extends BaseController
  16. {
  17.     /**
  18.      *
  19.      * @Route("list/{id}", name="list", requirements={"id"="\d+"})
  20.      */
  21.     public function list(ReviewBatch $reviewBatchReviewRepository $rr): Response
  22.     {
  23.         $entities $rr->findByReviewBatch($reviewBatch);
  24.         return $this->render('super/review/list.html.twig', [
  25.             'name' => $this->getLowerName(),
  26.             'title' => $reviewBatch->getName() . ' - 项目列表',
  27.             'reviewBatch' => $reviewBatch,
  28.             'entities' => $entities
  29.         ]);
  30.     }
  31.     /**
  32.      *
  33.      * @Route("edit/{id}", name="edit", requirements={"id"="\d+"})
  34.      */
  35.     public function edit(Review $reviewRequest $request): Response
  36.     {
  37.         $reviewBatch $review->getReviewBatch();
  38.         $title $review->getId() ? '编辑' '新建';
  39.         $form $this->createForm(ReviewType::class, $review);
  40.         $form->handleRequest($request);
  41.         if ($form->isSubmitted() && $form->isValid()) {
  42.             $this->em->persist($review);
  43.             $this->em->flush();
  44.             $this->addFlash('review''操作成功');
  45.             return $this->redirectToRoute('super_review_list', [
  46.                 'id' => $reviewBatch->getId()
  47.             ]);
  48.         }
  49.         return $this->render('super/review/edit.html.twig', [
  50.             'name' => $this->getLowerName(),
  51.             'title' => $reviewBatch->getName() . ' - ' $title '项目',
  52.             'reviewBatch' => $reviewBatch,
  53.             'form' => $form->createView()
  54.         ]);
  55.     }
  56. }