public async Task SendHolidayReports() { var currentTime = _timeService.GetCurrentTime(); _logger.LogInformation("SendHolidayReports() was initiated at " + currentTime); if (currentTime.Month != currentTime.AddDays(1).Month) { try { var allHolidays = await _holidaysRepository.GetAll(); var currentMonthHolidays = allHolidays.Where(h => h.Status == HolidayStatus.AdminConfirmed && h.FromInclusive.Year == currentTime.Year && h.FromInclusive.Month == currentTime.Month ).ToList(); var holidaysWithClients = await _holidayInfoService.GetClientsAndHolidays(currentMonthHolidays); var admins = await _employeeRepository.GetAllAdmins(); await _emailService.SendThisMonthsHolidayInfo(admins, holidaysWithClients); } catch (Exception exception) { _logger.LogInformation(exception.ToString() + " occurred in SendHolidayReports() at " + currentTime); } } _logger.LogInformation("SendHolidayReports() ended at " + currentTime); }
public async Task <ICollection <GetHolidayDto> > GetAll() { var holidays = await _holidaysRepository.GetAll(); var holidaysDto = _mapper.Map <GetHolidayDto[]>(holidays).OrderByDescending(h => h.RequestCreatedDate).ToList(); foreach (var holidayDto in holidaysDto) { holidayDto.ConfirmerFullName = await GetConfirmerFullName(holidayDto); } return(holidaysDto); }
public async Task <HealthCheckResult> CheckHealthAsync(HealthCheckContext context, CancellationToken cancellationToken = default) { var holidays = await _holidaysRepository.GetAll(); var clients = await _clientRepository.GetAll(); return(HealthCheckResult.Healthy()); }
public override Task <HolidaysResponse> GetAll(Empty request, ServerCallContext context) { HolidaysResponse response = new() { Status = new BaseResponse { Code = Code.Success, ErrorMessage = string.Empty } }; try { IQueryable <Holiday> holidays = _holidaysRepository.GetAll(); foreach (Holiday holiday in holidays) { response.Data.Add(ToRpcModel(holiday)); } LogData logData = new() { CallSide = nameof(HolidaysService), CallerMethodName = nameof(GetAll), CreatedOn = _dateTimeUtil.GetCurrentDateTime(), Request = request, Response = response }; _logger.AddLog(logData); } catch (Exception ex) { LogData logData = new() { CallSide = nameof(HolidaysService), CallerMethodName = nameof(GetAll), CreatedOn = _dateTimeUtil.GetCurrentDateTime(), Request = request, Response = ex }; _logger.AddErrorLog(logData); response.Status.Code = Code.UnknownError; response.Status.ErrorMessage = "An error occured while loading holidays data"; } return(Task.FromResult(response)); }