12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- <?php
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- namespace Magento\Quote\Model\GuestCart;
- use Magento\Quote\Api\GuestBillingAddressManagementInterface;
- use Magento\Quote\Api\BillingAddressManagementInterface;
- use Magento\Quote\Model\QuoteIdMask;
- use Magento\Quote\Model\QuoteIdMaskFactory;
- /**
- * Billing address management service for guest carts.
- */
- class GuestBillingAddressManagement implements GuestBillingAddressManagementInterface
- {
- /**
- * @var QuoteIdMaskFactory
- */
- private $quoteIdMaskFactory;
- /**
- * @var BillingAddressManagementInterface
- */
- private $billingAddressManagement;
- /**
- * Constructs a quote billing address service object.
- *
- * @param BillingAddressManagementInterface $billingAddressManagement
- * @param QuoteIdMaskFactory $quoteIdMaskFactory
- */
- public function __construct(
- BillingAddressManagementInterface $billingAddressManagement,
- QuoteIdMaskFactory $quoteIdMaskFactory
- ) {
- $this->quoteIdMaskFactory = $quoteIdMaskFactory;
- $this->billingAddressManagement = $billingAddressManagement;
- }
- /**
- * {@inheritDoc}
- */
- public function assign($cartId, \Magento\Quote\Api\Data\AddressInterface $address, $useForShipping = false)
- {
- /** @var $quoteIdMask QuoteIdMask */
- $quoteIdMask = $this->quoteIdMaskFactory->create()->load($cartId, 'masked_id');
- return $this->billingAddressManagement->assign($quoteIdMask->getQuoteId(), $address, $useForShipping);
- }
- /**
- * {@inheritDoc}
- */
- public function get($cartId)
- {
- /** @var $quoteIdMask QuoteIdMask */
- $quoteIdMask = $this->quoteIdMaskFactory->create()->load($cartId, 'masked_id');
- return $this->billingAddressManagement->get($quoteIdMask->getQuoteId());
- }
- }
|