Magento 2 Выпуск с суммой заказа, если добавить пользовательскую сумму в налог
Я добавляю таможенную сумму к налогу, используя Observer. Код моего наблюдателя в events.xml
<event name="sales_quote_address_collect_totals_after">
<observer name="addtax" instance="Vendor\Mymodule\Observer\ChangeTaxTotal"/>
</event>
Код файла My Observer для добавления пользовательской суммы в налог
if (count($total->getAppliedTaxes()) > 0) {
$total->addTotalAmount('tax', $percentfval);
$total->setGrandTotal($total->getGrandTotal() + $percentfval);
}
Работает нормально. Но проблема, когда я использую Подарочную карту. После применения подарочной карты общая сумма моего заказа должна быть 0. Потому что она меньше, чем остаток на подарочной карте. Но сумма заказа остается той суммой в процентах от $, которую я добавил сюда
$total->setGrandTotal($total->getGrandTotal() + $percentfval);
сумма баланса остается в процентах к доллару. Я думаю, что я делаю ошибку при добавлении суммы в процентах к итоговой сумме заказа.