49 lines
1.5 KiB
C#
49 lines
1.5 KiB
C#
|
using System.Collections.Generic;
|
|||
|
using System.Linq;
|
|||
|
using YourNamespace.Entities;
|
|||
|
using YourNamespace.Repositories;
|
|||
|
|
|||
|
namespace YourNamespace.Repositories.Implementations
|
|||
|
{
|
|||
|
public class TicketRepository : ITicketRepository
|
|||
|
{
|
|||
|
private readonly List<Ticket> _tickets = new List<Ticket>();
|
|||
|
private int _nextId = 1;
|
|||
|
|
|||
|
public IEnumerable<Ticket> ReadTickets()
|
|||
|
{
|
|||
|
return _tickets;
|
|||
|
}
|
|||
|
|
|||
|
public Ticket ReadTicketById(int id)
|
|||
|
{
|
|||
|
return _tickets.FirstOrDefault(t => t.Id == id);
|
|||
|
}
|
|||
|
|
|||
|
public void CreateTicket(Ticket ticket)
|
|||
|
{
|
|||
|
var newTicket = Ticket.CreateEntity(_nextId++, ticket.PassengerId, ticket.FlightId, ticket.DateBuy, ticket.TicketPrice);
|
|||
|
_tickets.Add(newTicket);
|
|||
|
}
|
|||
|
|
|||
|
public void UpdateTicket(Ticket ticket)
|
|||
|
{
|
|||
|
var existingTicket = _tickets.FirstOrDefault(t => t.Id == ticket.Id);
|
|||
|
if (existingTicket != null)
|
|||
|
{
|
|||
|
var updatedTicket = Ticket.CreateEntity(existingTicket.Id, ticket.PassengerId, ticket.FlightId, ticket.DateBuy, ticket.TicketPrice);
|
|||
|
_tickets.Remove(existingTicket);
|
|||
|
_tickets.Add(updatedTicket);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
public void DeleteTicket(int id)
|
|||
|
{
|
|||
|
var ticketToRemove = _tickets.FirstOrDefault(t => t.Id == id);
|
|||
|
if (ticketToRemove != null)
|
|||
|
{
|
|||
|
_tickets.Remove(ticketToRemove);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|