![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/fooman/pdfcore-m2/src/Block/Pdf/Column/ |
<?php /** * @copyright Copyright (c) 2015 Fooman Limited (http://www.fooman.co.nz) * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Fooman\PdfCore\Block\Pdf\Column; use Magento\Tax\Model\Config as TaxConfig; use Magento\Sales\Api\Data\OrderItemInterface; class Price extends \Fooman\PdfCore\Block\Pdf\Column implements \Fooman\PdfCore\Block\Pdf\ColumnInterface { public const DEFAULT_WIDTH = 12; public const DEFAULT_TITLE = 'Price'; public const COLUMN_TYPE = 'fooman_currency'; public function getGetter() { return [$this, 'getPrice']; } public function getPrice($row) { if ($this->isColumnSuppressed($row, OrderItemInterface::PRICE)) { return null; } if ($row instanceof \Magento\Sales\Api\Data\OrderItemInterface) { $storedId = $row->getStoreId(); } else { $storedId = $row->getOrderItem()->getStoreId(); } $priceTaxDisplay = $this->_scopeConfig->getValue( TaxConfig::XML_PATH_DISPLAY_SALES_PRICE, \Magento\Store\Model\ScopeInterface::SCOPE_STORE, $storedId ); $methodExcl = $this->convertInterfaceConstantToGetter(OrderItemInterface::PRICE); $baseMethodExcl = $this->convertInterfaceConstantToGetter(OrderItemInterface::BASE_PRICE); $methodIncl = $this->convertInterfaceConstantToGetter(OrderItemInterface::PRICE_INCL_TAX); $baseMethodIncl = $this->convertInterfaceConstantToGetter(OrderItemInterface::BASE_PRICE_INCL_TAX); if ($row instanceof \Magento\Sales\Api\Data\OrderItemInterface) { $item = $row; } else { $item = $row->getOrderItem(); } $priceExcl = $item->$methodExcl(); $basePriceExcl = $item->$baseMethodExcl(); $priceIncl = $item->$methodIncl(); $basePriceIncl = $item->$baseMethodIncl(); if ($priceTaxDisplay == TaxConfig::DISPLAY_TYPE_BOTH) { if ($this->isDisplayingBothCurrencies()) { return [ ['currency' => $this->getBaseCurrencyCode(), 'amount' => $basePriceExcl], ['currency' => $this->getBaseCurrencyCode(), 'amount' => $basePriceIncl], ['currency' => $this->getCurrencyCode(), 'amount' => $priceExcl], ['currency' => $this->getCurrencyCode(), 'amount' => $priceIncl] ]; } elseif ($this->getUseOrderCurrency()) { return [ ['currency' => $this->getCurrencyCode(), 'amount' => $priceExcl], ['currency' => $this->getCurrencyCode(), 'amount' => $priceIncl] ]; } return [ ['currency' => $this->getBaseCurrencyCode(), 'amount' => $basePriceExcl], ['currency' => $this->getBaseCurrencyCode(), 'amount' => $basePriceIncl] ]; } elseif ($priceTaxDisplay == TaxConfig::DISPLAY_TYPE_EXCLUDING_TAX) { if ($this->isDisplayingBothCurrencies()) { return [ ['currency' => $this->getBaseCurrencyCode(), 'amount' => $basePriceExcl], ['currency' => $this->getCurrencyCode(), 'amount' => $priceExcl] ]; } elseif ($this->getUseOrderCurrency()) { return [ ['currency' => $this->getCurrencyCode(), 'amount' => $priceExcl] ]; } return [ ['currency' => $this->getBaseCurrencyCode(), 'amount' => $basePriceExcl] ]; } if ($this->isDisplayingBothCurrencies()) { return [ ['currency' => $this->getBaseCurrencyCode(), 'amount' => $basePriceIncl], ['currency' => $this->getCurrencyCode(), 'amount' => $priceIncl] ]; } elseif ($this->getUseOrderCurrency()) { return [ ['currency' => $this->getCurrencyCode(), 'amount' => $priceIncl] ]; } return [ ['currency' => $this->getBaseCurrencyCode(), 'amount' => $basePriceIncl] ]; } }