Esempio n. 1
0
        public async Task <ActionResult> AddPlayer(AddPlayerRequest request)
        {
            if (!await this.IsAPITokenValid(request.ApiToken))
            {
                return(new BadRequestObjectResult("UnAuthorized"));
            }

            string leagueId = await this.GetLeagueId(request.LeagueKey);

            if (leagueId == null)
            {
                return(new BadRequestObjectResult("League Not Found"));
            }

            if (await this.TeamRepository.GetAsync(request.TeamId) == null)
            {
                return(new BadRequestObjectResult("Team Not Found"));
            }

            Player player = new Player
            {
                PlayerNum = request.PlayerNum,
                Position  = request.Position,
                FirstName = request.FirstName,
                LastName  = request.LastName,
                Picture   = String.IsNullOrEmpty(request.Picture) ? Configuration.GetValue <string>("DefaultPlayerLogo") : request.Picture,
                TeamId    = request.TeamId
            };

            var newPlayer = await this.PlayerRepository.AddAsync(player);

            return(new OkObjectResult(newPlayer));
        }
Esempio n. 2
0
 public static bool ValidateAddPlayerRequest(this AddPlayerRequest addPlayerRequest)
 {
     return(!string.IsNullOrEmpty(addPlayerRequest?.Email?.Address) &&
            !string.IsNullOrEmpty(addPlayerRequest?.Name?.FirstName) &&
            !string.IsNullOrEmpty(addPlayerRequest?.Name?.LastName) &&
            !string.IsNullOrEmpty(addPlayerRequest?.Password));
 }
Esempio n. 3
0
        public void AddPlayer(AddPlayerRequest addPlayerRequest, int teamId)
        {
            var playerToAdd = _context.Players.First(p => p.FirstName == addPlayerRequest.FirstName && p.LastName == addPlayerRequest.LastName);

            if (playerToAdd == null)
            {
                throw new PlayerNotFoundException($"Not founded player with this data");
            }
            var team = _context.Teams.First(team => team.IdTeam == teamId);

            if (team == null)
            {
                throw new NoTeamsFoundException($"Team not founded with id: {teamId}");
            }
            if ((DateTime.Today.Year - playerToAdd.DateOfBirth.Year) > team.MaxAge)
            {
                throw new Exception("Players have to be younger for this team");
            }
            var validatedPlayer = new PlayerTeam
            {
                IdPlayer   = playerToAdd.IdPlayer,
                IdTeam     = team.IdTeam,
                NumOnShirt = addPlayerRequest.NumOnShirt,
                Comment    = addPlayerRequest.Comment
            };

            _context.PlayerTeams.Add(validatedPlayer);
            _context.SaveChanges();
        }
Esempio n. 4
0
        public AddPlayerResponse Add(AddPlayerRequest request)
        {
            Player player = new Player(request.Name, request.Email, request.Password);
            var    id     = _repositoryPlayer.Add(player);

            return(new AddPlayerResponse(id, string.Format(Messages.RES_0_ADDED, "Player")));
        }
Esempio n. 5
0
        public ActionResult AddPlayer([FromBody] AddPlayerRequest request)
        {
            if (string.IsNullOrEmpty(request.GameId))
            {
                return(new NotFoundResult());
            }

            var foundGame = GameStates.Cache.TryGetValue(request.GameId, out GameState game);

            if (!foundGame)
            {
                return(new NotFoundResult());
            }

            var wasAdded = game.AddPlayer(request.Team, request.PlayerName);

            if (wasAdded)
            {
                return(Ok());
            }
            else
            {
                return(BadRequest());
            }
        }
