Ejemplo n.º 1
0
        public IGameInningTeam GetCurrentGameInningTeam(Guid gameId)
        {
            IGameInningTeam gameInningTeam = null;

            using (var context = new Data.DartballContext()) {
                var items = (from g in context.Games
                             join gi in context.GameInnings on g.GameId equals gi.GameId
                             join gt in context.GameTeams on g.GameId equals gt.GameId
                             join git in context.GameInningTeams on gi.GameInningId equals git.GameInningId
                             where g.GameId == gameId.ToString() &&
                             !g.DeleteDate.HasValue &&
                             !gi.DeleteDate.HasValue &&
                             !gt.DeleteDate.HasValue &&
                             !git.DeleteDate.HasValue
                             orderby gi.InningNumber descending
                             orderby gt.TeamBattingSequence descending
                             select git).Take(1);

                if (items != null && items.Count() > 0)
                {
                    gameInningTeam = Mapper.Map <GameInningTeamDto>(items.FirstOrDefault());
                }
            }

            return(gameInningTeam);
        }
Ejemplo n.º 2
0
        public ChangeResult Update(List <ITeam> teams)
        {
            var result = Validate(teams);

            if (result.IsSuccess)
            {
                using (var context = new Data.DartballContext())
                {
                    foreach (var team in teams)
                    {
                        context.Teams.Update(new Domain.Team()
                        {
                            TeamId     = team.TeamId.ToString(),
                            LeagueId   = team.LeagueId.ToString(),
                            Name       = Helper.CleanString(team.Name),
                            Password   = Helper.CleanString(team.Password), //TODO: add encryption
                            Handicap   = team.Handicap,
                            ShouldSync = team.ShouldSync ? 1 : 0,
                            DeleteDate = team.DeleteDate
                        });
                    }
                    context.SaveChanges();
                }
            }
            return(result);
        }
Ejemplo n.º 3
0
        public ChangeResult Update(List <IGameInningTeam> gameInningTeams)
        {
            var result = Validate(gameInningTeams, isAddNew: false);

            if (result.IsSuccess)
            {
                using (var context = new Data.DartballContext())
                {
                    foreach (var item in gameInningTeams)
                    {
                        context.GameInningTeams.Update(new Domain.GameInningTeam()
                        {
                            GameInningTeamId = item.GameInningTeamId.ToString(),
                            GameInningId     = item.GameInningId.ToString(),
                            GameTeamId       = item.GameTeamId.ToString(),
                            Score            = item.Score,
                            Outs             = item.Outs,
                            IsRunnerOnFirst  = item.IsRunnerOnFirst ? 1 : 0,
                            IsRunnerOnSecond = item.IsRunnerOnSecond ? 1 : 0,
                            IsRunnerOnThird  = item.IsRunnerOnThird ? 1 : 0,
                            DeleteDate       = item.DeleteDate
                        });
                    }
                    context.SaveChanges();
                }
            }
            return(result);
        }
Ejemplo n.º 4
0
        public IGameInningTeamBatter GetCurrentGameInningTeamBatter(Guid gameId)
        {
            IGameInningTeamBatter gameInningTeamBatter = null;

            using (var context = new Data.DartballContext())
            {
                var currentInning = context.GameInnings
                                    .Where(x => x.GameId == gameId.ToString() && !x.DeleteDate.HasValue)
                                    .OrderByDescending(x => x.InningNumber).FirstOrDefault();
                if (currentInning != null)
                {
                    var gameTeamsInReverseSequence = context.GameTeams
                                                     .Where(x => x.GameId == gameId.ToString() && !x.DeleteDate.HasValue)
                                                     .OrderByDescending(x => x.TeamBattingSequence).ToList();

                    var inningTeamsBatters = context.GameInningTeamBatters
                                             .Where(x => x.GameInningTeam.GameInningId == currentInning.GameInningId && !x.DeleteDate.HasValue && !x.DeleteDate.HasValue)
                                             .Include(x => x.GameInningTeam)
                                             .OrderByDescending(x => x.Sequence).ToList();

                    foreach (var gt in gameTeamsInReverseSequence)
                    {
                        var teamBatters = inningTeamsBatters.Where(x => x.GameInningTeam.GameTeamId == gt.GameTeamId).ToList();
                        if (teamBatters.Count > 0)
                        {
                            gameInningTeamBatter = Mapper.Map <GameInningTeamBatterDto>(teamBatters.FirstOrDefault());
                            break;
                        }
                    }
                }
            }

            return(gameInningTeamBatter);
        }
