Example #1
0
 /**
  * Create invoice for order Id
  *
  * @param Order $order
  *
  * @return Invoice $invoice|false
  *
  */
 public function createInvoiceForOrder(Order $order)
 {
     if ($order) {
         if (!$order->getInvoice()) {
             $invoice = new Invoice();
             $this->em->persist($invoice);
             $this->em->flush();
             // Update order data
             $order->setInvoice($invoice);
             $this->em->persist($order);
             $this->em->flush();
             return $invoice;
         }
     }
     return false;
 }
Example #2
0
 /**
  * Create empty order
  *
  * @param User $user
  * @param User $seller
  * @param string $currencyCode
  * @param mixed $orderInfo
  *
  * @return Order $order
  */
 public function createEmptyOrder(User $user, User $seller, $currencyCode, $orderInfo)
 {
     $em = $this->getEntityManager();
     $order = new Order();
     $order->setTotalAmount(0);
     $order->setLocale($orderInfo['locale']);
     $order->setUser($user);
     $order->setSeller($seller);
     $order->setCurrency($currencyCode);
     $order->setStatus('new');
     $order->setPaymentMethod($orderInfo['payment_method']);
     $order->setCountry($orderInfo['billing_country']);
     $order->setRegion($orderInfo['billing_region']);
     $order->setCity($orderInfo['billing_city']);
     $order->setPhone($orderInfo['billing_phone']);
     $order->setContent($orderInfo['billing_comment']);
     $em->persist($order);
     $em->flush();
     return $order;
 }