private async Task SetInitialState() { TeamOverviewViewModel = new TeamOverviewViewModel(); DataContext = TeamOverviewViewModel; _apiUrl = Settings.Default.ApiUrl; await LoadTeams(); }
public IActionResult Teams(string id) { TeamOverviewViewModel vm = new TeamOverviewViewModel { Name = id }; var teamScores = _context.Team.Select(tt => new TeamScoreViewModel { Venue = tt.Venue.Name, Team = tt.Name, DoneCount = tt.Scores.Count(x => x.Status.ToLowerInvariant() == "done"), ApprovedCount = tt.Scores.Count(x => x.Status.ToLowerInvariant() == "approved"), CommitedCount = tt.Scores.Count(x => x.Status.ToLowerInvariant() == "committed"), Score = Convert.ToInt32(tt.Scores.Where(s => s.Status == "Done").Sum(s => ((s.Challenge.Points) * (s.HelpUsed ? 0.5m : 1m)))) } ); if (id != null) { teamScores = teamScores.Where(v => v.Venue.ToLower() == id.ToLower() && v.Score > 0); } vm.TeamScores = teamScores.Where(t => t.Score > 0).OrderByDescending(o => o.Score).ToList(); vm.Venues = _context.Venue.ToList(); return(View(vm)); }