public async void OpenSeasonActionAsync() { var league = this; var matchs = await _openLigaService.LoadMatchesAsync(league.LeagueKey, league.SeasonKey); var matchViewModels = MatchViewModel.FromMatchs(matchs); var seasonViewModel = SeasonViewModel.From(matchViewModels, league.LeagueKey, league.SeasonKey); var tabViewModel = new TabItemViewModel(league.ShortDisplayName, league.ShortDisplayName, league.LongDisplayName, seasonViewModel, true); var message = new TabMessage { Action = TabMessageAction.Create, ViewModel = tabViewModel }; this.MessengerInstance.Send(message); }
public async Task CalulateForAsync(string league, string season) { var matches = await _openLigaService.LoadMatchesAsync(league, season); var teams = await _openLigaService.LoadTeamsAsync(league, season); var stats = _statsAndProbService.CalculateStats(matches).ToList(); var teamLkp = teams.ToLookup(x => x.TeamId); stats.Select(x => new StatsByTeamViewModel() { Team = TeamViewModel.FromTeam(teamLkp[x.TeamId].First()), Stats = x }).ForEach(StatsByTeams.Add); }