Skip to content

Commit

Permalink
[FIX] membership_extension: Don't return early
Browse files Browse the repository at this point in the history
Don't return before consuming whole recordset.
  • Loading branch information
pedrobaeza committed Jan 8, 2024
1 parent ecbd5cd commit 27ea112
Showing 1 changed file with 12 additions and 10 deletions.
22 changes: 12 additions & 10 deletions membership_extension/models/membership_line.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,16 +43,18 @@ def _onchange_membership_date(self):
self.date_to = date_to

def _compute_state(self):
for line in self:
if isinstance(line.id, models.NewId) or not line.account_invoice_id:
line.state = line.state or "none"
elif (
line.account_invoice_id.state == "posted"
and line.account_invoice_id.payment_state == "reversed"
):
line.state = "canceled"
else:
return super(MembershipLine, line)._compute_state()
no_invoice_lines = self.filtered(
lambda line: isinstance(line.id, models.NewId)
or not line.account_invoice_id
)
cancelled_lines = self.filtered(
lambda line: line.account_invoice_id.state == "posted"
and line.account_invoice_id.payment_state == "reversed"
)
cancelled_lines.state = "cancelled"
for line in no_invoice_lines:
line.state = line.state or "none"
return super(MembershipLine, self - no_invoice_lines)._compute_state()

# Empty method _inverse_state
def _inverse_state(self):
Expand Down

0 comments on commit 27ea112

Please sign in to comment.