diff --git a/lib/data/models/mixins/invoice_mixin.dart b/lib/data/models/mixins/invoice_mixin.dart index 3769a000b..8da3af23d 100644 --- a/lib/data/models/mixins/invoice_mixin.dart +++ b/lib/data/models/mixins/invoice_mixin.dart @@ -259,8 +259,9 @@ abstract class CalculateInvoiceTotal { if (!usesInclusiveTaxes) { final double taxAmount1 = round(total * taxRate1 / 100, precision); final double taxAmount2 = round(total * taxRate2 / 100, precision); + final double taxAmount3 = round(total * taxRate3 / 100, precision); - total += itemTax + taxAmount1 + taxAmount2; + total += itemTax + taxAmount1 + taxAmount2 + taxAmount3; } if (customSurcharge1 != 0.0 && !customTaxes1) { diff --git a/lib/ui/invoice/edit/invoice_edit_desktop.dart b/lib/ui/invoice/edit/invoice_edit_desktop.dart index 8b58d7b33..60604a151 100644 --- a/lib/ui/invoice/edit/invoice_edit_desktop.dart +++ b/lib/ui/invoice/edit/invoice_edit_desktop.dart @@ -843,6 +843,10 @@ class InvoiceEditDesktopState extends State invoice.taxName3.isNotEmpty) TaxRateDropdown( onSelected: (taxRate) { + final updatedInvoice = + invoice.applyTax(taxRate, isThird: true); + print( + '## UPDATED\nRate 3: ${updatedInvoice.taxName3} => ${updatedInvoice.taxRate3}'); viewModel.onChanged( invoice.applyTax(taxRate, isThird: true)); },