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