feat: add trip preference overrides with precedence resolution

This commit is contained in:
Bastian Wagner
2026-08-17 15:38:03 +02:00
parent ee7ec94ea0
commit dedb3fff40
12 changed files with 373 additions and 0 deletions

View File

@@ -0,0 +1,24 @@
import { Injectable } from '@nestjs/common';
import { TripPreferenceOverridesRepository } from './trip-preference-overrides.repository';
import type { PreferenceSubject, TripPreferenceOverride } from './trip.types';
@Injectable()
export class TripPreferenceOverridesService {
constructor(private readonly repository: TripPreferenceOverridesRepository) {}
listOverrides(tripId: string): Promise<TripPreferenceOverride[]> {
return this.repository.listByTrip(tripId);
}
upsertOverride(
tripId: string,
subject: PreferenceSubject,
overrides: Record<string, unknown>,
): Promise<TripPreferenceOverride> {
return this.repository.upsert(tripId, subject, overrides);
}
removeOverride(tripId: string, overrideId: string): Promise<void> {
return this.repository.remove(tripId, overrideId);
}
}