/**
  * @param QuoteVariantEvent $event
  */
 public function createAskFromQuote(QuoteVariantEvent $event)
 {
     $entity = $event->getQuoteVariant();
     if ($entity->hasLineType('TRANSMITTER')) {
         $ask = AskFactory::create(new VariantAskBuilder($entity));
         $this->om->persist($ask);
         $this->om->flush();
     }
 }
 public function createThread(QuoteVariantEvent $event)
 {
     $entity = $event->getQuoteVariant();
     if ($entity->getQuote()->getDoor() !== null) {
         $starter = new StarterQuote($entity);
         $this->om->persist($starter);
         $thread = new Thread($starter);
         $this->om->persist($thread);
         $this->om->flush();
     }
 }
 /**
  * @param QuoteVariantEvent $event
  */
 public function createWorkFromQuote(QuoteVariantEvent $event)
 {
     $entity = $event->getQuoteVariant();
     if ($entity->getWork() === null && $entity->getQuote()->getDoor() !== null) {
         // Création de la ligne travaux pré-remplie
         //$work = Work::createFromQuoteVariant($entity);
         $work = WorkFactory::create(new VariantWorkBuilder($entity, array('category' => $this->om->getRepository('JLMDailyBundle:WorkCategory')->find(1), 'objective' => $this->om->getRepository('JLMDailyBundle:WorkObjective')->find(1))));
         //$work->setMustBeBilled(true);
         //$work->setCategory($this->om->getRepository('JLMDailyBundle:WorkCategory')->find(1));
         //$work->setObjective($this->om->getRepository('JLMDailyBundle:WorkObjective')->find(1));
         $order = $work->getOrder();
         $this->om->persist($order);
         $olines = $order->getLines();
         foreach ($olines as $oline) {
             $oline->setOrder($order);
             $this->om->persist($oline);
         }
         //$work->setOrder($order);
         $this->om->persist($work);
         $entity->setWork($work);
         $this->om->flush();
     }
 }
 public function sendGivenConfirmMail(QuoteVariantEvent $event)
 {
     $mail = MailFactory::create(new QuoteVariantConfirmGivenMailBuilder($event->getQuoteVariant()));
     $swift = MailFactory::create(new MailSwiftMailBuilder($mail));
     $this->mailer->send($swift);
 }
 public function createQuoteVariantReceiptEvent(QuoteVariantEvent $event)
 {
     $event->getQuoteVariant()->getQuote()->addEvent(Quote::EVENT_RECEIPT, array('variant' => $event->getQuoteVariant()->getNumber()));
 }