37 lines
1.0 KiB
C#
37 lines
1.0 KiB
C#
using Microsoft.Extensions.Logging;
|
|
using Services.Numbers;
|
|
using Services.Tickets.Models;
|
|
|
|
namespace Services.Tickets;
|
|
|
|
internal class TicketService : ITicketService
|
|
{
|
|
private readonly ILogger<TicketService> _logger;
|
|
private readonly ITicketRepository _ticketRepository;
|
|
private readonly INumbersService _numbersService;
|
|
|
|
public TicketService(ILogger<TicketService> logger, ITicketRepository ticketRepository, INumbersService numbersService)
|
|
{
|
|
_logger = logger;
|
|
_ticketRepository = ticketRepository;
|
|
_numbersService = numbersService;
|
|
}
|
|
|
|
public Task<List<LotteryTicket>> GetAllTickets()
|
|
{
|
|
return _ticketRepository.GetAllTickets();
|
|
}
|
|
|
|
public async Task<LotteryTicket> GetNewTicket()
|
|
{
|
|
LotteryTicket ticket = new()
|
|
{
|
|
Numbers = _numbersService.GetNumbers(6)
|
|
};
|
|
var id = await _ticketRepository.AddNewTicket(ticket);
|
|
ticket.Id = id;
|
|
//_logger.LogInformation("New ticket created");
|
|
return ticket;
|
|
}
|
|
}
|