public Contingent GetContingent(Guid tournamentId, string province) { var contingent = Contingents.FirstOrDefault(x => x.Tournament == tournamentId && x.Province == province); if (contingent == null) { return(null); } contingent.Teams.ForEach(team => { if (team.CoachId.HasValue) { team.Coach = Participants[team.CoachId.Value]; } team.Bowlers = Participants.Where(x => x.Value.TeamId == team.Id) .Select(x => x.Value) .OrderBy(x => x.QualifyingPosition) .ToList(); }); contingent.Guests = Participants.Where(x => x.Value.ContingentId == contingent.Id) .Select(x => x.Value) .Except(contingent.Teams.SelectMany(x => x.Bowlers.Concat <Participant>(new[] { x.Coach }))) .ToList(); return(contingent); }
public void Handle(ParticipantDesignatedAsAlternate e) { var team = Contingents.SelectMany(x => x.Teams) .Single(x => x.Id == e.TeamId); team.Alternate = e.Id; }
public void Handle(CoachAssignedToTeam e) { var team = Contingents.SelectMany(x => x.Teams) .Single(x => x.Id == e.TeamId); team.CoachId = e.Id; }
public void Handle(ParticipantAssignedToContingent e) { var participant = Participants.Single(x => x.Id == e.Id); var contingent = Contingents.Single(x => x.Id == e.ContingentId); participant.ContingentId = contingent.Id; participant.Province = contingent.Province; }
public void Handle(ContingentCreated e) { Contingents.Add(new Contingent { Id = e.Id, Province = e.Province }); }
public List <Team> GetDivision(Guid tournamentId, string division) { var contingents = Contingents.Where(x => x.TournamentId == tournamentId); var teams = Teams .Where(x => contingents.Any(c => c.Id == x.ContingentId) && x.Division == division) .ToList(); return(teams); }
public void Handle(CoachAssignedToTeam e) { var contingentId = TeamContingents[e.TeamId]; var contingent = Contingents.Single(x => x.Id == contingentId); var participant = Participants.Single(x => x.Id == e.Id); participant.ContingentId = contingent.Id; participant.Province = contingent.Province; }
public List <ReservationQueries.Participant> GetParticipants(string year, string province) { var contingents = Contingents.Where(x => x.Year == year); var participants = Participants .Where(x => contingents.Any(c => c.Id == x.ContingentId) && x.Province == province) .ToList(); return(participants); }
public List <Participant> GetParticipants(string year) { var contingents = Contingents.Where(x => x.Year == year); var participants = Participants .Where(x => contingents.Any(c => c.Id == x.ContingentId)) .ToList(); return(participants); }
public void Handle(ContingentAssignedToTournament e) { var contingent = Contingents.Single(x => x.Id == e.Id); var tournament = Tournaments.SingleOrDefault(x => x.Id == e.TournamentId) ?? new Tournament { Id = e.TournamentId, Year = "2014" }; contingent.TournamentId = tournament.Id; contingent.Year = tournament.Year; }
public List <Participant> GetAlternates(string year) { var contingents = Contingents.Where(x => x.Year == year); var alternates = Participants .Where(x => x.IsAlternate) .Where(x => contingents.Any(c => c.Id == x.ContingentId)) .ToList(); return(alternates); }
public void Handle(TeamCreated e) { var contingent = Contingents.Single(x => x.Id == e.Id); Teams.Add(new Team { Id = e.TeamId, TeamId = e.TeamId.ToString(), ContingentId = e.Id, Province = contingent.Province, Division = e.Name, }); }
public void Handle(CoachAssignedToTeam e) { var team = Teams.Single(x => x.Id == e.TeamId); var contingent = Contingents.Single(x => x.Id == team.ContingentId); var participant = Participants.Single(x => x.Id == e.Id); participant.IsCoach = true; participant.TeamId = team.Id; participant.TeamName = team.Name; participant.ContingentId = team.ContingentId; participant.Province = contingent.Province; }
public List <Participant> GetProfiles(int year) { if (!Tournaments.Any(x => x.Value == year.ToString())) { return(null); } var tournament = Tournaments.Single(x => x.Value == year.ToString()); var contingents = Contingents.Where(x => x.Value.TournamentId == tournament.Key); var participants = Participants.Where(x => x.IsSingle && contingents.Any(c => c.Key == x.ContingentId)) .ToList(); return(participants); }
public void Handle(ParticipantAssignedToTeam e) { var team = Teams.Single(x => x.Id == e.TeamId); var contingent = Contingents.Single(x => x.Id == team.ContingentId); var currentTeammates = Participants.Where(x => x.TeamId == e.TeamId).ToList() ?? new List <Participant>(); var participant = Participants.Single(x => x.Id == e.Id); participant.TeamId = team.Id; participant.TeamName = team.Name; participant.ContingentId = team.ContingentId; participant.Province = contingent.Province; participant.QualifyingPosition = currentTeammates.Count + 1; }
public void Handle(TeamCreated e) { var contingent = Contingents.Single(x => x.Id == e.Id); contingent.Teams.Add(new Team { Id = e.TeamId, Name = e.Name, SizeLimit = e.SizeLimit, Gender = e.Gender, RequiresShirtSize = e.RequiresShirtSize, RequiresCoach = e.RequiresCoach, RequiresAverage = e.RequiresAverage, RequiresBio = e.RequiresBio, RequiresGender = e.RequiresGender, IncludesSinglesRep = e.IncludesSinglesRep, }); }
public void Handle(TeamGameCompleted e) { var isPOASingles = e.IsPOA && e.Division.Contains("Single"); Guid actualTeamId = isPOASingles ? Singles[e.TeamId] : e.TeamId; var team = Teams.SingleOrDefault(x => x.Id == actualTeamId); if (team == null) { var t = Teams.Single(x => x.Id == e.TeamId); var contingent = Contingents.Single(x => x.Id == t.ContingentId); team = new Team { Id = actualTeamId, TeamId = actualTeamId.ToString(), ContingentId = contingent.Id, Province = contingent.Province, Division = e.Division, }; Teams.Add(team); } //Remove any previous entries as they could re-enter the scores team.Matches.RemoveAll(x => x.Id == e.Id); team.Matches.Add(new Match { Id = e.Id, IsPOA = e.IsPOA, Number = e.Number, Opponent = e.Opponent, POA = e.POA, Points = e.Points, Score = e.Score, TotalPoints = e.TotalPoints, WinLossTie = e.IsPOA ? (e.POA > e.OpponentPOA ? "W" : e.POA < e.OpponentPOA ? "L" : "T") : (e.Score > e.OpponentScore ? "W" : e.Score < e.OpponentScore ? "L" : "T"), }); }
public void Handle(TeamRemoved e) { var contingent = Contingents.Single(x => x.Id == e.Id); contingent.Teams.RemoveAll(x => x.Id == e.TeamId); }
public void Handle(ContingentAssignedToTournament e) { var contingent = Contingents.Single(x => x.Id == e.Id); contingent.Tournament = e.TournamentId; }
public void Handle(ContingentCreated e) { Contingents.Add(e.Id, e.Province); }