49 lines
1.6 KiB
C#
49 lines
1.6 KiB
C#
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using YourNamespace.Entities;
|
|
using YourNamespace.Repositories;
|
|
|
|
namespace YourNamespace.Repositories.Implementations
|
|
{
|
|
public class PassengerRepository : IPassengerRepository
|
|
{
|
|
private readonly List<Passenger> _passengers = new List<Passenger>();
|
|
private int _nextId = 1;
|
|
|
|
public IEnumerable<Passenger> ReadPassengers()
|
|
{
|
|
return _passengers;
|
|
}
|
|
|
|
public Passenger ReadPassengerById(int id)
|
|
{
|
|
return _passengers.FirstOrDefault(p => p.Id == id);
|
|
}
|
|
|
|
public void CreatePassenger(Passenger passenger)
|
|
{
|
|
var newPassenger = Passenger.CreateEntity(_nextId++, passenger.FirstName, passenger.LastName, passenger.PassportNumber);
|
|
_passengers.Add(newPassenger);
|
|
}
|
|
|
|
public void UpdatePassenger(Passenger passenger)
|
|
{
|
|
var existingPassenger = _passengers.FirstOrDefault(p => p.Id == passenger.Id);
|
|
if (existingPassenger != null)
|
|
{
|
|
var updatedPassenger = Passenger.CreateEntity(existingPassenger.Id, passenger.FirstName, passenger.LastName, passenger.PassportNumber);
|
|
_passengers.Remove(existingPassenger);
|
|
_passengers.Add(updatedPassenger);
|
|
}
|
|
}
|
|
|
|
public void DeletePassenger(int id)
|
|
{
|
|
var passengerToRemove = _passengers.FirstOrDefault(p => p.Id == id);
|
|
if (passengerToRemove != null)
|
|
{
|
|
_passengers.Remove(passengerToRemove);
|
|
}
|
|
}
|
|
}
|
|
} |