public string HandlePlayingSession(ISession session) { var currentPlayer = _playerService.GetCurrentPlayer(session.Id); IMove moveToUpdate = _moveService.GetAll(currentPlayer.Id).OrderBy(t => t.Start).LastOrDefault(); moveToUpdate = moveToUpdate.WithEnd(DateTime.Now); _moveService.Update(moveToUpdate); currentPlayer = _playerService.UpdateCurrentPlayer(session.Id); //TODO: refactor this _moveService.Add(new Move { Player = (Player)currentPlayer, PlayerId = currentPlayer.Id, Start = DateTime.Now, }); return($"Отлично. {currentPlayer.Name}, теперь ваш ход."); }
public IActionResult Edit(int id, [FromBody] AddRequestModel requestModel, [FromHeader] string displayLanguage) { var responseModel = new ApiResponseModel <Move>(); responseModel.DisplayLanguage = displayLanguage; try { var record = _moveService.GetById(id); record.ExitDate = DateTime.Now; var dbResult = _moveService.Update(record); if (dbResult > 0) { var lab = _labService.GetById(record.LabId); lab.CurrentApplianceCapacity--; _labService.Update(lab); responseModel.Data = record; responseModel.ResultStatusCode = ResultStatusCodeStatic.Success; responseModel.ResultStatusMessage = "Success"; return(Ok(responseModel)); } else { responseModel.ResultStatusCode = ResultStatusCodeStatic.Error; responseModel.ResultStatusMessage = "Could Not Be Saved"; responseModel.Data = null; return(StatusCode(StatusCodes.Status500InternalServerError, responseModel)); } } catch (Exception ex) { responseModel.ResultStatusCode = ResultStatusCodeStatic.Error; responseModel.ResultStatusMessage = ex.Message; responseModel.Data = null; return(StatusCode(StatusCodes.Status500InternalServerError, responseModel)); } }