Пример #1
0
        public IEnumerable <VacancySearchResult> Handle(GetVacancySearchResultsQuery query)
        {
            var searchResult = _vacancySearcher.Handle(query);

            var view = searchResult.Vacancies.ToList().Select(v => new VacancySearchResult
            {
                Id            = v.Id,
                City          = v.City,
                Title         = v.Title,
                VacancySkills = v.Skills.Select(s => s.Name),
                TravelTime    = searchResult.Distances.FirstOrDefault(d => d.Zipcode == v.Zipcode.Value)?.TravelDistanceInMinutes,
                AgeInDays     = (DateTime.Now - v.CreatedOn).Days,
                CompanyName   = v.Employer.Name,
                Description   = v.Description,
                ThinkLevel    = v.ThinkLevel.Name
            }).ToList();

            CalculateMatchPercentages(searchResult.SplittedTalents, view);

            return(view);
        }
Пример #2
0
        public IHttpActionResult Search([FromUri] GetVacancySearchResultsQuery query)
        {
            var result = _queryProcessor.Handle(query);

            return(Ok(new { result }));
        }