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