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 Oct 17, 2024
1 parent 5893f5e commit b2a7df5
Showing 1 changed file with 14 additions and 11 deletions.
25 changes: 14 additions & 11 deletions membership_extension/models/membership_line.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,17 +51,20 @@ def _onchange_membership_date(self):
self.date_to = date_to

def _compute_state(self):
# pylint: disable=missing-return
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 = "canceled"
for line in no_invoice_lines:
line.state = line.state or "none"
return super(
MembershipLine, self - no_invoice_lines - cancelled_lines
)._compute_state()

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

0 comments on commit b2a7df5

Please sign in to comment.