[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)); } }
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); }
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); }
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)); } }