mirror of
https://github.com/Tria-plc/edr-platform.git
synced 2026-08-30 01:48:12 +00:00
changes
This commit is contained in:
@@ -3444,19 +3444,22 @@ export class BookingBatchService implements OnModuleInit {
|
||||
|
||||
/**
|
||||
* Physical wagons marshalled in the schedule's built train, or null when the
|
||||
* schedule has no built train (or the consist is still empty) and the legacy
|
||||
* locomotive-derived capacity must apply. This count is what caps a built
|
||||
* train's bookings: 50 wagons coupled → 50 wagon slots, no more.
|
||||
* schedule has NO built train and the legacy locomotive-derived capacity must
|
||||
* apply. This count is what caps a built train's bookings: 50 wagons coupled
|
||||
* → 50 wagon slots, no more.
|
||||
*
|
||||
* A built train with an EMPTY consist returns 0, NOT null: zero coupled
|
||||
* wagons means zero capacity. Folding that case into null used to hand an
|
||||
* un-consisted train the abstract locomotive budget, so an empty train
|
||||
* advertised its full maxWagons as free space and accepted bookings the
|
||||
* allocator could never place.
|
||||
*/
|
||||
private async builtTrainWagonCount(
|
||||
schedule: TrainSchedule,
|
||||
): Promise<number | null> {
|
||||
const trainId = schedule.trainSet?.train?.id;
|
||||
if (!trainId) return null;
|
||||
const count = await this.dataSource
|
||||
.getRepository(Wagon)
|
||||
.count({ where: { trainId } });
|
||||
return count > 0 ? count : null;
|
||||
return this.dataSource.getRepository(Wagon).count({ where: { trainId } });
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user