Add IBAN and Verwendungszweck columns to support list and fix chart growing bug

- Enhanced 'Alle Unterstützungen' view with IBAN and Verwendungszweck columns for better payment tracking
- Updated export functions to handle both legacy 'selected_fields' and new 'fields' parameters
- Added IBAN and Verwendungszweck to default export field selections
- Improved destinataer list UI by adding Status column and removing obsolete study proof field
- Fixed infinite growing animation bug in 'Größen der Grundstücke (Top 30)' chart by replacing Chart.js with CSS-based implementation
- Removed Bootstrap h-100 class conflicts that caused chart resize loops
This commit is contained in:
2025-09-24 22:13:27 +02:00
parent d3ed13dda0
commit b00cf62d87
4 changed files with 106 additions and 53 deletions

View File

@@ -117,7 +117,7 @@
<label class="form-check-label" for="field_empfaenger_name">Empfänger Name</label>
</div>
<div class="form-check form-check-sm">
<input class="form-check-input field-checkbox" type="checkbox" name="fields" value="verwendungszweck" id="field_verwendungszweck">
<input class="form-check-input field-checkbox" type="checkbox" name="fields" value="verwendungszweck" id="field_verwendungszweck" checked>
<label class="form-check-label" for="field_verwendungszweck">Verwendungszweck</label>
</div>
</div>
@@ -275,6 +275,8 @@
<th>Destinatär</th>
<th>Betrag</th>
<th>Fällig am</th>
<th>IBAN</th>
<th>Verwendungszweck</th>
<th>Konto</th>
<th>Status</th>
<th>Beschreibung</th>
@@ -296,6 +298,20 @@
</td>
<td>€{{ unterstuetzung.betrag|floatformat:2 }}</td>
<td>{{ unterstuetzung.faellig_am|date:"d.m.Y" }}</td>
<td>
{% if unterstuetzung.empfaenger_iban %}
<code class="text-dark">{{ unterstuetzung.empfaenger_iban }}</code>
{% else %}
<span class="text-muted">-</span>
{% endif %}
</td>
<td>
{% if unterstuetzung.verwendungszweck %}
{{ unterstuetzung.verwendungszweck|truncatechars:30 }}
{% else %}
<span class="text-muted">-</span>
{% endif %}
</td>
<td>
<span class="badge bg-secondary">{{ unterstuetzung.konto }}</span>
</td>
@@ -353,8 +369,8 @@ function selectDefaultFields() {
// Check default fields
const defaultFields = [
'destinataer_name', 'betrag', 'faellig_am', 'status',
'empfaenger_iban', 'empfaenger_name', 'beschreibung'
'destinataer_name', 'betrag', 'faellig_am', 'empfaenger_iban', 'verwendungszweck',
'status', 'empfaenger_name', 'beschreibung'
];
defaultFields.forEach(fieldName => {