changeset 98099dc73eb3 in modules/purchase:default
details: https://hg.tryton.org/modules/purchase?cmd=changeset;node=98099dc73eb3
description:
Reuse get_tax_amount in on_change_lines
issue9537
review312091002
diffstat:
purchase.py | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diffs (30 lines):
diff -r 0daec31b788d -r 98099dc73eb3 purchase.py
--- a/purchase.py Sun Aug 16 16:52:00 2020 +0200
+++ b/purchase.py Thu Sep 03 09:01:26 2020 +0200
@@ -470,7 +470,7 @@
context['language'] = self.party.lang.code
return context
- @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')
@@ -479,8 +479,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(t['amount'] for t 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)
@@ -506,6 +505,7 @@
if value is not None else default_value,)
return taxable_lines
+ @fields.depends(methods=['_get_taxes'])
def get_tax_amount(self):
taxes = iter(self._get_taxes().values())
return sum((tax['amount'] for tax in taxes), Decimal(0))