def customer_quarterly_usage(subscription_start, start=None, end=None):
if start is None:
start = subscription_start
# regardless of start, the quarterly iterator must use subscription_start
# for the sake of enumerating.
periods = iter_quarters(start=subscription_start,
end=end or timezone.now())
for q, usage in enumerate(usage_for_periods(periods), 1):
if usage['period']['end'] <= start:
continue
usage.update(
labels=dict(
year_quarter=label_year_quarter_q(q),
year=label_year_q(q),
),
)
yield usage
评论列表
文章目录