fix ticket parsing

This commit is contained in:
Traines 2025-10-21 20:37:50 +00:00
parent a1ab95c249
commit bdbf4f3761

View file

@ -26,7 +26,9 @@ const parseTickets = (ctx, j) => {
.flatMap(p => [
p.einfacheFahrt?.standard?.reisePosition,
p.einfacheFahrt?.upsellEntgelt?.einfacheFahrt?.reisePosition,
].filter(p => p)
p.einfacheFahrt?.upsellAngebote?.map(a => a.upsellEntgelt?.einfacheFahrt?.reisePosition),
].flatMap(p => p)
.filter(p => p)
.map(p => {
p.reisePosition.teilpreis = Boolean(p.teilpreisInformationen?.length);
return p.reisePosition;
@ -44,7 +46,7 @@ const parseTickets = (ctx, j) => {
amount: Math.round(s.preis?.betrag * 100),
currency: s.preis?.waehrung,
},
firstClass: s.klasse == 'KLASSE_1' || s.premium || Boolean(s.nutzungsInformationen?.find(i => i.klasse == 'KLASSE_1')),
firstClass: s.klasse == 'KLASSE_1' || Boolean(s.nutzungsInformationen?.find(i => i.klasse == 'KLASSE_1')),
partialFare: s.teilpreis,
};
if (s.teilpreis) {