/** * [addPrice description] * @param Devis $devis [description] * @param [type] $duration [description] * @param [type] $price [description] */ public function addPrice(Devis $devis, $duration, $new, $flush = true) { $price = $this->fetch($devis, $duration); if ($price) { return $this->editPrice($price, $new); } else { $price = new DevisPrices(); $price->setDevis($devis); $price->setDuration($this->em->getRepository('MainCommonBundle:Utils\\Duration')->findOneById($duration)); $price->setPrice((double) $new); try { $this->em->persist($price); if ($flush) { $this->em->flush(); $this->session->successFlashMessage('flash.message.devis.price.create'); } return true; } catch (\Exception $e) { $this->session->errorFlashMessage(); $this->logger->error($e->getMessage()); return false; } } }