Browse Source

[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.
pull/202/head
Pedro M. Baeza 7 years ago
parent
commit
969ba60d3b
  1. 4
      contract/__manifest__.py
  2. 6
      contract/models/account_analytic_invoice_line.py

4
contract/__manifest__.py

@ -1,5 +1,5 @@
# Copyright 2004-2010 OpenERP SA # Copyright 2004-2010 OpenERP SA
# Copyright 2014-2017 Tecnativa - Pedro M. Baeza
# Copyright 2014-2018 Tecnativa - Pedro M. Baeza
# Copyright 2015 Domatix # Copyright 2015 Domatix
# Copyright 2016-2018 Tecnativa - Carlos Dauden # Copyright 2016-2018 Tecnativa - Carlos Dauden
# Copyright 2017 Tecnativa - Vicent Cubells # Copyright 2017 Tecnativa - Vicent Cubells
@ -8,7 +8,7 @@
{ {
'name': 'Contracts Management - Recurring', 'name': 'Contracts Management - Recurring',
'version': '11.0.2.0.1',
'version': '11.0.2.0.2',
'category': 'Contract Management', 'category': 'Contract Management',
'license': 'AGPL-3', 'license': 'AGPL-3',
'author': "OpenERP SA, " 'author': "OpenERP SA, "

6
contract/models/account_analytic_invoice_line.py

@ -3,7 +3,7 @@
# Copyright 2014 Angel Moya <angel.moya@domatix.com> # Copyright 2014 Angel Moya <angel.moya@domatix.com>
# Copyright 2016 Carlos Dauden <carlos.dauden@tecnativa.com> # Copyright 2016 Carlos Dauden <carlos.dauden@tecnativa.com>
# Copyright 2016-2017 LasLabs Inc. # 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). # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
from dateutil.relativedelta import relativedelta from dateutil.relativedelta import relativedelta
@ -98,7 +98,9 @@ class AccountAnalyticInvoiceLine(models.Model):
for line in self: for line in self:
if line.automatic_price: if line.automatic_price:
product = line.product_id.with_context( 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, pricelist=line.analytic_account_id.pricelist_id.id,
partner=line.analytic_account_id.partner_id.id, partner=line.analytic_account_id.partner_id.id,
date=line.env.context.get('old_date', fields.Date.today()), date=line.env.context.get('old_date', fields.Date.today()),

Loading…
Cancel
Save