From 685bd26d2566878c21828bc52460022b8ceefd8a Mon Sep 17 00:00:00 2001 From: Carlos G?lvez Date: Fri, 1 Feb 2019 08:19:20 +0100 Subject: [PATCH] The residual amount is always calculated, except if the invoice was canceled. #036638 --- sale.py | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/sale.py b/sale.py index 7e119e1..2f35471 100644 --- a/sale.py +++ b/sale.py @@ -127,13 +127,8 @@ class Sale(metaclass=PoolMeta): @classmethod def get_residual_amount(cls, sales, names): - result = {n: {s.id: Decimal(0) for s in sales} for n in names} - for name in names: - for sale in sales: - if sale.invoice_state != 'none': - result[name][sale.id] = sale.total_amount - sale.paid_amount - return result - + return {n: {s.id: s.total_amount - s.paid_amount if s.state != 'cancel' + else Decimal(0) for s in sales} for n in names} @classmethod def search_residual_amount(cls, name, clause):