Abrechungslauf geändert

This commit is contained in:
cay 2026-03-27 12:16:54 +00:00
parent ce4577874b
commit 46f5cd9720
2 changed files with 35 additions and 14 deletions

View File

@ -1144,3 +1144,12 @@ body:not(.admin-body) > * {
font-size: 1rem; font-weight: 700; color: var(--text-muted); font-size: 1rem; font-weight: 700; color: var(--text-muted);
margin-bottom: 12px; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 12px; text-transform: uppercase; letter-spacing: 0.5px;
} }
.billing-past-info {
background: #f9fafb;
border: 1.5px solid var(--border);
border-radius: 14px;
padding: 14px 24px;
font-size: 0.92rem;
color: var(--text-muted);
}

View File

@ -73,18 +73,25 @@
<!-- Aktionen --> <!-- Aktionen -->
<div class="billing-actions"> <div class="billing-actions">
<% if (invoices.length === 0) { %> <% if (invoices.length === 0) { %>
<!-- Noch kein Lauf → Vorschau + Lauf starten --> <% if (period >= currentPeriod) { %>
<div class="billing-preview-box"> <!-- Aktueller/zukünftiger Monat → Lauf starten -->
<div class="preview-info"> <div class="billing-preview-box">
<strong>Bereit für Abrechnungslauf <%= periodLabel %></strong> <div class="preview-info">
<span><%= eligible.length %> Mitglieder · Voraussichtlich <%= Number(preview_total).toFixed(2).replace('.', ',') %> €</span> <strong>Bereit für Abrechnungslauf <%= periodLabel %></strong>
<span><%= eligible.length %> Mitglieder · Voraussichtlich <%= Number(preview_total).toFixed(2).replace('.', ',') %> €</span>
</div>
<form method="POST" action="/admin/billing/run"
onsubmit="return confirm('Abrechnungslauf für <%= periodLabel %> starten? Dieser Vorgang kann nicht rückgängig gemacht werden.')">
<input type="hidden" name="period" value="<%= period %>">
<button type="submit" class="btn btn-primary">▶ Abrechnungslauf starten</button>
</form>
</div> </div>
<form method="POST" action="/admin/billing/run" <% } else { %>
onsubmit="return confirm('Abrechnungslauf für <%= periodLabel %> starten? Dieser Vorgang kann nicht rückgängig gemacht werden.')"> <!-- Vergangener Monat ohne Rechnungen -->
<input type="hidden" name="period" value="<%= period %>"> <div class="billing-past-info">
<button type="submit" class="btn btn-primary">▶ Abrechnungslauf starten</button> <span> Für <strong><%= periodLabel %></strong> wurde kein Abrechnungslauf durchgeführt.</span>
</form> </div>
</div> <% } %>
<% } else { %> <% } else { %>
<!-- Lauf bereits durchgeführt → Export & Aktionen --> <!-- Lauf bereits durchgeführt → Export & Aktionen -->
<div class="billing-run-done"> <div class="billing-run-done">
@ -212,9 +219,14 @@
<td><%= Number(run.total_amount).toFixed(2).replace('.', ',') %> €</td> <td><%= Number(run.total_amount).toFixed(2).replace('.', ',') %> €</td>
<td><%= run.created_by || '' %></td> <td><%= run.created_by || '' %></td>
<td> <td>
<a href="/admin/billing?period=<%= run.period %>" class="btn btn-sm btn-outline"> <div style="display:flex;gap:6px">
Anzeigen <a href="/admin/billing?period=<%= run.period %>" class="btn btn-sm btn-outline">
</a> Anzeigen
</a>
<a href="/admin/billing/export/csv?period=<%= run.period %>" class="btn btn-sm btn-outline" title="SEPA CSV">
📥 CSV
</a>
</div>
</td> </td>
</tr> </tr>
<% }) %> <% }) %>