From 06a1c8ae9ec3438b75857b0901ba1cc8b36fc8bc Mon Sep 17 00:00:00 2001 From: sbejaoui Date: Fri, 30 Nov 2018 17:16:55 +0100 Subject: [PATCH] [FIX] - include date_end in the period if the product is_autorenew --- product_contract/models/sale_order_line.py | 15 ++++++++++----- product_contract/tests/test_sale_order.py | 2 +- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/product_contract/models/sale_order_line.py b/product_contract/models/sale_order_line.py index 836f99378..af93f9bf0 100644 --- a/product_contract/models/sale_order_line.py +++ b/product_contract/models/sale_order_line.py @@ -79,6 +79,7 @@ class SaleOrderLine(models.Model): rec.product_id.auto_renew_rule_type, rec.product_id.auto_renew_interval, ) + - relativedelta(days=1) ) @api.onchange('date_start') @@ -88,11 +89,15 @@ class SaleOrderLine(models.Model): if not rec.date_start: rec.date_end = False else: - rec.date_end = rec.date_start + self.env[ - 'account.analytic.invoice.line' - ].get_relative_delta( - rec.product_id.auto_renew_rule_type, - rec.product_id.auto_renew_interval, + rec.date_end = ( + rec.date_start + + self.env[ + 'account.analytic.invoice.line' + ].get_relative_delta( + rec.product_id.auto_renew_rule_type, + rec.product_id.auto_renew_interval, + ) + - relativedelta(days=1) ) @api.multi diff --git a/product_contract/tests/test_sale_order.py b/product_contract/tests/test_sale_order.py index 73715d120..721059998 100644 --- a/product_contract/tests/test_sale_order.py +++ b/product_contract/tests/test_sale_order.py @@ -129,7 +129,7 @@ class TestSaleOrder(TransactionCase): self.order_line1.recurring_invoicing_type, self.product1.recurring_invoicing_type, ) - self.assertEqual(self.order_line1.date_end, Date.to_date('2019-01-01')) + self.assertEqual(self.order_line1.date_end, Date.to_date('2018-12-31')) def test_check_contract_sale_partner(self): """Can't link order line to a partner contract different then the