Add a button for creating and instantly voiding invoices

Handy dandy for when you have loads of cancelled events, like say, a pandemic
This commit is contained in:
2020-08-24 12:25:24 +01:00
parent d3f55523da
commit a6ac55baaf
3 changed files with 16 additions and 6 deletions

View File

@@ -201,6 +201,11 @@ class InvoiceEvent(generic.View):
invoice.invoice_date = datetime.date.today()
messages.success(self.request, 'Invoice created successfully')
if kwargs.get('void'):
invoice.void = not invoice.void
invoice.save()
messages.warning(self.request, 'Invoice voided')
return HttpResponseRedirect(reverse_lazy('invoice_detail', kwargs={'pk': invoice.pk}))

View File

@@ -69,12 +69,15 @@
{% endif %}
</td>
<td class="text-right">
<a href="{% url 'invoice_event' event.pk %}"
class="btn btn-primary"
data-toggle="tooltip"
title="'Invoice' this event - click this when paperwork has been sent to treasury">
<i class="fas fa-pound-sign"></i> Paperwork Sent
</a>
<div class="btn-group">
<a href="{% url 'invoice_event' event.pk %}"
class="btn btn-primary">
<span class="fas fa-pound-sign"></span> Create Invoice
</a>
<a href="{% url 'invoice_event_void' event.pk %}"
class="btn btn-warning">& Void
</a>
</div>
</td>
</tr>
{% endfor %}

View File

@@ -122,6 +122,8 @@ urlpatterns = [
path('event/<int:pk>/invoice/', permission_required_with_403('RIGS.add_invoice')(finance.InvoiceEvent.as_view()),
name='invoice_event'),
path('event/<int:pk>/invoice/void', permission_required_with_403('RIGS.add_invoice')(finance.InvoiceEvent.as_view()),
name='invoice_event_void', kwargs={'void': True}),
path('invoice/<int:pk>/', permission_required_with_403('RIGS.view_invoice')(finance.InvoiceDetail.as_view()),
name='invoice_detail'),