changeset 2a30c2fae7ac in modules/sale:default
details: https://hg.tryton.org/modules/sale?cmd=changeset;node=2a30c2fae7ac
description:
        Reuse get_tax_amount in on_change_lines

        issue9537
        review300271002
diffstat:

 sale.py |  6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diffs (30 lines):

diff -r 14677bf7ac44 -r 2a30c2fae7ac sale.py
--- a/sale.py   Sat Aug 29 18:24:38 2020 +0200
+++ b/sale.py   Thu Sep 03 09:01:14 2020 +0200
@@ -463,7 +463,7 @@
             return self.party.lang.code
         return Config.get_language()
 
-    @fields.depends('lines', 'currency', methods=['_get_taxes'])
+    @fields.depends('lines', 'currency', methods=['get_tax_amount'])
     def on_change_lines(self):
         self.untaxed_amount = Decimal('0.0')
         self.tax_amount = Decimal('0.0')
@@ -473,8 +473,7 @@
         if self.lines:
             for line in self.lines:
                 self.untaxed_amount += getattr(line, 'amount', None) or 0
-            taxes = self._get_taxes()
-            self.tax_amount = sum(v['amount'] for v in taxes.values())
+            self.tax_amount = self.get_tax_amount()
         if self.currency:
             self.untaxed_amount = self.currency.round(self.untaxed_amount)
             self.tax_amount = self.currency.round(self.tax_amount)
@@ -500,6 +499,7 @@
                     if value is not None else default_value,)
         return taxable_lines
 
+    @fields.depends(methods=['_get_taxes'])
     def get_tax_amount(self):
         return sum(
             (v['amount'] for v in self._get_taxes().values()), Decimal(0))

Reply via email to