Esempio n. 6
0
        public IActionResult AddPlayerToTeam(int teamId, AddPlayerRequest request)
        {
            IActionResult response;

            try
            {
                _service.AddPlayerToTeam(teamId, request);
                response = Created($"Added player to {teamId}", request);
            }
            catch (PlayerIsToOldException e)
            {
                response = BadRequest($"This player is too old:\n{e.StackTrace}\n{e.Message}");
            }
            catch (PlayerDoesntExistException e)
            {
                response = BadRequest($"No such player:\n{e.StackTrace}\n{e.Message}");
            }
            catch (PlayerAlreadyInTheTeamException e)
            {
                response = BadRequest($"Player already in the team:\n{e.StackTrace}\n{e.Message}");
            }
            catch (Exception e)
            {
                response = BadRequest($"Some other error occurred:\n{e.StackTrace}\n{e.Message}");
            }
            return(response);
        }
        public async Task <ActionResult> AddPlayer(AddPlayerRequest addPlayerRequest)
        {
            if (!ModelState.IsValid)
            {
                return(View(addPlayerRequest));
            }

            var yearTask = this.Db.years.Where(x => x.value == this.CurrentYear).FirstOrDefaultAsync();
            var teamTask = this.Db.teams.Where(x => x.id == addPlayerRequest.TeamId).FirstOrDefaultAsync();

            var playerTask = this.Db.players.Include(x => x.playeryeardatas).Where(x => x.name.ToLower() == addPlayerRequest.PlayerName.ToLower()).FirstOrDefaultAsync();

            await Task.WhenAll(yearTask, teamTask, playerTask);

            player player = null;

            // If the player doesn't exist, force create as rookie.
            bool rookieStatus = true;

            if (playerTask.Result != null)
            {
                player = playerTask.Result;

                // if the player already has a PYD for the current year, delete it.
                var currentYearPyd = player.playeryeardatas.FirstOrDefault(x => x.year.value == this.CurrentYear);

                player.currentHandicap = addPlayerRequest.Handicap;

                if (currentYearPyd != null)
                {
                    this.Db.playeryeardatas.Remove(currentYearPyd);
                }

                // if player DOES exist honor rookie option.
                rookieStatus = addPlayerRequest.IsRookie;
            }
            else
            {
                player = new player {
                    validPlayer = true, name = addPlayerRequest.PlayerName, currentHandicap = addPlayerRequest.Handicap
                };
            }

            var newPyd = new playeryeardata
            {
                isRookie          = rookieStatus,
                year              = yearTask.Result,
                team              = teamTask.Result,
                player            = player,
                week0Score        = addPlayerRequest.Handicap + 36,
                startingHandicap  = addPlayerRequest.Handicap,
                finishingHandicap = addPlayerRequest.Handicap
            };

            this.Db.playeryeardatas.Add(newPyd);

            await this.Db.SaveChangesAsync();

            return(RedirectToAction("AddPlayer", new { result = "success" }));
        }
Esempio n. 8
0
        public AddPlayerResponse AddPlayer(AddPlayerRequest request)
        {
            Guid id = _playerService.AddPlayer(request);

            return(new AddPlayerResponse {
                Id = id, Message = "Success"
            });
        }
Esempio n. 9
0
        public Task <AddPlayerReply> AddPlayer(ServerCallContext context, AddPlayerRequest request)
        {
            bool playerAdded = manager.AddPlayer(request.PlayerId);
            var  reply       = new AddPlayerReply.Builder {
                Result = playerAdded
            }.BuildPartial();

            return(Task.FromResult(reply));
        }
Esempio n. 10
0
 public IActionResult Add([FromBody] AddPlayerRequest player)
 {
     try
     {
         _servicePlayer.AddPlayer(player);
         return(new NoContentResult());
     }
     catch (Exception e)
     {
         Console.WriteLine(e);
         throw;
     }
 }
Esempio n. 11
0
 public IActionResult AddPlayer(int id, AddPlayerRequest request)
 {
     try
     {
         _dbService.AddPlayer(id, request);
         return(Ok());
     }
     catch (TeamNotFoundException exc)
     {
         return(NotFound(exc.Message));
     }
     catch (PlayerTooOldException exc)
     {
         return(BadRequest(exc.Message));
     }
 }
Esempio n. 12
0
        public void AddPlayer(int id, AddPlayerRequest request)
        {
            var maxAge = _context.Teams.SingleOrDefault(t => t.IdTeam == id).MaxAge;

            if (maxAge == null)
            {
                throw new TeamNotFoundException("Nie znaleziono druzyny o takim id");
            }

            var playerAge = DateTime.Now.Year - request.birthDate.Year;

            if (playerAge > maxAge)
            {
                throw new PlayerTooOldException("gracz jest za stary");
            }
        }
Esempio n. 13
0
        public AddPlayerResponse AddPlayer(AddPlayerRequest request)
        {
            Player player = new Player();

            player.Mail   = request.Mail;
            player.Name   = request.Name;
            player.Status = Enum.EnumPlayerStatus.Pendente;

            Guid id = _repositoryPlayer.AddPlayer(player);

            player.Status = Enum.EnumPlayerStatus.Ativo;

            return(new AddPlayerResponse()
            {
                Id = id, Message = "Operação realizada com sucesso!"
            });
        }
Esempio n. 14
0
 public IActionResult AddPlayerToTeam(int id, AddPlayerRequest addPlayerRequest)
 {
     try
     {
         _service.AddPlayer(addPlayerRequest, id);
         return(Ok());
     }
     catch (PlayerNotFoundException e)
     {
         return(NotFound(e.Message));
     }
     catch (NoTeamsFoundException e)
     {
         return(NotFound(e.Message));
     }
     //todo last exeptions
 }
