190 lines
9.3 KiB
HTML
190 lines
9.3 KiB
HTML
{% extends 'base.html' %}
|
|
|
|
{% block title %}Rechnung {{ object.pk }}{% endblock %}
|
|
|
|
{% block content %}
|
|
<!-- Main Content -->
|
|
<main class="container mx-auto w-full px-4 my-8 flex-1">
|
|
<h1 class="page-title">Rechnung {{ object.pk }}</h1>
|
|
|
|
<form action="" enctype="multipart/form-data" method="POST" class="multiSectionForm max-w-2xl">
|
|
{% csrf_token %}
|
|
{% include "baseform/non_field_errors.html" %}
|
|
|
|
<section>
|
|
<div class="grid grid-cols-1 gap-x-6 gap-y-6 sm:grid-cols-6">
|
|
<div class="sm:col-span-3">
|
|
{% include "baseform/select.html" with field=form.status %}
|
|
</div>
|
|
</div>
|
|
</section>
|
|
<section>
|
|
<h2>Bankdaten</h2>
|
|
<small>Angaben zu den Bankdaten für die Rückerstattung des Rechnungsbetrags.</small>
|
|
|
|
<div class="grid grid-cols-1 gap-x-6 gap-y-6 sm:grid-cols-6">
|
|
<div class="sm:col-span-3">
|
|
{% include "baseform/select.html" with field=form.payer %}
|
|
</div>
|
|
|
|
{% if form.status.value == object.Status.INCOMPLETED %}
|
|
<div class="sm:col-span-4">
|
|
{% include "baseform/text.html" with field=form.name_text %}
|
|
</div>
|
|
<div class="sm:col-span-3">
|
|
{% include "baseform/text.html" with field=form.iban_text %}
|
|
</div>
|
|
<div class="sm:col-span-3">
|
|
{% include "baseform/text.html" with field=form.bic_text %}
|
|
</div>
|
|
<div class="col-span-full">
|
|
{% include "baseform/checkbox.html" with field=form.saving %}
|
|
</div>
|
|
{% else %}
|
|
{% if form.payer.value == object.Payer.ME %}
|
|
<div class="sm:col-span-4">
|
|
{% include "baseform/text.html" with field=form.name_text %}
|
|
</div>
|
|
<div class="sm:col-span-3">
|
|
{% include "baseform/text.html" with field=form.iban_text %}
|
|
</div>
|
|
<div class="sm:col-span-3">
|
|
{% include "baseform/text.html" with field=form.bic_text %}
|
|
</div>
|
|
{% endif %}
|
|
{% endif %}
|
|
</div>
|
|
</section>
|
|
<section>
|
|
<h2>Rechnungsdetails</h2>
|
|
<small>Details zur ursprünglichen bereits bezahlten Rechnung angeben.</small>
|
|
|
|
<div class="grid grid-cols-1 gap-x-6 gap-y-6 sm:grid-cols-6">
|
|
<div class="col-span-full">
|
|
{% include "baseform/textarea.html" with field=form.invoice %}
|
|
</div>
|
|
<div class="col-span-full">
|
|
{% include "baseform/text.html" with field=form.purpose %}
|
|
</div>
|
|
<div class="sm:col-span-3">
|
|
{% include "baseform/date.html" with field=form.date %}
|
|
</div>
|
|
<div class="sm:col-span-2">
|
|
<label>
|
|
<span class="text-gray-700 dark:text-gray-200">{{ form.amount.label }}</span>
|
|
{% if form.amount.errors %}
|
|
<div class="alert alert-danger">
|
|
<div class="alert-body">{{ form.amount.errors }}</div>
|
|
</div>
|
|
{% endif %}
|
|
<input
|
|
type="number"
|
|
name="amount"
|
|
value={{ form.amount.value }}
|
|
{% if form.amount.field.required %}required{% endif %}
|
|
{% if form.amount.field.disabled %}disabled{% endif %}
|
|
min="0.00"
|
|
step="0.01"
|
|
placeholder="123,99"
|
|
class="w-full"
|
|
>
|
|
</label>
|
|
</div>
|
|
|
|
{% if form.status.value == object.Status.INCOMPLETED %}
|
|
{% if form.file_field.value %}
|
|
<div class="col-span-full">
|
|
<label>
|
|
{% if object.only_digital %}
|
|
<span class="text-gray-700 dark:text-gray-200">Ich habe nur eine digitale Rechnung hochgeladen:</span>
|
|
{% else %}
|
|
<span class="text-gray-700 dark:text-gray-200">Hochgeladene Rechnung:</span>
|
|
{% endif %}
|
|
|
|
<a
|
|
href="{{ form.file_field.value.url }}"
|
|
target="_blank"
|
|
class="text-gray-700 dark:text-gray-200 block w-full mt-1 rounded-md border-gray-300 dark:border-none shadow-sm focus:border-none focus:ring focus:ring-blue-200 dark:focus:ring-sky-700 focus:ring-opacity-50"
|
|
>
|
|
<i class="fa-solid fa-file fa-fw text-red-800 dark:text-red-500 md:text-inherit group-hover:text-red-800 dark:group-hover:text-red-500"></i>
|
|
<span class="ml-2 sm:ml-1">{{ object.filename }}</span>
|
|
</a>
|
|
</label>
|
|
</div>
|
|
{% endif %}
|
|
|
|
<div class="col-span-full">
|
|
{% include "baseform/file.html" with field=form.file_field %}
|
|
</div>
|
|
<div class="col-span-full">
|
|
{% include "baseform/checkbox.html" with field=form.only_digital_new %}
|
|
</div>
|
|
{% else %}
|
|
{% if form.file_field.value %}
|
|
<div class="col-span-full">
|
|
<label>
|
|
<span class="text-gray-700 dark:text-gray-200">Hochgeladene Rechnung:</span>
|
|
<a
|
|
href="{{ form.file_field.value.url }}"
|
|
target="_blank"
|
|
class="text-gray-700 dark:text-gray-200 block w-full mt-1 rounded-md border-gray-300 dark:border-none shadow-sm focus:border-none focus:ring focus:ring-blue-200 dark:focus:ring-sky-700 focus:ring-opacity-50"
|
|
>
|
|
<i class="fa-solid fa-file fa-fw text-red-800 dark:text-red-500 md:text-inherit group-hover:text-red-800 dark:group-hover:text-red-500"></i>
|
|
<span class="ml-2 sm:ml-1">{{ object.filename }}</span>
|
|
</a>
|
|
</label>
|
|
</div>
|
|
|
|
{% if form.only_digital.value %}
|
|
<div class="col-span-full">
|
|
{% include "baseform/checkbox.html" with field=form.only_digital %}
|
|
</div>
|
|
{% endif %}
|
|
{% else %}
|
|
<div class="col-span-full">
|
|
<label>
|
|
<span class="text-gray-700 dark:text-gray-200">Keine digitale Rechnung eingereicht.</span>
|
|
</label>
|
|
</div>
|
|
{% endif %}
|
|
{% endif %}
|
|
</div>
|
|
</section>
|
|
<section>
|
|
<h2>Beschlusslage</h2>
|
|
<small>Informationen zur Beschlusslage dieser Rechnung.</small>
|
|
|
|
<div class="grid grid-cols-1 gap-x-6 gap-y-6 sm:grid-cols-6">
|
|
<div class="sm:col-span-3">
|
|
{% include "baseform/select.html" with field=form.affiliation %}
|
|
</div>
|
|
{% if form.status.value == object.Status.INCOMPLETED or form.resolution_text.value %}
|
|
<div class="sm:col-span-3">
|
|
{% include "baseform/text.html" with field=form.resolution_text %}
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
</section>
|
|
<section>
|
|
<h2>Kommentar</h2>
|
|
<small>Erfordert etwas zusätzlichen Erklärungsbedarf oder sollen nachträglich Informationen bearbeitet werden?</small>
|
|
|
|
<div class="grid grid-cols-1 gap-x-6 gap-y-6 sm:grid-cols-6">
|
|
<div class="col-span-full">
|
|
{% include "baseform/textarea.html" with field=form.comment %}
|
|
</div>
|
|
</div>
|
|
</section>
|
|
{% if form.status.value == object.Status.SUBMITTED or form.status.value == object.Status.INCOMPLETED %}
|
|
<section class="flex justify-end">
|
|
<button type="submit" class="btn btn-primary w-full sm:w-auto" value="Speichern">Änderung speichern</button>
|
|
</section>
|
|
{% else %}
|
|
<section class="flex justify-end">
|
|
<button type="button" class="btn btn-primary w-full sm:w-auto"><a href="{% url 'finance:bill_list' %}">Gehe zurück</a></button>
|
|
</section>
|
|
{% endif %}
|
|
</form>
|
|
</main>
|
|
{% endblock content %}
|