![]() 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/redchamps/module-total-adjustment/Observers/ |
<?php /** * @author RedChamps Team * @copyright Copyright (c) RedChamps (https://redchamps.com/) * @package RedChamps_TotalAdjustment */ namespace RedChamps\TotalAdjustment\Observers; use Magento\Framework\Event\Observer; use Magento\Framework\Event\ObserverInterface; use RedChamps\TotalAdjustment\Model\AdjustmentManager; class CreditmemoSaveAfter implements ObserverInterface { protected $adjustmentManager; /** * CreditmemoSaveAfter constructor. * @param AdjustmentManager $adjustmentManager */ public function __construct( AdjustmentManager $adjustmentManager ) { $this->adjustmentManager = $adjustmentManager; } public function execute(Observer $observer) { $creditmemo = $observer->getEvent()->getCreditmemo(); if (!$creditmemo->getOrigData('entity_id') && $creditmemo->getAdjustments()) { $order = $creditmemo->getOrder(); $order->setAdjustmentsRefunded( $this->adjustmentManager->mergeAdjustments( $creditmemo->getAdjustments(), $order->getAdjustmentsRefunded() ) ); $order->setAdjustmentsTaxRefunded( $order->getAdjustmentsTaxRefunded() + $creditmemo->getAdjustmentsTax() ); $order->setBaseAdjustmentsTaxRefunded( $order->getBaseAdjustmentsTaxRefunded() + $creditmemo->getBaseAdjustmentsTax() ); $order->save(); } return $this; } }