Example #1
0
 partial void DeleteLoserPoolPicks(LoserPoolPicks instance);
Example #2
0
 partial void UpdateLoserPoolPicks(LoserPoolPicks instance);
Example #3
0
 partial void InsertLoserPoolPicks(LoserPoolPicks instance);
Example #4
0
		private void detach_LoserPoolPicks(LoserPoolPicks entity)
		{
			this.SendPropertyChanging();
			entity.Owners = null;
		}
Example #5
0
		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;
            }
        }