diff --git a/sale_discount_total/models/account_invoice.py b/sale_discount_total/models/account_invoice.py index fa6ab1452..3db4746cc 100644 --- a/sale_discount_total/models/account_invoice.py +++ b/sale_discount_total/models/account_invoice.py @@ -152,7 +152,7 @@ class AccountInvoice(models.Model): @api.onchange('discount_type', 'discount_rate', 'invoice_line_ids') def _supply_rate(self): for inv in self: - if inv.discount_type == 'percent': + if inv.discount_type == 'percent' and inv.discount_rate > 0: discount_totals = 0 for line in inv.invoice_line_ids: line.discount = inv.discount_rate @@ -161,7 +161,7 @@ class AccountInvoice(models.Model): discount_totals = discount_totals + discount_total inv.amount_discount = discount_totals line._compute_totals() - else: + elif inv.discount_rate > 0: total = discount = 0.0 for line in inv.invoice_line_ids: total += (line.quantity * line.price_unit) diff --git a/sale_discount_total/models/sale.py b/sale_discount_total/models/sale.py index a3e6da303..d98128f57 100644 --- a/sale_discount_total/models/sale.py +++ b/sale_discount_total/models/sale.py @@ -76,10 +76,10 @@ class SaleOrder(models.Model): @api.onchange('discount_type', 'discount_rate', 'order_line') def supply_rate(self): for order in self: - if order.discount_type == 'percent': + if order.discount_type == 'percent' and order.discount_rate > 0: for line in order.order_line: line.discount = order.discount_rate - else: + elif order.discount_rate > 0: total = discount = 0.0 for line in order.order_line: total += round((line.product_uom_qty * line.price_unit))