Ejemplo n.º 5
0
        public ChangeResult Update(List <IPlayer> players)
        {
            var result = Validate(players);

            if (result.IsSuccess)
            {
                using (var context = new Data.DartballContext())
                {
                    foreach (var player in players)
                    {
                        context.Players.Update(new Domain.Player()
                        {
                            PlayerId     = player.PlayerId.ToString(),
                            Name         = Helper.CleanString(player.Name),
                            LastName     = Helper.CleanString(player.LastName),
                            EmailAddress = Helper.CleanString(player.EmailAddress),
                            UserName     = Helper.CleanString(player.UserName),
                            Password     = Helper.CleanString(player.Password), //TODO: add encryption
                            ShouldSync   = player.ShouldSync ? 1 : 0,
                            DeleteDate   = player.DeleteDate
                        });
                    }
                    context.SaveChanges();
                }
            }
            return(result);
        }
Ejemplo n.º 6
0
        public ILeague GetGenericLeague()
        {
            ILeague league = null;

            string leagueName = "Quick Play";

            using (var context = new Data.DartballContext()) {
                var item = context.Leagues.FirstOrDefault(x => x.Name == leagueName);
                if (item == null)
                {
                    LeagueDto dto = new LeagueDto()
                    {
                        Name     = leagueName,
                        Password = "******"
                    };
                    AddNew(dto);

                    item   = context.Leagues.FirstOrDefault(x => x.Name == leagueName);
                    league = Mapper.Map <LeagueDto>(item);
                }
                else
                {
                    league = Mapper.Map <LeagueDto>(item);
                }
            }

            return(league);
        }
Ejemplo n.º 7
0
        public ChangeResult Update(List <IGameInningTeamBatter> gameInningTeamBatters)
        {
            var result = Validate(gameInningTeamBatters, isAddNew: false);

            if (result.IsSuccess)
            {
                using (var context = new Data.DartballContext())
                {
                    foreach (var item in gameInningTeamBatters)
                    {
                        context.GameInningTeamBatters.Update(new Domain.GameInningTeamBatter()
                        {
                            GameInningTeamBatterId = item.GameInningTeamBatterId.ToString(),
                            GameInningTeamId       = item.GameInningTeamId.ToString(),
                            PlayerId        = item.PlayerId.ToString(),
                            Sequence        = item.Sequence,
                            EventType       = item.EventType,
                            TargetEventType = item.TargetEventType,
                            RBIs            = item.RBIs,
                            DeleteDate      = item.DeleteDate
                        });
                    }
                    context.SaveChanges();
                }
            }
            return(result);
        }
Ejemplo n.º 8
0
        public List <IGameTeam> GetGameTeams(Guid gameId)
        {
            List <IGameTeam> gameTeams = new List <IGameTeam>();

            using (var context = new Data.DartballContext())
            {
                var items = context.GameTeams.Where(x => x.GameId == gameId.ToString() && !x.DeleteDate.HasValue).ToList();
                foreach (var item in items)
                {
                    gameTeams.Add(Mapper.Map <GameTeamDto>(item));
                }
            }
            return(gameTeams);
        }
Ejemplo n.º 9
0
        public List <IGameInning> GetAllGameInnings()
        {
            List <IGameInning> gameInnings = new List <IGameInning>();

            using (var context = new Data.DartballContext())
            {
                var items = context.GameInnings.ToList().Where(x => !x.DeleteDate.HasValue);
                foreach (var item in items)
                {
                    gameInnings.Add(Mapper.Map <GameInningDto>(item));
                }
            }
            return(gameInnings);
        }
Ejemplo n.º 10
0
        public List <IPlayer> GetPlayers()
        {
            List <IPlayer> players = new List <IPlayer>();

            using (var context = new Data.DartballContext())
            {
                var items = context.Players.Where(x => !x.DeleteDate.HasValue).ToList();
                foreach (var item in items)
                {
                    players.Add(Mapper.Map <PlayerDto>(item));
                }
            }
            return(players);
        }
Ejemplo n.º 11
0
        public List <IPlayerTeam> GetPlayerTeams(Guid playerId)
        {
            List <IPlayerTeam> playerTeams = new List <IPlayerTeam>();

            using (var context = new Data.DartballContext()) {
                var items = context.PlayerTeams.Where(x => x.PlayerId == playerId.ToString()).ToList();
                foreach (var item in items)
                {
                    playerTeams.Add(Mapper.Map <PlayerTeamDto>(item));
                }
            }

            return(playerTeams);
        }
