//Append [FromQuery] in signature below in case the data is sent differently using Querystring method i.e ?employeeId=1&Vacation..
        public async Task <IActionResult> GetEmployeeTrainingsAll(int vacationTypeId,
                                                                  DateTime dateFrom, DateTime dateTo)
        {
            HttpContext.VerifyUserHasAnyAcceptedScope(scopeRequiredByApi);
            _logger.LogInformation($"Performing GetEmployeeTrainingsAll operation having values" +
                                   $"vacationTypeId={vacationTypeId} + dateFrom={dateFrom} + dateTo={dateTo}");

            EmployeeTrainingsAllRequestDTO employeeTrainingsAllRequestDTO = new EmployeeTrainingsAllRequestDTO();

            employeeTrainingsAllRequestDTO.VacationTypeId = vacationTypeId;
            employeeTrainingsAllRequestDTO.DateFrom       = dateFrom;
            employeeTrainingsAllRequestDTO.DateTo         = dateTo;
            _logger.LogDebug("Payload employeeTrainingsAllRequestDTO =" + employeeTrainingsAllRequestDTO);
            var employeeTrainingResponseDTO = await _employeeTrainingsService.GetEmployeeTrainingsAll(employeeTrainingsAllRequestDTO);

            return(Ok(employeeTrainingResponseDTO));
        }
        public async Task <IEnumerable <EmployeeTrainingsResponseDTO> > GetEmployeeTrainingsAll(EmployeeTrainingsAllRequestDTO employeeTrainingsAllRequestDTO)
        {
            try
            {
                _logger.LogInformation("Performing Service operation GetEmployeeTrainingsAll");
                var employeeTrainingsEntity = _mapper.Map <EmployeeTrainingsEntity>(employeeTrainingsAllRequestDTO);
                _logger.LogInformation("Calling Repository operation GetEmployeeTrainingsAllAsync ");
                var listEmployeeTrainingsEntities = await _employeeTrainingsRepository.GetEmployeeTrainingsAllAsync(employeeTrainingsEntity);

                _logger.LogDebug("Payload returned List of all employees trainings in a given date range for a specific vacationTypeId" + listEmployeeTrainingsEntities);
                var employeeTrainingsResponseDTO = _mapper.Map <IEnumerable <EmployeeTrainingsResponseDTO> >(listEmployeeTrainingsEntities);
                return(employeeTrainingsResponseDTO);
            }
            catch (Exception ex)
            {
                _logger.LogError("Exception occured while retrieving employee All Trainings data " + ex);
                throw;
            }
        }