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);

сумма баланса остается в процентах к доллару. Я думаю, что я делаю ошибку при добавлении суммы в процентах к итоговой сумме заказа.

0 ответов

Другие вопросы по тегам