feat: finalize voucher handling and discount display in summary and overview

This commit is contained in:
Björn Fromme
2026-03-16 11:59:12 +01:00
parent 2e40cbc7c7
commit 230c53875f
15 changed files with 762 additions and 46 deletions
@@ -106,11 +106,22 @@ class BookingResponseParser extends AbstractParser
$finalPaymentDate = $finalPaymentNode->attr('termin');
}
// Parse purchase vouchers (kaufgutschein elements)
$appliedPurchaseVouchers = [];
$voucherNodes = $paymentNode->filterXPath('//kaufgutschein');
$voucherNodes->each(function (Crawler $voucherNode) use (&$appliedPurchaseVouchers): void {
$appliedPurchaseVouchers[] = [
'nummer' => $voucherNode->attr('nummer') ?? '',
'betrag' => $this->stringToFloat($voucherNode->attr('betrag')),
];
});
return new PaymentTerms(
depositAmount: $depositAmount,
depositDate: $depositDate,
finalPaymentAmount: $finalPaymentAmount,
finalPaymentDate: $finalPaymentDate
finalPaymentDate: $finalPaymentDate,
appliedPurchaseVouchers: $appliedPurchaseVouchers,
);
}
}