diff --git a/models/scop_cotisation_cg.py b/models/scop_cotisation_cg.py index e1c16c00291cd041ed8dae17461bc275601fa1bf..d485fd0bde213f94ef7ac61acbd830ba98883a7c 100644 --- a/models/scop_cotisation_cg.py +++ b/models/scop_cotisation_cg.py @@ -183,14 +183,18 @@ class ScopCotisation(models.Model): ] ) - @api.depends("invoice_ids", "invoice_ids.state") + @api.depends("invoice_ids", "invoice_ids.state", "invoice_ids.payment_state") def _compute_state(self): for cotiz in self: if len(cotiz.invoice_ids) == 0: cotiz.state = "new" elif ( len(cotiz.invoice_ids) - == len(cotiz.invoice_ids.filtered(lambda i: i.state == "posted")) + == len( + cotiz.invoice_ids.filtered( + lambda i: i.state == "posted" and i.payment_state == "paid" + ) + ) and cotiz.state != "end" ): cotiz.state = "end"