partial void DeleteLoserPoolPicks(LoserPoolPicks instance);
partial void UpdateLoserPoolPicks(LoserPoolPicks instance);
partial void InsertLoserPoolPicks(LoserPoolPicks instance);
private void detach_LoserPoolPicks(LoserPoolPicks entity) { this.SendPropertyChanging(); entity.Owners = null; }
private void attach_LoserPoolPicks(LoserPoolPicks entity) { this.SendPropertyChanging(); entity.SeasonWeeks = this; }
/// <summary> /// Save an owner's roster & tiebreaker for a given seasonweek /// </summary> /// <param name="uniqueId">The owner code (uniqueId) for the owner.</param> /// <param name="seasonWeekId">The season week id representing the season week.</param> /// <param name="gameId">The game id representing the tiebreaker game.</param> /// <param name="homeScore">The home score for the tiebreaker game.</param> /// <param name="awayScore">The away score for the tiebreaker game.</param> /// <param name="playerList">The list of player ids to save as the roster.</param> public bool SaveOwnerTeams(string uniqueId, int seasonWeekId, int gameId, int homeScore, int awayScore, int loserTeam1, int loserTeam2, string playerList) { try { var players = playerList.Split(',').Select(p => Convert.ToInt32(p)); var playerDBCount = context.Players.Where(p => players.Contains(p.PlayerId)).Count(); var ownerExists = context.Owners.Where(o => o.UniqueId == uniqueId).FirstOrDefault(); var seasonWeek = context.SeasonWeeks.Where(sw => sw.SeasonWeekId == seasonWeekId).FirstOrDefault(); var tieBreakerGame = context.Games.Where(g => g.GameId == gameId).First(); if (ownerExists == null || seasonWeek == null || tieBreakerGame == null || players.Count() != playerDBCount) { return false; } else { foreach (var lte in context.LoserPoolPicks.Where(lpp => lpp.OwnerId == ownerExists.OwnerId && lpp.SeasonWeekId == seasonWeek.SeasonWeekId)) { context.LoserPoolPicks.DeleteOnSubmit(lte); } NPGGFFL.Data.LoserPoolPicks loserPoolPick1 = new NPGGFFL.Data.LoserPoolPicks { OwnerId = ownerExists.OwnerId, TeamId = loserTeam1, SeasonWeekId = seasonWeek.SeasonWeekId, IsLocked = false, IsBye = (loserTeam1 < 0 ? true: false) }; context.LoserPoolPicks.InsertOnSubmit(loserPoolPick1); NPGGFFL.Data.LoserPoolPicks loserPoolPick2 = new NPGGFFL.Data.LoserPoolPicks { OwnerId = ownerExists.OwnerId, TeamId = loserTeam2, SeasonWeekId = seasonWeek.SeasonWeekId, IsLocked = false, IsBye = (loserTeam2 < 0 ? true : false) }; context.LoserPoolPicks.InsertOnSubmit(loserPoolPick2); var tieBreakerExists = context.OwnerTieBreakers.Where(otb => otb.OwnerId == ownerExists.OwnerId && otb.GameId == gameId).FirstOrDefault(); if (tieBreakerExists != null) { tieBreakerExists.HomeScore = homeScore; tieBreakerExists.AwayScore = awayScore; } else { NPGGFFL.Data.OwnerTieBreaker tieBreaker = new NPGGFFL.Data.OwnerTieBreaker { OwnerId = ownerExists.OwnerId, GameId = gameId, HomeScore = homeScore, AwayScore = awayScore, IsLocked = false }; context.OwnerTieBreakers.InsertOnSubmit(tieBreaker); } var ownerTeams = context.OwnerTeams.Where(ot => ot.OwnerId == ownerExists.OwnerId && ot.SeasonWeekId == seasonWeekId); foreach (var ot in ownerTeams) { context.OwnerTeams.DeleteOnSubmit(ot); } foreach (var player in players) { OwnerTeams ownerPlayer = new OwnerTeams { OwnerId = ownerExists.OwnerId, SeasonWeekId = seasonWeek.SeasonWeekId, PlayerId = player, IsLocked = false }; context.OwnerTeams.InsertOnSubmit(ownerPlayer); } context.SubmitChanges(); return true; } } catch { return false; } }