/// <summary>
        /// 回答問題
        /// </summary>
        /// <param name="answerQuestion"></param>
        /// <returns></returns>
        public ServiceResult AnswerQuestion(AnswerQuestionModel answerQuestion)
        {
            var question = _context.QuestionList.SingleOrDefault(x => x.Id == answerQuestion.QuestionId);
            var user     = _context.User.SingleOrDefault(x => x.Id == answerQuestion.UserId);

            if (question == null)
            {
                return(ServiceResult.Fail("題目取得失敗"));
            }
            if (user == null)
            {
                return(ServiceResult.Fail("無使用者"));
            }

            if (question.CorrectAnswer == answerQuestion.Answer)
            {
                user.Money += question.Reward;
                _context.SaveChanges();
                return(ServiceResult.Success("答題成功", question.CorrectAnswer));
            }
            else
            {
                return(ServiceResult.Fail("答題失敗", question.CorrectAnswer));
            }
        }
Example #2
0
        public ActionResult AnswerQuestion(AnswerQuestionModel model, Guid questionId)
        {
            Mapper.CreateMap <AnswerQuestionModel, Answer>().ReverseMap();
            var answer  = Mapper.Map <AnswerQuestionModel, Answer>(model);
            var context = new OverflowVictorContext();

            answer.QuestionId = questionId;
            context.Answers.Add(answer);
            context.SaveChanges();
            return(RedirectToAction("Index", "Question"));
        }
        public IActionResult AnswerQuestion(AnswerQuestionModel answerQuestion)
        {
            var result = _questionService.AnswerQuestion(answerQuestion);

            if (result.Data != null)
            {
                return(SuccessResponse(result, result.Message));
            }
            else
            {
                return(FailResponse(result.Message));
            }
        }
Example #4
0
 public ActionResult <HttpResponse> AnswerQuestion([FromBody] AnswerQuestionModel answerModel)
 {
     _questionsService.AnswerQuestion(answerModel.Id, answerModel.Answer, answerModel.Type, answerModel.ProfId);
     return(Ok());
 }