mirror of
https://github.com/OCA/contract.git
synced 2025-02-13 17:57:24 +02:00
[FIX] - as date_start is required, constraints on it become useless
[FIX] - for finished contract _get_lines_to_invoice should return False
This commit is contained in:
committed by
Francisco Ivan Anton Prieto
parent
29168df7cc
commit
d2706c2e09
@@ -297,9 +297,11 @@ class AccountAnalyticAccount(models.Model):
|
|||||||
:return: contract lines (account.analytic.invoice.line recordset)
|
:return: contract lines (account.analytic.invoice.line recordset)
|
||||||
"""
|
"""
|
||||||
self.ensure_one()
|
self.ensure_one()
|
||||||
|
if date_ref:
|
||||||
return self.recurring_invoice_line_ids.filtered(
|
return self.recurring_invoice_line_ids.filtered(
|
||||||
lambda l: not l.is_canceled and l.recurring_next_date
|
lambda l: not l.is_canceled and l.recurring_next_date
|
||||||
and l.recurring_next_date <= date_ref)
|
and l.recurring_next_date <= date_ref)
|
||||||
|
return False
|
||||||
|
|
||||||
@api.multi
|
@api.multi
|
||||||
def _prepare_recurring_invoices_values(self, date_ref=False):
|
def _prepare_recurring_invoices_values(self, date_ref=False):
|
||||||
|
|||||||
@@ -282,15 +282,6 @@ class AccountAnalyticInvoiceLine(models.Model):
|
|||||||
% rec.name
|
% rec.name
|
||||||
)
|
)
|
||||||
|
|
||||||
@api.constrains('date_start')
|
|
||||||
def _check_date_start_recurring_invoices(self):
|
|
||||||
for line in self.filtered('contract_id.recurring_invoices'):
|
|
||||||
if not line.date_start:
|
|
||||||
raise ValidationError(
|
|
||||||
_("You must supply a start date for contract line '%s'")
|
|
||||||
% line.name
|
|
||||||
)
|
|
||||||
|
|
||||||
@api.constrains('date_start', 'date_end')
|
@api.constrains('date_start', 'date_end')
|
||||||
def _check_start_end_dates(self):
|
def _check_start_end_dates(self):
|
||||||
for line in self.filtered('date_end'):
|
for line in self.filtered('date_end'):
|
||||||
|
|||||||
@@ -417,11 +417,6 @@ class TestContract(TestContractBase):
|
|||||||
self.contract.write({'recurring_invoices': True})
|
self.contract.write({'recurring_invoices': True})
|
||||||
self.acct_line.write({'recurring_next_date': False})
|
self.acct_line.write({'recurring_next_date': False})
|
||||||
|
|
||||||
def test_check_date_start_recurring_invoices(self):
|
|
||||||
with self.assertRaises(ValidationError):
|
|
||||||
self.contract.write({'recurring_invoices': True})
|
|
||||||
self.acct_line.write({'date_start': False})
|
|
||||||
|
|
||||||
def test_onchange_contract_template_id(self):
|
def test_onchange_contract_template_id(self):
|
||||||
"""It should change the contract values to match the template."""
|
"""It should change the contract values to match the template."""
|
||||||
self.contract.contract_template_id = self.template
|
self.contract.contract_template_id = self.template
|
||||||
|
|||||||
Reference in New Issue
Block a user