billing: Create is_free_trial function in CustomerPlan model.

This commit is contained in:
Vishnu KS
2020-11-11 18:32:47 +05:30
committed by Tim Abbott
parent 44d8368003
commit 06b5f9feae
3 changed files with 7 additions and 5 deletions

View File

@@ -136,7 +136,7 @@ def next_month(billing_cycle_anchor: datetime, dt: datetime) -> datetime:
def start_of_next_billing_cycle(plan: CustomerPlan, event_time: datetime) -> datetime:
if plan.status == CustomerPlan.FREE_TRIAL:
if plan.is_free_trial():
assert plan.next_invoice_date is not None # for mypy
return plan.next_invoice_date
@@ -358,7 +358,7 @@ def make_end_of_cycle_updates_if_needed(
licenses=last_ledger_entry.licenses_at_next_renewal,
licenses_at_next_renewal=last_ledger_entry.licenses_at_next_renewal,
)
if plan.status == CustomerPlan.FREE_TRIAL:
if plan.is_free_trial():
plan.invoiced_through = last_ledger_entry
assert plan.next_invoice_date is not None
plan.billing_cycle_anchor = plan.next_invoice_date.replace(microsecond=0)