def create_invoices(self, date):
# monthly quotas
start = make_aware(datetime.datetime(date.year, date.month, 1), utc)
if date.month == 12:
year = date.year + 1
month = 1
else:
year = date.year
month = date.month + 1
end = make_aware(datetime.datetime(year, month, 1), utc)
for quota in self.filter(quota_type__periodicity=QuotaType.MONTHLY):
if not quota.quotainvoice_set.filter(date__range=(start, end)).exists():
print "quota necesita invoice:", quota.create_invoice(date)
# yearly quotas
start = make_aware(datetime.datetime(date.year, 1, 1), utc)
end = make_aware(datetime.datetime(date.year + 1, 1, 1), utc)
quotainvoices = []
for quota in self.filter(quota_type__periodicity=QuotaType.ANUAL):
if not quota.quotainvoice_set.filter(date__range=(start, end)).exists():
quotainvoice = quota.create_invoice(date)
quotainvoices.append(quotainvoice)
return quotainvoices
评论列表
文章目录