Esempio n. 15
0
        public IActionResult GetTeamsForChampioship(int idTeam, AddPlayerRequest addPlayerRequest)
        {
            Team team = _context.Teams.Find(idTeam);

            if (team == null)
            {
                return(BadRequest("Nie ma takiego zespołu!"));
            }

            Player player = _context.Players
                            .Where(p => p.FirstName.Equals(addPlayerRequest.FirstName))
                            .Where(p => p.LastName.Equals(addPlayerRequest.LastName))
                            .Where(p => p.DateOfBirth.Equals(addPlayerRequest.DateOfBirth)).First();

            if (player == null)
            {
                return(BadRequest("Nie ma takiego zawodnika!"));
            }

            var age = (DateTime.Now.Year - addPlayerRequest.DateOfBirth.Value.Year);

            if (age > team.MaxAge)
            {
                return(BadRequest("Zawodnik jest za stary na tę drużynę!"));
            }

            var _link = _context.Player_Teams.Where(pt => pt.Player.Equals(player)).First();

            if (_link != null)
            {
                return(BadRequest("Zawodnik już ma drużynę!"));
            }

            Player_Team player_Team = new Player_Team();

            player_Team.Player = player;
            player_Team.Team   = team;

            _context.Player_Teams.Add(player_Team);

            _context.SaveChanges();

            return(Ok("Dodano"));
        }
Esempio n. 16
0
        public void AddPlayerToTeam(int teamId, AddPlayerRequest request)
        {
            var maxAge = _context.Teams
                         .Single(x => x.IdTeam.Equals(teamId))
                         .MaxAge;
            var playerAge = DateTime.Now.Year - request.BirthDate.Year;

            if (playerAge > maxAge)
            {
                throw new PlayerIsToOldException($"The player ({playerAge}) is too old ({maxAge})!");
            }


            var playerExists = _context.Players
                               .Any(x => x.FirstName.Equals(request.FirstName) && x.LastName.Equals(request.LastName));

            if (!playerExists)
            {
                throw new PlayerDoesntExistException($"No such player {request.FirstName} {request.LastName}found");
            }

            var playerId = _context.Players
                           .Single(x => x.FirstName.Equals(request.FirstName) && x.LastName.Equals(request.LastName))
                           .IdPlayer;

            var playerAlreadyInTheTeam = _context.PlayerTeams
                                         .Any(x => x.IdPlayer.Equals(playerId) && x.IdTeam.Equals(teamId));

            if (playerAlreadyInTheTeam)
            {
                throw new PlayerAlreadyInTheTeamException($"The player {playerId} is already in the team {teamId}");
            }

            _context.PlayerTeams.Add(new PlayerTeam
            {
                IdTeam     = teamId,
                IdPlayer   = playerId,
                NumOnShirt = request.NumOnShirt,
                Comment    = request.Comment
            }
                                     );
            _context.SaveChanges();
        }
Esempio n. 17
0
        public void AddPlayerToTeam(int teamId, AddPlayerRequest request)
        {
            var maxAge = _context.Teams
                         .Single(x => x.IdTeam.Equals(teamId))
                         .MaxAge;
            var playerAge = DateTime.Now.Year - request.BirthDate.Year;

            if (playerAge > maxAge)
            {
                throw new ToOldPlayerException($"This player is to old");
            }

            var playerExists = _context.Players
                               .Any(x => x.FirstName.Equals(request.FirstName) && x.LastName.Equals(request.LastName));

            if (!playerExists)
            {
                throw new NoPlayerException($"Did not found this player");
            }

            var playerId = _context.Players
                           .Single(x => x.FirstName.Equals(request.FirstName) && x.LastName.Equals(request.LastName))
                           .IdPlayer;

            var playerAlreadyInTheTeam = _context.PlayerTeams
                                         .Any(x => x.IdPlayer.Equals(playerId) && x.IdTeam.Equals(teamId));

            if (playerAlreadyInTheTeam)
            {
                throw new PlayerInTeamException($"This player is already in team");
            }

            _context.PlayerTeams.Add(new PlayerTeam
            {
                IdTeam     = teamId,
                IdPlayer   = playerId,
                NumOnShirt = request.NumOnShirt,
                Comment    = request.Comment
            }
                                     );
            _context.SaveChanges();
        }
