Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
Quote.php
Go to the documentation of this file.
1 <?php
7 
11 class Quote implements \Magento\Payment\Model\Cart\SalesModel\SalesModelInterface
12 {
18  protected $_salesModel;
19 
23  protected $_address;
24 
28  public function __construct(\Magento\Quote\Model\Quote $salesModel)
29  {
30  $this->_salesModel = $salesModel;
31  $this->_address = $this
32  ->_salesModel
33  ->getIsVirtual() ? $this
34  ->_salesModel
35  ->getBillingAddress() : $this
36  ->_salesModel
37  ->getShippingAddress();
38  }
39 
43  public function getAllItems()
44  {
45  $resultItems = [];
46 
47  foreach ($this->_salesModel->getAllItems() as $item) {
48  $resultItems[] = new \Magento\Framework\DataObject(
49  [
50  'parent_item' => $item->getParentItem(),
51  'name' => $item->getName(),
52  'qty' => (int)$item->getTotalQty(),
53  'price' => (double)$item->getBaseCalculationPrice(),
54  'original_item' => $item,
55  ]
56  );
57  }
58 
59  return $resultItems;
60  }
61 
65  public function getBaseSubtotal()
66  {
67  return $this->_salesModel->getBaseSubtotal();
68  }
69 
73  public function getBaseTaxAmount()
74  {
75  return $this->_address->getBaseTaxAmount();
76  }
77 
81  public function getBaseShippingAmount()
82  {
83  return $this->_address->getBaseShippingAmount();
84  }
85 
89  public function getBaseDiscountAmount()
90  {
91  return $this->_address->getBaseDiscountAmount();
92  }
93 
97  public function getDataUsingMethod($key, $args = null)
98  {
99  return $this->_salesModel->getDataUsingMethod($key, $args);
100  }
101 
105  public function getTaxContainer()
106  {
107  return $this->_salesModel
108  ->getIsVirtual() ? $this
109  ->_salesModel
110  ->getBillingAddress() : $this
111  ->_salesModel
112  ->getShippingAddress();
113  }
114 }
__construct(\Magento\Quote\Model\Quote $salesModel)
Definition: Quote.php:28