public virtual ActionResult General() { var model = new ResultsListViewModel() { Title = "Wyniki wg ankiet", Results = new List <ResultsViewModel>(), PearsonCorrelations = ResultsViewModel.Initialize(0, "Korelacja liniowa Pearsona", _resultsRepository.GetResultsPearsonCorrelations()), Legend = LegendViewModel.General() }; foreach (var questionnaire in _questionnairesRepository.GetList()) { model.Results.Add(ResultsViewModel.Initialize( questionnaireId: questionnaire.QuestionnaireId, questionnaireName: questionnaire.Name, results: _resultsRepository.GetResultsGeneral(questionnaire.QuestionnaireId))); } return(View(MVC.Application.Results.Views.Results, model)); }
public List <ResultsListViewModel> RetrieveSeasonMatches(int clubId, int seasonId) { var _matchProcessor = new MatchProcessor(); var matches = _matchProcessor.RetrieveSeasonMatchList(clubId, seasonId); List <ResultsListViewModel> results = new List <ResultsListViewModel>(); foreach (var item in matches) { ResultsListViewModel result = new ResultsListViewModel(); result.homeClub = new ClubDetailsViewModel(); result.guestClub = new ClubDetailsViewModel(); result.matchId = item.Id; result.matchDateTime = item.DateTime; result.homeGoals = item.FirstOrgScore; result.homeClub.name = item.FirstOrg.Name; result.guestGoals = item.SecondOrgScore; result.guestClub.name = item.SecondOrg.Name; results.Add(result); } return(results); }
public JsonResult GetSearchResults(string[] term, string url) { var searchResult = _resultsFetcher.Fetch(term); var scraper = new ResultsScraper(searchResult); var scraped = scraper.GetSearchResults(); var list = scraped .AsEnumerable() .Select((item, index) => new ResultViewModel() { Rank = index + 1, Url = item, Match = !string.IsNullOrWhiteSpace(url) && item.Contains(url), MatchClass = !string.IsNullOrWhiteSpace(url) && item.Contains(url) ? "success" : "primary" }); var viewModel = new ResultsListViewModel() { Summary = list.Count(x => x.Match) == 0 ? "none" : string.Join(",", list.Where(x => x.Match).Select(x => x.Rank)), Results = list }; return(Json(viewModel, JsonRequestBehavior.AllowGet)); }
public virtual ActionResult Details(int questionnaireId) { var results = _resultsRepository.GetResultDetails(questionnaireId); var model = new ResultsListViewModel() { Title = _questionnairesRepository.GetById(questionnaireId).Name, Results = new List <ResultsViewModel>(), Legend = LegendViewModel.Details() }; var questionsIds = results.Select(x => x.QuestionId).Distinct(); foreach (var questionId in questionsIds) { var question = _questionsRepository.GetById(questionId); var questionResults = new ResultsViewModel() { Id = questionId, Text = $"{question.OrderNumber}. {question.Text}", Options = _answersRepository.GetDescriptions(questionId), DictionaryGroups = new List <DictionaryGroupViewModel>() }; var dictionaryGroupNames = results.Select(x => x.DictionaryTypeName).Distinct(); foreach (var dictionaryType in dictionaryGroupNames) { var dictionaryGroup = new DictionaryGroupViewModel() { GroupName = dictionaryType, DictionaryItems = new List <DictionaryItemViewModel>() }; var dictionaryItemsIds = results.Where(x => x.DictionaryTypeName == dictionaryType).Select(x => x.BaseDictionaryId).Distinct(); foreach (var itemId in dictionaryItemsIds) { var dictionaryItem = new DictionaryItemViewModel() { ItemName = _dictionariesRepository.GetById(itemId).Value, Badge = results.First(x => x.BaseDictionaryId == itemId).IntervieweeCount.ToString(), Values = new List <ValueViewModel>() }; var answersIdList = results.Where(x => x.QuestionId == questionId).Select(x => x.AnswerId).Distinct(); foreach (var answerId in answersIdList) { var resultItem = results .Where(x => x.QuestionId == questionId) .Where(x => x.BaseDictionaryId == itemId) .Where(x => x.AnswerId == answerId) .FirstOrDefault(); var value = new ValueViewModel() { Badge = resultItem.AnswersCount.ToString(), Count = resultItem.AnswersCount, TotalCount = resultItem.TotalAnswersCount }; value.SetValueByPercentage(); dictionaryItem.Values.Add(value); } dictionaryGroup.DictionaryItems.Add(dictionaryItem); } questionResults.DictionaryGroups.Add(dictionaryGroup); } model.Results.Add(questionResults); } return(View(MVC.Application.Results.Views.Results, model)); }