Esempio n. 18
0
 public IActionResult AddPlayerToTeam(int IdTeam, AddPlayerRequest addPlayerRequest)
 {
     try
     {
         championshipService.addPlayerToTeam(addPlayerRequest, IdTeam);
         return Ok("Player added");
     }
     catch (NoPlayerException e)
     {
         return BadRequest(e);
     }
     catch(PlayerAreadyInTeamException e)
     {
         return BadRequest(e);
     }
     catch(TooOldException e)
     {
         return BadRequest(e);
     }
 }
Esempio n. 19
0
        public async Task <IActionResult> AddPlayer([FromBody] AddPlayerRequest request)
        {
            ServerSidePlayer player = new ServerSidePlayer(request.Name, request.AvatarUrl);

            _registry.AddPlayer(player);

            AddPlayerResponse response = new AddPlayerResponse
            {
                PlayerId = player.Id,
                LobbyId  = player.Lobby.Id,
            };

            await _hubContext.Clients.All.NewPlayer(new ServerSidePlayerOverview
            {
                Id        = player.Id,
                Name      = player.Name,
                AvatarUrl = player.AvatarUrl,
            });

            return(base.Ok(response));
        }
Esempio n. 20
0
        public IActionResult AddPlayerToTeam(int teamId, AddPlayerRequest request)
        {
            IActionResult response;

            try
            {
                dbService.AddPlayerToTeam(teamId, request);
                response = Created($"Added player", request);
            }
            catch (ToOldPlayerException e)
            {
                response = BadRequest($"Too old player\n{e.Message}");
            }
            catch (NoPlayerException e)
            {
                response = BadRequest($"No player\n{e.Message}");
            }
            catch (PlayerInTeamException e)
            {
                response = BadRequest($"Player in team\n{e.Message}");
            }
            return(response);
        }
Esempio n. 21
0
 public void addPlayerToTeam(AddPlayerRequest addPlayerRequest, int team)
 {
     if (!databaseContext.Player.Where(e => e.FirstName == addPlayerRequest.firstName && e.LastName == addPlayerRequest.lastName && e.DateOfBirth == addPlayerRequest.birthdate).Any())
     {
         throw new NoPlayerException("No player found");
     }
     if (DateTime.Now.Year - addPlayerRequest.birthdate.Year >= databaseContext.Team.Where(e => e.IdTeam == team).Select(e => e.MaxAge).FirstOrDefault())
     {
         throw new TooOldException("Player is too old");
     }
     if (databaseContext.Player_Team.Include(i => i.Player).Where(e => e.Player.FirstName == addPlayerRequest.firstName && e.Player.LastName == addPlayerRequest.lastName && e.Player.DateOfBirth == addPlayerRequest.birthdate && e.IdTeam == team).Select(e => e.IdTeam).Any())
     {
         throw new PlayerAreadyInTeamException("Player already exists in this team");
     }
     databaseContext.Add(new Player_Team
     {
         NumOnShirt = addPlayerRequest.numOnShirt,
         Comment    = addPlayerRequest.comment,
         IdTeam     = team,
         IdPlayer   = databaseContext.Player.Where(e => e.FirstName == addPlayerRequest.firstName && e.LastName == addPlayerRequest.lastName && e.DateOfBirth == addPlayerRequest.birthdate).Select(e => e.IdPlayer).FirstOrDefault()
     });
     databaseContext.SaveChanges();
 }
Esempio n. 22
0
        public AddPlayerResponse AddPlayer(AddPlayerRequest request)
        {
            var   nome  = new Name(request.Name.FirstName, request.Password);
            Email email = new Email(request.Email.Address);

            Player player = new Player(nome, email, request.Password);

            AddNotifications(nome, email);

            if (_repository.Existe(x => x.Email == request.Email))
            {
                AddNotification("E-mail", "fail");
            }

            if (IsInvalid())
            {
                return(null);
            }

            player = _repository.Add(player);


            return((AddPlayerResponse)player);
        }
Esempio n. 23
0
        public Guid AddPlayer(AddPlayerRequest addPlayerRequest)
        {
            if (addPlayerRequest.ValidateAddPlayerRequest())
            {
                throw new ArgumentException("Invalid request");
            }
            try
            {
                var player = new Player(
                    Guid.NewGuid(),
                    addPlayerRequest.Email,
                    addPlayerRequest.Password,
                    addPlayerRequest.Name,
                    EnumPlayerStatus.OnGoing);

                var response = playerRepository.AddPlayer(player);

                return(response.Id);
            }
            catch (Exception ex)
            {
                throw new ArgumentException("Fail to add player", ex.InnerException.Message, ex);
            }
        }