Ejemplo n.º 12
0
        public IGame GetGame(Guid gameId)
        {
            IGame game = null;

            using (var context = new Data.DartballContext())
            {
                var item = context.Games.FirstOrDefault(x => x.GameId == gameId.ToString());
                if (item != null)
                {
                    game = Mapper.Map <GameDto>(item);
                }
            }

            return(game);
        }
Ejemplo n.º 13
0
        public List <IGame> GetLeagueGames(Guid leagueId)
        {
            List <IGame> games = new List <IGame>();

            using (var context = new Data.DartballContext())
            {
                var items = context.Games.Where(x => x.LeagueId == leagueId.ToString() && !x.DeleteDate.HasValue).ToList();
                foreach (var item in items)
                {
                    games.Add(Mapper.Map <GameDto>(item));
                }
            }

            return(games);
        }
Ejemplo n.º 14
0
        public List <ITeam> GetTeams()
        {
            List <ITeam> teams = new List <ITeam>();

            using (var context = new Data.DartballContext())
            {
                var items = context.Teams.Where(x => !x.DeleteDate.HasValue).ToList();
                foreach (var item in items)
                {
                    teams.Add(Mapper.Map <TeamDto>(item));
                }
            }

            return(teams);
        }
Ejemplo n.º 15
0
        public IPlayerTeam GetPlayerTeam(Guid teamId, Guid playerId)
        {
            IPlayerTeam playerTeam = null;

            using (var context = new Data.DartballContext())
            {
                var item = context.PlayerTeams.FirstOrDefault(x => x.TeamId == teamId.ToString() && x.PlayerId == playerId.ToString());
                if (item != null)
                {
                    playerTeam = Mapper.Map <PlayerTeamDto>(item);
                }
            }

            return(playerTeam);
        }
Ejemplo n.º 16
0
        public ITeamPlayerLineup GetTeamPlayerLineupItem(Guid teamId, Guid playerId)
        {
            ITeamPlayerLineup teamPlayerLineup = null;

            using (var context = new Data.DartballContext())
            {
                var item = context.TeamPlayerLineups.FirstOrDefault(x => x.TeamId == teamId.ToString() && x.PlayerId == playerId.ToString());
                if (item != null)
                {
                    teamPlayerLineup = Mapper.Map <TeamPlayerLineupDto>(item);
                }
            }

            return(teamPlayerLineup);
        }
Ejemplo n.º 17
0
        public IGameInning GetGameInning(Guid gameId, int inningNumber)
        {
            IGameInning gameInning = null;

            using (var context = new Data.DartballContext())
            {
                var item = context.GameInnings.FirstOrDefault(x => x.GameId == gameId.ToString() && x.InningNumber == inningNumber);
                if (item != null)
                {
                    gameInning = Mapper.Map <GameInningDto>(item);
                }
            }

            return(gameInning);
        }
Ejemplo n.º 18
0
        public IGameInningTeamBatter GetGameInningTeamBatter(Guid gameInningTeamId, int sequence)
        {
            IGameInningTeamBatter gameInningTeamBatter = null;

            using (var context = new Data.DartballContext())
            {
                var item = context.GameInningTeamBatters.FirstOrDefault(x => x.GameInningTeamId == gameInningTeamId.ToString() && x.Sequence == sequence);
                if (item != null)
                {
                    gameInningTeamBatter = Mapper.Map <GameInningTeamBatterDto>(item);
                }
            }

            return(gameInningTeamBatter);
        }
Ejemplo n.º 19
0
        public List <ILeague> GetLeagues()
        {
            List <ILeague> leagues = new List <ILeague>();

            using (var context = new Data.DartballContext())
            {
                var items = context.Leagues.ToList().Where(x => !x.DeleteDate.HasValue);
                foreach (var item in items)
                {
                    leagues.Add(Mapper.Map <LeagueDto>(item));
                }
            }

            return(leagues);
        }
Ejemplo n.º 20
0
        public List <ITeamPlayerLineup> GetTeamLineup(Guid teamId)
        {
            List <ITeamPlayerLineup> teamPlayerLineups = new List <ITeamPlayerLineup>();

            using (var context = new Data.DartballContext())
            {
                var items = context.TeamPlayerLineups.Where(x => x.TeamId == teamId.ToString() && !x.DeleteDate.HasValue).OrderBy(x => x.BattingOrder).ToList();
                foreach (var item in items)
                {
                    teamPlayerLineups.Add(Mapper.Map <TeamPlayerLineupDto>(item));
                }
            }

            return(teamPlayerLineups);
        }
