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
$bankTxId = (int)($data['bank_tx_id'] ?? 0);
$allocBetrag = round((float)str_replace(',', '.', $data['alloc_betrag'] ?? ''), 2);
$bankTxId = (int)($data['bank_tx_id'] ?? 0);
if ($bankTxId > 0) {
if ($allocBetrag <= 0) {
$allocBetrag = BankTransaction::getRemainingBetrag($bankTxId) ?: abs((float)$data['betrag_netto'] ?? 0);
}
BankTransaction::linkBeleg($bankTxId, $belegId, $allocBetrag);
// Tatsächlich gebuchten Bruttobetrag aus Buchungsdaten berechnen
$netto = abs((float)$data['betrag_netto']);
$ustSatz = (float)($data['ust_satz'] ?? 0);
$brutto = round($netto * (1 + $ustSatz / 100), 2);
BankTransaction::linkBeleg($bankTxId, $belegId, $brutto);
}
if ($newAssetId !== null) {