public async Task <bool> InsertAnswerAsync(AnswerSubmission answer, string userId) { answer.IsCorrect = false; var user = await _context.Users.SingleOrDefaultAsync(x => x.Id == userId); if (user == null) { return(false); } if (user.Answers.Any(x => x.MatchId == answer.MatchId)) { return(false); } var match = await _context.Games.FindAsync(answer.MatchId); if (match == null) { return(false); } if (match.Teams.Single(x => x.Winner).TeamId == answer.WinningTeamId) { answer.IsCorrect = true; } user.Answers.Add(answer); await _context.SaveChangesAsync(); return(true); }
public AnswerSubmission Create(AnswerSubmission submission) { _context.AnswerSubmissions.Add(submission); _context.SaveChanges(); return(submission); }
public async Task <IHttpActionResult> SubmitAnswer([FromBody] AnswerSubmission answer) { if (!ModelState.IsValid) { return(BadRequest(string.Join("\n", ModelState.Values.Select(x => x.Errors)))); } if (await _gameRepository.InsertAnswerAsync(answer, new RiotContext().Users.First().Id)) // TODO: Authorization & Authentication { return(Ok(answer.IsCorrect)); } return(BadRequest()); }
public IActionResult Create([FromBody] AnswerSubmission questionOption) { if (questionOption == null) { return(BadRequest(new { message = "Bad request" })); } try { _answerSubmissionService.Create(questionOption); return(Ok()); } catch (Exception ex) { // return error message if there was an exception return(BadRequest(new { message = ex.Message })); } }
public ActionResult PostAnswer([FromBody] AnswerSubmission req) { var answerls = req.AnswerList; Concept cpt = _context.Concept.Where(c => c.Uid == req.Cuid).FirstOrDefault <Concept>(); foreach (var obj in answerls) { if (obj != null) { IdeationAnswers ans = new IdeationAnswers { Uid = Guid.NewGuid().ToString(), Cid = cpt.Id, Qid = Array.IndexOf(answerls, obj), Answer = obj }; _context.IdeationAnswers.Add(ans); } } _context.SaveChanges(); return(Ok(new { message = "Success!" })); }