Project Initialization

This commit is contained in:
Muluhabt
2026-05-12 15:17:16 +03:00
parent 33fa742e8a
commit 3b8b6979db
259 changed files with 15962 additions and 0 deletions

View File

@@ -0,0 +1,29 @@
import { Injectable, NotFoundException } from '@nestjs/common';
import { CreateTrainDto } from './dto/create-train.dto';
import { Train } from './entities/train.entity';
import { TrainsRepository } from './trains.repository';
@Injectable()
export class TrainsService {
constructor(private readonly trainsRepository: TrainsRepository) {}
/** Register a new train in the fleet. */
create(dto: CreateTrainDto): Promise<Train> {
return this.trainsRepository.create(dto);
}
/** List every active train. */
findAll(): Promise<Train[]> {
return this.trainsRepository.findAll({ order: { code: 'ASC' } });
}
/** Get a single train by ID. */
async findById(id: string): Promise<Train> {
const train = await this.trainsRepository.findById(id);
if (!train) {
throw new NotFoundException(`Train ${id} not found`);
}
return train;
}
}