From 969ba60d3b41804a38fb8bd3d577cb3f90d05ac2 Mon Sep 17 00:00:00 2001 From: "Pedro M. Baeza" Date: Tue, 24 Apr 2018 13:22:37 +0200 Subject: [PATCH] [IMP] contract_variable_quantity: Recompute price when changing qty If you have contract lines with automatic price and your pricelist contains different prices per quantity, the price is not changed when computing quantity. This PR fixes this. --- contract/__manifest__.py | 4 ++-- contract/models/account_analytic_invoice_line.py | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/contract/__manifest__.py b/contract/__manifest__.py index b5343ee76..94cbb9775 100644 --- a/contract/__manifest__.py +++ b/contract/__manifest__.py @@ -1,5 +1,5 @@ # Copyright 2004-2010 OpenERP SA -# Copyright 2014-2017 Tecnativa - Pedro M. Baeza +# Copyright 2014-2018 Tecnativa - Pedro M. Baeza # Copyright 2015 Domatix # Copyright 2016-2018 Tecnativa - Carlos Dauden # Copyright 2017 Tecnativa - Vicent Cubells @@ -8,7 +8,7 @@ { 'name': 'Contracts Management - Recurring', - 'version': '11.0.2.0.1', + 'version': '11.0.2.0.2', 'category': 'Contract Management', 'license': 'AGPL-3', 'author': "OpenERP SA, " diff --git a/contract/models/account_analytic_invoice_line.py b/contract/models/account_analytic_invoice_line.py index 75fd22df6..8f547aaf3 100644 --- a/contract/models/account_analytic_invoice_line.py +++ b/contract/models/account_analytic_invoice_line.py @@ -3,7 +3,7 @@ # Copyright 2014 Angel Moya # Copyright 2016 Carlos Dauden # Copyright 2016-2017 LasLabs Inc. -# Copyright 2015-2017 Tecnativa - Pedro M. Baeza +# Copyright 2015-2018 Tecnativa - Pedro M. Baeza # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). from dateutil.relativedelta import relativedelta @@ -98,7 +98,9 @@ class AccountAnalyticInvoiceLine(models.Model): for line in self: if line.automatic_price: product = line.product_id.with_context( - quantity=line.quantity, + quantity=line.env.context.get( + 'contract_line_qty', line.quantity, + ), pricelist=line.analytic_account_id.pricelist_id.id, partner=line.analytic_account_id.partner_id.id, date=line.env.context.get('old_date', fields.Date.today()),