Esempio n. 24
0
        public async Task <IActionResult> AddPlayer(Player player)
        {
            AddPlayerRequest apiRequest = new AddPlayerRequest
            {
                ApiToken  = Connector.CurrentApiToken,
                LeagueKey = Connector.League.LeagueKey,
                TeamId    = player.TeamId,
                FirstName = player.FirstName,
                LastName  = player.LastName,
                PlayerNum = player.PlayerNum,
                Position  = player.Position,
                Picture   = player.Picture
            };

            string errorMessage = "";
            var    newPlayer    = this.ApiClient.Post <Player>("Players/Add", JsonConvert.SerializeObject(apiRequest), ref errorMessage);

            if (newPlayer != null)
            {
                return(RedirectToAction("Edit", "Teams", new { id = player.TeamId }));
            }

            return(RedirectToAction("Index", "Teams", new { errorMsg = "Error adding new player." }));
        }
Esempio n. 25
0
        public async Task <AddPlayerResponse> Post([FromBody] AddPlayerRequest addPlayerRequest)
        {
            var addPlayerResult = await _gameManager.AddPlayerAsync(addPlayerRequest.GameId, addPlayerRequest.PlayerName);

            return(addPlayerResult.Value);
        }
Esempio n. 26
0
 public Task<AddPlayerReply> AddPlayer(ServerCallContext context, AddPlayerRequest request)
 {
     bool playerAdded = manager.AddPlayer(request.PlayerId);
     var reply = new AddPlayerReply.Builder { Result = playerAdded }.BuildPartial();
     return Task.FromResult(reply);
 }
Esempio n. 27
0
 public virtual Settings PostAddPlayer([FromBody] AddPlayerRequest <Settings> req)
 {
     return(GetFiatGame().AddPlayer(req.player, req.settings));
 }
Esempio n. 28
0
 public Task <IActionResult> AddPlayer([FromBody] AddPlayerRequest request)
 {
     return(this.HandleRequest <AddPlayerRequest, AddPlayerResponse>(request));
 }
Esempio n. 29
0
        /// <summary>
        /// AddPlayer
        /// </summary>
        /// <returns></returns>
        private async Task AddPlayer()
        {
            AddPlayerResponse response;

            // gRPC Client.
            var client = new PlayerService.PlayerServiceClient(m_channel);

            // Create request.
            var playerRequest = new AddPlayerRequest
            {
                Player = new Player
                {
                    Id          = 0,
                    FirstName   = firstName.Text,
                    LastName    = lastName.Text,
                    DateOfBirth = new DateOfBirth
                    {
                        Day  = Convert.ToInt32(day.Value),
                        Year = Convert.ToInt32(year.Value)
                    }
                }
            };

            // Set month.
            switch (months.SelectedItem)
            {
            case "January":
                playerRequest.Player.DateOfBirth.Month = Month.January;
                break;

            case "February":
                playerRequest.Player.DateOfBirth.Month = Month.February;
                break;

            case "March":
                playerRequest.Player.DateOfBirth.Month = Month.March;
                break;

            case "April":
                playerRequest.Player.DateOfBirth.Month = Month.April;
                break;

            case "May":
                playerRequest.Player.DateOfBirth.Month = Month.May;
                break;

            case "June":
                playerRequest.Player.DateOfBirth.Month = Month.June;
                break;

            case "July":
                playerRequest.Player.DateOfBirth.Month = Month.July;
                break;

            case "August":
                playerRequest.Player.DateOfBirth.Month = Month.August;
                break;

            case "September":
                playerRequest.Player.DateOfBirth.Month = Month.September;
                break;

            case "October":
                playerRequest.Player.DateOfBirth.Month = Month.October;
                break;

            case "November":
                playerRequest.Player.DateOfBirth.Month = Month.November;
                break;

            case "December":
                playerRequest.Player.DateOfBirth.Month = Month.December;
                break;
            }

            // Log request.
            CreatePlayerServiceLogEntry(playerRequest, gRPCMessageType.Request, nameof(AddPlayer));

            try
            {
                // Get response from service.
                response = await client.AddPlayerAsync(playerRequest);
            }
            catch (Exception e)
            {
                // Should probably log this exception somewhere if this was production.
                throw;
            }

            // Log response.
            CreatePlayerServiceLogEntry(response, gRPCMessageType.Response, nameof(AddPlayer));
        }
Esempio n. 30
0
 public AddPlayerResponse AddPlayer(AddPlayerRequest request)
 {
     throw new System.NotImplementedException();
 }
Esempio n. 31
0
 public IActionResult AddPlayer(AddPlayerRequest request)
 {
     return(Ok());
 }