本文整理汇总了PHP中Magento\Quote\Model\Quote::getCustomerId方法的典型用法代码示例。如果您正苦于以下问题:PHP Quote::getCustomerId方法的具体用法?PHP Quote::getCustomerId怎么用?PHP Quote::getCustomerId使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Magento\Quote\Model\Quote
的用法示例。
在下文中一共展示了Quote::getCustomerId方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getQuote
/**
* 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;
}
示例2: add
/**
* @param array $giftMessages
* @param \Magento\Quote\Model\Quote $quote
* @return $this
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
*/
public function add($giftMessages, $quote)
{
if (!is_array($giftMessages)) {
return $this;
}
// types are 'quote', 'quote_item', etc
foreach ($giftMessages as $type => $giftMessageEntities) {
foreach ($giftMessageEntities as $entityId => $message) {
$giftMessage = $this->messageFactory->create();
switch ($type) {
case 'quote':
$entity = $quote;
break;
case 'quote_item':
$entity = $quote->getItemById($entityId);
break;
case 'quote_address':
$entity = $quote->getAddressById($entityId);
break;
case 'quote_address_item':
$entity = $quote->getAddressById($message['address'])->getItemById($entityId);
break;
default:
$entity = $quote;
break;
}
if ($entity->getGiftMessageId()) {
$giftMessage->load($entity->getGiftMessageId());
}
if (trim($message['message']) == '') {
if ($giftMessage->getId()) {
try {
$giftMessage->delete();
$entity->setGiftMessageId(0)->save();
} catch (\Exception $e) {
}
}
continue;
}
try {
$giftMessage->setSender($message['from'])->setRecipient($message['to'])->setMessage($message['message'])->setCustomerId($quote->getCustomerId())->save();
$entity->setGiftMessageId($giftMessage->getId())->save();
} catch (\Exception $e) {
}
}
}
return $this;
}
示例3: getGiftMessage
public function getGiftMessage()
{
if (!is_null($this->giftMessage)) {
return $this->giftMessage;
}
$giftMessageData = $this->proxyItem->getGiftMessage();
if (!is_array($giftMessageData)) {
return NULL;
}
$giftMessageData['customer_id'] = (int) $this->quote->getCustomerId();
/** @var $giftMessage \Magento\GiftMessage\Model\Message */
$giftMessage = $this->messageFactory->create()->addData($giftMessageData);
if ($giftMessage->isMessageEmpty()) {
return NULL;
}
$this->giftMessage = $giftMessage->save();
return $this->giftMessage;
}
示例4: delete
/**
* Delete quote
*
* @param Quote $quote
* @return void
*/
public function delete(Quote $quote)
{
$quoteId = $quote->getId();
$customerId = $quote->getCustomerId();
$quote->delete();
unset($this->quotesById[$quoteId]);
unset($this->quotesByCustomerId[$customerId]);
}
示例5: _validateCustomerDataInQuote
/**
* Ensure that quote has customer data specified in customer fixture.
*
* @param \Magento\Quote\Model\Quote $quote
*/
protected function _validateCustomerDataInQuote($quote)
{
$customerIdFromFixture = 1;
$customerEmailFromFixture = 'customer@example.com';
$customerFirstNameFromFixture = 'John';
$this->assertEquals($customerEmailFromFixture, $quote->getCustomerEmail(), 'Customer email was not set to Quote correctly.');
$this->assertEquals($customerIdFromFixture, $quote->getCustomerId(), 'Customer ID was not set to Quote correctly.');
$this->assertEquals($customerFirstNameFromFixture, $quote->getCustomerFirstname(), 'Customer first name was not set to Quote correctly.');
}
示例6: _prepareCustomerQuote
/**
* Prepare quote for customer order submit
*
* @param Quote $quote
* @return void
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
* @SuppressWarnings(PHPMD.NPathComplexity)
*/
protected function _prepareCustomerQuote($quote)
{
/** @var Quote $quote */
$billing = $quote->getBillingAddress();
$shipping = $quote->isVirtual() ? null : $quote->getShippingAddress();
$customer = $this->customerRepository->getById($quote->getCustomerId());
$hasDefaultBilling = (bool) $customer->getDefaultBilling();
$hasDefaultShipping = (bool) $customer->getDefaultShipping();
if ($shipping && !$shipping->getSameAsBilling() && (!$shipping->getCustomerId() || $shipping->getSaveInAddressBook())) {
$shippingAddress = $shipping->exportCustomerAddress();
if (!$hasDefaultShipping) {
//Make provided address as default shipping address
$shippingAddress->setIsDefaultShipping(true);
$hasDefaultShipping = true;
}
$quote->addCustomerAddress($shippingAddress);
$shipping->setCustomerAddressData($shippingAddress);
}
if (!$billing->getCustomerId() || $billing->getSaveInAddressBook()) {
$billingAddress = $billing->exportCustomerAddress();
if (!$hasDefaultBilling) {
//Make provided address as default shipping address
if (!$hasDefaultShipping) {
//Make provided address as default shipping address
$billingAddress->setIsDefaultShipping(true);
}
$billingAddress->setIsDefaultBilling(true);
}
$quote->addCustomerAddress($billingAddress);
$billing->setCustomerAddressData($billingAddress);
}
if ($shipping && !$shipping->getCustomerId() && !$hasDefaultBilling) {
$shipping->setIsDefaultBilling(true);
}
}
示例7: isAllowed
/**
* Check whether quote is allowed for current user context
*
* @param \Magento\Quote\Model\Quote $quote
* @return bool
*/
protected function isAllowed(\Magento\Quote\Model\Quote $quote)
{
return $this->userContext->getUserType() == UserContextInterface::USER_TYPE_CUSTOMER ? $quote->getCustomerId() === null || $quote->getCustomerId() == $this->userContext->getUserId() : true;
}