private void ProcessHomeScoringRun(StatisticItemViewModel homeScoringRun, BaseMatchViewModel matchViewModel, bool isHomeMatch) { if (homeScoringRun.HasItem && isHomeMatch) { if ((matchViewModel.Team1Ft > 0)) { homeScoringRun.ItemCount++; } else { homeScoringRun.HasItem = false; } } }
private void ProcessAwayScoringRun(StatisticItemViewModel awayScoringRun, BaseMatchViewModel matchViewModel, bool isHomeMatch) { if (awayScoringRun.HasItem && !isHomeMatch) { if ((matchViewModel.Team2Ft > 0)) { awayScoringRun.ItemCount++; } else { awayScoringRun.HasItem = false; } } }
private void ProcessAwayUnbeatenRun(StatisticItemViewModel awayUnbeatenRun, MatchResult matchResultForTeam, bool isHomeMatch) { if (awayUnbeatenRun.HasItem && !isHomeMatch) { if (matchResultForTeam == MatchResult.Win || matchResultForTeam == MatchResult.Draw) { awayUnbeatenRun.ItemCount++; } else { awayUnbeatenRun.HasItem = false; } } }
private void ProcessScoringRun(StatisticItemViewModel scoringRun, BaseMatchViewModel matchViewModel, bool isHomeMatch) { if (scoringRun.HasItem) { if ((isHomeMatch && matchViewModel.Team1Ft > 0) || (!isHomeMatch && matchViewModel.Team2Ft > 0)) { scoringRun.ItemCount++; } else { scoringRun.HasItem = false; } } }
private void ProcessUnbeatenRun(StatisticItemViewModel unbeatenRun, MatchResult matchResultForTeam) { if (unbeatenRun.HasItem) { if (matchResultForTeam == MatchResult.Win || matchResultForTeam == MatchResult.Draw) { unbeatenRun.ItemCount++; } else { unbeatenRun.HasItem = false; } } }
private void ProcessHomeWinningRun(StatisticItemViewModel homeWinningRun, MatchResult matchResultForTeam, bool isHomeMatch) { if (homeWinningRun.HasItem && isHomeMatch) { if (matchResultForTeam == MatchResult.Win) { homeWinningRun.ItemCount++; } else { homeWinningRun.HasItem = false; } } }
private void ProcessWinningRun(StatisticItemViewModel winningRun, MatchResult matchResultForTeam) { if (winningRun.HasItem) { if (matchResultForTeam == MatchResult.Win) { winningRun.ItemCount++; } else { winningRun.HasItem = false; } } }
private async Task SendRequest() { var id = _statisticList.Count == 0 ? 1 : _statisticList.Count + 1; var statisticItem = new StatisticItemViewModel { Id = id, Url = UrlTextBox.Text }; _statisticList.Add(statisticItem); var processing = new RequestProcessing( new RequestHelper(), new StringToHttpMethodConverter(_methodsList.List) ); var request = new RequestModel { DateTime = DateTime.Now, Url = UrlTextBox.Text, Method = RequestBodyTextBox.SelectedText, Headers = RequestHeadersTextBox.Text.Split('\n'), Body = RequestBodyTextBox.Text }; await processing.SendRequest(request); var duration = (request.Response.TimeStamp - request.DateTime).TotalMilliseconds; statisticItem.Status = request.Response.HttpStatusCode; statisticItem.Duration = $"{duration} ms"; _statisticList[id - 1] = statisticItem; }
public void SetTeamStatistics() { var teamStatistics = new List <InformationItemViewModel>(); var selectedCampaignViewModel = SetSelectedCampaign(); selectedCampaignViewModel.SetCampaignStages(3); var resultMatchViewModels = selectedCampaignViewModel.SelectedCampaignStageViewModel.ResultMatchViewModels .Where(w => w.Team1Guid == HeaderKey || w.Team2Guid == HeaderKey) .OrderByDescending(o => o.MatchDate); var winningRun = new StatisticItemViewModel(); var homeWinningRun = new StatisticItemViewModel(); var awayWinningRun = new StatisticItemViewModel(); var unbeatenRun = new StatisticItemViewModel(); var homeUnbeatenRun = new StatisticItemViewModel(); var awayUnbeatenRun = new StatisticItemViewModel(); var scoringRun = new StatisticItemViewModel(); var homeScoringRun = new StatisticItemViewModel(); var awayScoringRun = new StatisticItemViewModel(); int losingRun = 0; bool hasLosingRun = true; int nonWinningRun = 0; bool hasNonWinningRun = true; int nonScoringRun = 0; bool hasNonScoringRun = true; foreach (var matchViewModel in resultMatchViewModels) { var isHomeMatch = matchViewModel.Team1Guid == HeaderKey; var matchResultForTeam = matchViewModel.GetMatchResult(HeaderKey); if (!winningRun.HasItem && !homeWinningRun.HasItem && !awayWinningRun.HasItem) { break; } ProcessWinningRun(winningRun, matchResultForTeam); ProcessHomeWinningRun(homeWinningRun, matchResultForTeam, isHomeMatch); ProcessAwayWinningRun(awayWinningRun, matchResultForTeam, isHomeMatch); ProcessUnbeatenRun(unbeatenRun, matchResultForTeam); ProcessHomeUnbeatenRun(homeUnbeatenRun, matchResultForTeam, isHomeMatch); ProcessAwayUnbeatenRun(awayUnbeatenRun, matchResultForTeam, isHomeMatch); ProcessScoringRun(scoringRun, matchViewModel, isHomeMatch); ProcessHomeScoringRun(homeScoringRun, matchViewModel, isHomeMatch); ProcessAwayScoringRun(awayScoringRun, matchViewModel, isHomeMatch); //Losing run if (hasLosingRun) { if (matchResultForTeam == MatchResult.Lose) { losingRun++; } else { hasLosingRun = false; } } //Unbeaten run if (hasNonWinningRun) { if (matchResultForTeam == MatchResult.Lose || matchResultForTeam == MatchResult.Draw) { nonWinningRun++; } else { hasNonWinningRun = false; } } //Non-scoring run if (hasNonScoringRun) { if ((isHomeMatch && matchViewModel.Team1Ft == 0) || (!isHomeMatch && matchViewModel.Team2Ft == 0)) { nonScoringRun++; } else { hasNonScoringRun = false; } } } var competitionName = selectedCampaignViewModel.Entity.Competition.ToViewModel(ViewDate).ToString(); if (winningRun.ItemCount > 1) { teamStatistics.Add(new InformationItemViewModel(string.Format("Have won the last {0} {1} matches.", winningRun.ItemCount, competitionName), DisplayType.Success)); } if (homeWinningRun.ItemCount > 1) { teamStatistics.Add(new InformationItemViewModel(string.Format("Have won the last {0} {1} matches at home.", homeWinningRun.ItemCount, competitionName), DisplayType.Success)); } if (awayWinningRun.ItemCount > 1) { teamStatistics.Add(new InformationItemViewModel(string.Format("Have won the last {0} {1} matches away.", awayWinningRun.ItemCount, competitionName), DisplayType.Success)); } if (unbeatenRun.ItemCount > 1) { teamStatistics.Add(new InformationItemViewModel(string.Format("Unbeaten for the last {0} {1} matches.", unbeatenRun.ItemCount, competitionName), DisplayType.Success)); } if (homeUnbeatenRun.ItemCount > 1) { teamStatistics.Add(new InformationItemViewModel(string.Format("Unbeaten for the last {0} {1} matches at home.", homeUnbeatenRun.ItemCount, competitionName), DisplayType.Success)); } if (awayUnbeatenRun.ItemCount > 1) { teamStatistics.Add(new InformationItemViewModel(string.Format("Unbeaten for the last {0} {1} matches away.", awayUnbeatenRun.ItemCount, competitionName), DisplayType.Success)); } if (scoringRun.ItemCount > 1) { teamStatistics.Add(new InformationItemViewModel(string.Format("Have scored in the last {0} {1} matches.", scoringRun.ItemCount, competitionName), DisplayType.Success)); } if (homeScoringRun.ItemCount > 1) { teamStatistics.Add(new InformationItemViewModel(string.Format("Have scored in the last {0} {1} matches at home.", homeScoringRun.ItemCount, competitionName), DisplayType.Success)); } if (awayScoringRun.ItemCount > 1) { teamStatistics.Add(new InformationItemViewModel(string.Format("Have scored in the last {0} {1} matches away.", awayScoringRun.ItemCount, competitionName), DisplayType.Success)); } if (losingRun > 1) { teamStatistics.Add(new InformationItemViewModel(string.Format("Have lost the last {0} {1} matches.", losingRun, competitionName), DisplayType.Danger)); } if (nonWinningRun > 1) { teamStatistics.Add(new InformationItemViewModel(string.Format("Haven't won for the last {0} {1} matches.", nonWinningRun, competitionName), DisplayType.Danger)); } if (nonScoringRun > 2) { teamStatistics.Add(new InformationItemViewModel(string.Format("Haven't scored in the last {0} {1} matches.", nonScoringRun, competitionName), DisplayType.Danger)); } TeamStatistics = teamStatistics; }