Get periods from line items in invoice detail also
This commit is contained in:
parent
c5f72792d2
commit
c3842a5ed5
2 changed files with 25 additions and 3 deletions
|
@ -391,6 +391,28 @@ class MonthlyHostingBill(AssignPermissionsMixin, models.Model):
|
|||
logger.debug("VM_IDS=".format(','.join(vm_ids)))
|
||||
return return_value
|
||||
|
||||
def get_period_start(self):
|
||||
"""
|
||||
Return the period start of the invoice for the line items
|
||||
:return:
|
||||
"""
|
||||
items = HostingBillLineItem.objects.filter(monthly_hosting_bill=self)
|
||||
if len(items) > 0:
|
||||
return items[0].period_start
|
||||
else:
|
||||
return self.period_start
|
||||
|
||||
def get_period_end(self):
|
||||
"""
|
||||
Return the period end of the invoice for the line items
|
||||
:return:
|
||||
"""
|
||||
items = HostingBillLineItem.objects.filter(monthly_hosting_bill=self)
|
||||
if len(items) > 0:
|
||||
return items[0].period_end
|
||||
else:
|
||||
return self.period_end
|
||||
|
||||
|
||||
class HostingBillLineItem(AssignPermissionsMixin, models.Model):
|
||||
"""
|
||||
|
|
|
@ -1230,7 +1230,7 @@ class InvoiceDetailView(LoginRequiredMixin, DetailView):
|
|||
context_object_name = "invoice"
|
||||
login_url = reverse_lazy('hosting:login')
|
||||
permission_required = ['view_monthlyhostingbill']
|
||||
model = MonthlyHostingBill
|
||||
# model = MonthlyHostingBill
|
||||
|
||||
def get_object(self, queryset=None):
|
||||
invoice_id = self.kwargs.get('invoice_id')
|
||||
|
@ -1316,8 +1316,8 @@ class InvoiceDetailView(LoginRequiredMixin, DetailView):
|
|||
return context
|
||||
|
||||
# add context params from monthly hosting bill
|
||||
context['period_start'] = obj.period_start
|
||||
context['period_end'] = obj.period_end
|
||||
context['period_start'] = obj.get_period_start()
|
||||
context['period_end'] = obj.get_period_end()
|
||||
context['paid_at'] = obj.paid_at
|
||||
context['total_in_chf'] = obj.total_in_chf()
|
||||
context['invoice_number'] = obj.invoice_number
|
||||
|
|
Loading…
Reference in a new issue