Beispiel #1
0
 private function initializeCustomer()
 {
     if ($this->proxyOrder->isCheckoutMethodGuest()) {
         $this->quote->setCustomerId(null)->setCustomerEmail($this->proxyOrder->getBuyerEmail())->setCustomerFirstname($this->proxyOrder->getCustomerFirstName())->setCustomerLastname($this->proxyOrder->getCustomerLastName())->setCustomerIsGuest(true)->setCustomerGroupId(\Magento\Customer\Model\Group::NOT_LOGGED_IN_ID);
     }
     $this->quote->assignCustomer($this->proxyOrder->getCustomer());
 }
Beispiel #2
0
 /**
  * Retrieve quote model object
  *
  * @return \Magento\Quote\Model\Quote
  */
 public function getQuote()
 {
     if ($this->_quote === null) {
         $this->_quote = $this->quoteFactory->create();
         if ($this->getStoreId()) {
             if (!$this->getQuoteId()) {
                 $this->_quote->setCustomerGroupId($this->groupManagement->getDefaultGroup()->getId());
                 $this->_quote->setIsActive(false);
                 $this->_quote->setStoreId($this->getStoreId());
                 $this->quoteRepository->save($this->_quote);
                 $this->setQuoteId($this->_quote->getId());
                 $this->_quote = $this->quoteRepository->get($this->getQuoteId(), [$this->getStoreId()]);
             } else {
                 $this->_quote = $this->quoteRepository->get($this->getQuoteId(), [$this->getStoreId()]);
                 $this->_quote->setStoreId($this->getStoreId());
             }
             if ($this->getCustomerId() && $this->getCustomerId() != $this->_quote->getCustomerId()) {
                 $customer = $this->customerRepository->getById($this->getCustomerId());
                 $this->_quote->assignCustomer($customer);
                 $this->quoteRepository->save($this->_quote);
             }
         }
         $this->_quote->setIgnoreOldQty(true);
         $this->_quote->setIsSuperMode(true);
     }
     return $this->_quote;
 }
Beispiel #3
0
 /**
  * Retrieve customer cart quote object model
  *
  * @return \Magento\Quote\Model\Quote
  */
 public function getCustomerCart()
 {
     if (!is_null($this->_cart)) {
         return $this->_cart;
     }
     $this->_cart = $this->quoteRepository->create();
     $customerId = (int) $this->getSession()->getCustomerId();
     if ($customerId) {
         try {
             $this->_cart = $this->quoteRepository->getForCustomer($customerId);
         } catch (\Magento\Framework\Exception\NoSuchEntityException $e) {
             $this->_cart->setStore($this->getSession()->getStore());
             $customerData = $this->customerRepository->getById($customerId);
             $this->_cart->assignCustomer($customerData);
             $this->quoteRepository->save($this->_cart);
         }
     }
     return $this->_cart;
 }
Beispiel #4
0
 /**
  * Setter for customer
  *
  * @param CustomerDataObject $customerData
  * @return $this
  */
 public function setCustomerData(CustomerDataObject $customerData)
 {
     $this->_quote->assignCustomer($customerData);
     $this->_customerId = $customerData->getId();
     return $this;
 }