Example #1
0
        [HttpPut("{Id}")] //for editing score
        public async Task <ActionResult> Put(string Id, [FromBody] PlayerGameSessionIn playerGameData)
        {
            if (!Guid.TryParse(Id, out var gameSessionIdGuid))
            {
                return(StatusCode(400, "player game session: " + Id + " is not a Guid"));
            }

            try
            {
                var result = await _playersHelper.ReplacePlayerGameSession(playerGameData, gameSessionIdGuid);

                if (result)
                {
                    return(Ok());
                }
                else
                {
                    return(NotFound());
                }
            }
            catch (Exception e)
            {
                Console.WriteLine("Error in Put action", e);
                return(StatusCode(500));
            }
        }
Example #2
0
        public async Task <bool> ReplacePlayerGameSession(PlayerGameSessionIn playerGameDataIn, Guid gameSessionId)
        {
            var playerGameData = new PlayerGameSession
            {
                PlayerGameSessionId = gameSessionId.ToString(),
                PlayerName          = playerGameDataIn.PlayerName,
                TotalScore          = playerGameDataIn.TotalScore,
                ResultList          = playerGameDataIn.ResultList,
                RunningTotalList    = playerGameDataIn.RunningTotalList
            };

            var success = await _playersDataService.Replace(playerGameData);

            if (!success)
            {
                throw new MongoOperationFailException("Mongo 'AddPlayers' operation failed. ");
            }

            return(success);
        }
Example #3
0
        public async Task <PlayerGameSession> InsertPlayerGameSession(PlayerGameSessionIn playerGameSessionIn)
        {
            var playerGameSession = new PlayerGameSession
            {
                PlayerGameSessionId = Guid.NewGuid().ToString(),
                PlayerName          = playerGameSessionIn.PlayerName,
                TotalScore          = playerGameSessionIn.TotalScore,
                RunningTotalList    = playerGameSessionIn.RunningTotalList,
                ResultList          = playerGameSessionIn.ResultList
            };

            var success = await _playersDataService.Add(playerGameSession);

            if (!success)
            {
                throw new MongoOperationFailException("Mongo 'AddPlayers' operation failed. ");
            }

            return(playerGameSession);
        }
Example #4
0
        public async Task <ActionResult <PlayerGameSessionOut> > Post([FromBody] PlayerGameSessionIn playerGameSession)
        {
            try
            {
                var result = await _playersHelper.InsertPlayerGameSession(playerGameSession);

                return(StatusCode(201, new PlayerGameSessionOut
                {
                    PlayerGameSessionId = result.PlayerGameSessionId,
                    PlayerName = result.PlayerName,
                    TotalScore = result.TotalScore,
                    ResultList = result.ResultList,
                    RunningTotalList = result.RunningTotalList
                }));
            }
            catch (Exception e)
            {
                Console.WriteLine("Error in Post action", e);
                return(StatusCode(500));
            }
        }