Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

ScheduleService.cs 1.3KB

123456789101112131415161718192021222324252627282930313233
  1. using Diligent.WebAPI.Contracts.DTOs.Schedule;
  2. namespace Diligent.WebAPI.Business.Services
  3. {
  4. public class ScheduleService : IScheduleService
  5. {
  6. private readonly DatabaseContext _context;
  7. private readonly IMapper _mapper;
  8. private readonly ILogger<ScheduleService> _logger;
  9. public ScheduleService(DatabaseContext context, IMapper mapper,ILogger<ScheduleService> logger)
  10. {
  11. _context = context;
  12. _mapper = mapper;
  13. _logger = logger;
  14. }
  15. public async Task<List<ScheduleViewDto>> GetScheduleForCertainPeriod(int month, int year)
  16. {
  17. _logger.LogInformation("Start getting schedule for certain period");
  18. _logger.LogInformation("Getting data from DB and filter");
  19. var selectionProcessess = await _context.SelectionProcesses
  20. .Include(c => c.Applicant)
  21. .Include(c => c.SelectionLevel)
  22. .Where(k => k.Date != null && k.Date.Value.Month == month && k.Date.Value.Year == year)
  23. .ToListAsync();
  24. _logger.LogInformation($"Got {selectionProcessess.Count} selection processes");
  25. _logger.LogInformation($"Return schedule for certain period");
  26. return _mapper.Map<List<ScheduleViewDto>>(selectionProcessess);
  27. }
  28. }
  29. }