/** * Add bidEvaluation * * @param \AppBundle\Entity\BidEvaluation $bidEvaluation */ public function addBidEvaluation(\AppBundle\Entity\BidEvaluation $bidEvaluation) { $bidEvaluation->setBid($this); $this->bidEvaluations->add($bidEvaluation); }
/** * @Route("/bid/{id}/evaluate", name="contracting_evaluate_bid") * @Template() * @Security("has_role('ROLE_CONTRACTING')") */ public function bidEvaluationAction(Request $request, $id) { $em = $this->getDoctrine()->getManager(); $bid = $em->getRepository('AppBundle:Bid')->findOneBy(array('id' => $id)); if (!$bid) { throw $this->createNotFoundException('No record found for bid with id' . $id); } $bidevaluation = new BidEvaluation(); $bidevaluation->setBid($bid); $form = $this->createForm(new BidEvaluationType($bid->getContract()), $bidevaluation); $form->handleRequest($request); if ($form->isSubmitted() && $form->isValid()) { $data = $form->getData(); $em->persist($data); $em->flush(); //Audit $audit = new Audit(); $user = $this->get('security.token_storage')->getToken()->getUser(); $audit->setUsername($user->getUsername()); $audit->setName($user->getFirstname() . " " . $user->getLastname()); $audit->setFunctionType("Contracting"); $audit->setEventType("Evaluate tender"); $audit->setDossier($bid->getContract()); $em->persist($audit); $em->flush(); return $this->redirect($this->generateUrl('contracting_view_tenders', array('id' => $bid->getContract()->getId()))); } $engine = $this->container->get('templating'); $content = $engine->render('AppBundle:Contracting:Sbid.html.twig', array('form' => $form->createView())); return $response = new Response($content); }