Fix: Bank-Transaktionsstatus basiert auf tatsächlichem Buchungs-Bruttobetrag statt alloc_betrag-Vorausfüllwert

This commit is contained in:
fds2610-bot 2026-05-15 18:09:36 +02:00
parent 2034372210
commit c399a917ce

View file

@ -184,13 +184,13 @@ class BookingController
} }
// Bankbuchung verknüpfen wenn aus Bank-Kontext // Bankbuchung verknüpfen wenn aus Bank-Kontext
$bankTxId = (int)($data['bank_tx_id'] ?? 0); $bankTxId = (int)($data['bank_tx_id'] ?? 0);
$allocBetrag = round((float)str_replace(',', '.', $data['alloc_betrag'] ?? ''), 2);
if ($bankTxId > 0) { if ($bankTxId > 0) {
if ($allocBetrag <= 0) { // Tatsächlich gebuchten Bruttobetrag aus Buchungsdaten berechnen
$allocBetrag = BankTransaction::getRemainingBetrag($bankTxId) ?: abs((float)$data['betrag_netto'] ?? 0); $netto = abs((float)$data['betrag_netto']);
} $ustSatz = (float)($data['ust_satz'] ?? 0);
BankTransaction::linkBeleg($bankTxId, $belegId, $allocBetrag); $brutto = round($netto * (1 + $ustSatz / 100), 2);
BankTransaction::linkBeleg($bankTxId, $belegId, $brutto);
} }
if ($newAssetId !== null) { if ($newAssetId !== null) {