![]() 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/magento/module-weee/Observer/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Weee\Observer; use Magento\Framework\Event\Observer; use Magento\Framework\Event\ObserverInterface; use Magento\Store\Model\StoreManagerInterface; use Magento\Weee\Helper\Data; /** * Add Weee item to Payment Cart amount. */ class AddPaymentWeeeItem implements ObserverInterface { /** * @var Data */ private $weeeData; /** * @var StoreManagerInterface */ private $storeManager; /** * @param Data $weeeData * @param StoreManagerInterface $storeManager */ public function __construct( Data $weeeData, StoreManagerInterface $storeManager ) { $this->weeeData = $weeeData; $this->storeManager = $storeManager; } /** * Add FPT amount as custom item to payment cart totals. * * @param Observer $observer * @return void */ public function execute(Observer $observer) { if ($this->shouldBeAddedAsCustomItem() === false) { return; } /** @var \Magento\Payment\Model\Cart $cart */ $cart = $observer->getEvent()->getCart(); $salesEntity = $cart->getSalesModel(); $totalWeee = 0; foreach ($salesEntity->getAllItems() as $item) { $originalItem = $item->getOriginalItem(); if (!$originalItem->getParentItem()) { $totalWeee += $this->weeeData->getBaseWeeeTaxAppliedRowAmount($originalItem); } } if ($totalWeee > 0.0001) { $cart->addCustomItem(__('FPT'), 1, $totalWeee); } } /** * Checks if FPT should be added to payment cart as custom item or not. * * @return bool */ private function shouldBeAddedAsCustomItem() { $storeId = $this->storeManager->getStore()->getId(); return $this->weeeData->isEnabled($storeId) && $this->weeeData->includeInSubtotal($storeId) === false; } }