コード例 #1
0
ファイル: Bid.php プロジェクト: parassilambert/procurement
 /**
  * Add bidEvaluation
  *
  * @param \AppBundle\Entity\BidEvaluation $bidEvaluation
  */
 public function addBidEvaluation(\AppBundle\Entity\BidEvaluation $bidEvaluation)
 {
     $bidEvaluation->setBid($this);
     $this->bidEvaluations->add($bidEvaluation);
 }
コード例 #2
0
 /**
  * @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);
 }