Ejemplo n.º 21
0
        public ILeague GetLeague(Guid leagueId)
        {
            ILeague league = null;

            using (var context = new Data.DartballContext())
            {
                var item = context.Leagues.FirstOrDefault(x => x.LeagueId == leagueId.ToString());
                if (item != null)
                {
                    league = Mapper.Map <LeagueDto>(item);
                }
            }

            return(league);
        }
Ejemplo n.º 22
0
        public ChangeResult Remove(Guid gameInningTeamId, int sequence)
        {
            ChangeResult result = new ChangeResult();

            using (var context = new Data.DartballContext())
            {
                var item = context.GameInningTeamBatters.FirstOrDefault(x => x.GameInningTeamId == gameInningTeamId.ToString() && x.Sequence == sequence);
                if (item != null)
                {
                    context.GameInningTeamBatters.Remove(item);
                    context.SaveChanges();
                }
            }
            return(result);
        }
Ejemplo n.º 23
0
        public ITeam GetTeam(Guid teamId)
        {
            ITeam team = null;

            using (var context = new Data.DartballContext())
            {
                var item = context.Teams.FirstOrDefault(x => x.TeamId == teamId.ToString());
                if (item != null)
                {
                    team = Mapper.Map <TeamDto>(item);
                }
            }

            return(team);
        }
Ejemplo n.º 24
0
        public ChangeResult Remove(Guid gameId, int inningNumber)
        {
            ChangeResult result = new ChangeResult();

            using (var context = new Data.DartballContext())
            {
                var item = context.GameInnings.FirstOrDefault(x => x.GameId == gameId.ToString() && x.InningNumber == inningNumber);
                if (item != null)
                {
                    context.GameInnings.Remove(item);
                    context.SaveChanges();
                }
            }
            return(result);
        }
Ejemplo n.º 25
0
        public List <IPlayerTeam> GetTeamPlayers(Guid teamId)
        {
            List <IPlayerTeam> playerTeams = new List <IPlayerTeam>();

            using (var context = new Data.DartballContext())
            {
                var items = context.PlayerTeams.Where(x => x.TeamId == teamId.ToString() && !x.DeleteDate.HasValue).ToList();
                foreach (var item in items)
                {
                    playerTeams.Add(Mapper.Map <PlayerTeamDto>(item));
                }
            }

            return(playerTeams);
        }
Ejemplo n.º 26
0
        public IGameTeam GetGameTeam(Guid gameId, Guid teamId)
        {
            IGameTeam gameTeam = null;

            using (var context = new Data.DartballContext())
            {
                var item = context.GameTeams.FirstOrDefault(x => x.GameId == gameId.ToString() && x.TeamId == teamId.ToString());
                if (item != null)
                {
                    gameTeam = Mapper.Map <GameTeamDto>(item);
                }
            }

            return(gameTeam);
        }
Ejemplo n.º 27
0
        public ChangeResult Remove(Guid gameId, Guid teamId)
        {
            ChangeResult result = new ChangeResult();

            using (var context = new Data.DartballContext())
            {
                var item = context.GameTeams.FirstOrDefault(x => x.GameId == gameId.ToString() && x.TeamId == teamId.ToString());
                if (item != null)
                {
                    context.GameTeams.Remove(item);
                    context.SaveChanges();
                }
            }
            return(result);
        }
Ejemplo n.º 28
0
        public IPlayer GetPlayer(Guid playerId)
        {
            IPlayer player = null;

            using (var context = new Data.DartballContext())
            {
                var item = context.Players.FirstOrDefault(x => x.PlayerId == playerId.ToString());
                if (item != null)
                {
                    player = Mapper.Map <PlayerDto>(item);
                }
            }

            return(player);
        }
Ejemplo n.º 29
0
        public ChangeResult RemoveLeague(Guid leagueAltenateKey)
        {
            ChangeResult result = new ChangeResult();

            using (var context = new Data.DartballContext())
            {
                var item = context.Leagues.FirstOrDefault(x => x.LeagueId == leagueAltenateKey.ToString());
                if (item != null)
                {
                    context.Leagues.Remove(item);
                    context.SaveChanges();
                }
            }

            return(result);
        }
Ejemplo n.º 30
0
        public ChangeResult Remove(Guid playerId)
        {
            ChangeResult result = new ChangeResult();

            using (var context = new Data.DartballContext())
            {
                var item = context.Players.FirstOrDefault(x => x.PlayerId == playerId.ToString());
                if (item != null)
                {
                    context.Players.Remove(item);
                    context.SaveChanges();
                }
            }

            return(result);
        }