From 6b84f22a91f5b9ae1c605c3fbfa1a387a0d40e13 Mon Sep 17 00:00:00 2001 From: Stephanos A Date: Wed, 15 Jul 2026 10:48:36 +0300 Subject: [PATCH] Fix seat class name assignment to ensure consistency with fare engine resolution --- .../edr-passenger-api/src/modules/search/search.service.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/apps/edr-passenger-api/src/modules/search/search.service.ts b/apps/edr-passenger-api/src/modules/search/search.service.ts index 9f9fb7bdc..340d9fac9 100644 --- a/apps/edr-passenger-api/src/modules/search/search.service.ts +++ b/apps/edr-passenger-api/src/modules/search/search.service.ts @@ -704,7 +704,12 @@ export class SearchService { scheduleId: schedule.id, }); return { - seatClassName: fare.seatClassName, + // Use the input seat class name (sc.name) so it always matches what + // buildCoachTypeDetails looks up via coachType.seatClasses. The fare + // engine may resolve a nationality-specific variant (nationalitySeatClass) + // whose name differs from sc.name, which would cause the class to be + // silently dropped from coachTypes and show N/A on the results page. + seatClassName: sc.name, baseFareMinor: fare.totalMinor, displayCurrency: fare.billingCurrency as Currency, displayAmountMinor: fare.totalInBillingCurrency,