changeset 453100758df4 in modules/sale:default
details: https://hg.tryton.org/modules/sale?cmd=changeset&node=453100758df4
description:
        Ensure unique taxes when applying tax rule

        Since issue10841 the taxes must be unique so the tax rule application 
must
        result on unique taxes.

        issue11230
        review419361003
diffstat:

 sale.py |  10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)

diffs (29 lines):

diff -r e076958f9f42 -r 453100758df4 sale.py
--- a/sale.py   Wed Jun 15 22:03:38 2022 +0200
+++ b/sale.py   Sun Jul 17 00:00:56 2022 +0200
@@ -1345,20 +1345,20 @@
 
     @fields.depends('product', methods=['_get_tax_rule_pattern'])
     def compute_taxes(self, party):
-        taxes = []
+        taxes = set()
         pattern = self._get_tax_rule_pattern()
         for tax in self.product.customer_taxes_used:
             if party and party.customer_tax_rule:
                 tax_ids = party.customer_tax_rule.apply(tax, pattern)
                 if tax_ids:
-                    taxes.extend(tax_ids)
+                    taxes.update(tax_ids)
                 continue
-            taxes.append(tax.id)
+            taxes.add(tax.id)
         if party and party.customer_tax_rule:
             tax_ids = party.customer_tax_rule.apply(None, pattern)
             if tax_ids:
-                taxes.extend(tax_ids)
-        return taxes
+                taxes.update(tax_ids)
+        return list(taxes)
 
     @fields.depends('product', 'quantity', methods=['_get_context_sale_price'])
     def compute_unit_price(self):

Reply via email to