예제 #1
0
        public async Task <HttpResponseMessage> Search(HttpRequestMessage request, CandidateSearchInputDTO value)
        {
            try
            {
                var candidates = await candidateElasticService
                                 .Find(value.Skip, value.Amount, value.SearchModel, value.SortModel).ConfigureAwait(false);

                var candidateDTO = Mapper.Map <IEnumerable <CandidateElasticModel>, ICollection <CandidatePreviewDTO> >(candidates);

                return(request.CreateResponse(HttpStatusCode.OK, candidateDTO));
            }
            catch (Exception ex)
            {
                logger.Error(ex, JsonConvert.SerializeObject(value));

                return(request.CreateResponse(HttpStatusCode.InternalServerError));
            }
        }
예제 #2
0
        public async Task <HttpResponseMessage> GetExcelByCandidates(HttpRequestMessage request, CandidateSearchInputDTO value)
        {
            try
            {
                var response = Request.CreateResponse();

                response.Headers.AcceptRanges.Add("bytes");

                response.StatusCode = HttpStatusCode.OK;

                var excel = await fileService.GetExcelByCandidates(value.Skip, value.Amount,
                                                                   value.SearchModel, value.SortModel);

                response.Content = excel;

                return(response);
            }
            catch (Exception ex)
            {
                logger.Error(ex, JsonConvert.SerializeObject(value));

                return(request.CreateResponse(HttpStatusCode.InternalServerError));
            }
        }