Example #1
0
        public async Task <AnswerOutput> Answer(AnswerInput input)
        {
            var renyuan = _renyuanRepository.Insert(new Renyua1
            {
                Name   = input.Name,
                Xueyua = input.Xueyua,
                Xuehao = input.Xuehao,
                Banji  = input.Banji,
                Code   = ""
            });
            await CurrentUnitOfWork.SaveChangesAsync();

            foreach (var answer in input.Answers)
            {
                _daanRepository.Insert(new Daan
                {
                    RenyuanId   = renyuan.Id,
                    TimuId      = answer.TimuId,
                    XuanxiangId = answer.XuanxiangId
                });
            }

            await CurrentUnitOfWork.SaveChangesAsync();

            return(new AnswerOutput {
                Code = ""
            });
        }
Example #2
0
        private void ProcessNextQuestion()
        {
            int answer = ParseAnswer(AnswerInput.Text);

            ShowVisualCue(_quiz.CheckAnswer(answer));

            _quiz.UpdateCorrectIncorrectCount(answer);
            CorrectCountDisplay.Text   = _quiz.CorrectCount.ToString();
            IncorrectCountDisplay.Text = _quiz.IncorrectCount.ToString();

            AnswerInput.Text = string.Empty;
            AnswerInput.Focus();


            if (_quiz.HasMoreQuestions())
            {
                QuestionDisplay.Text = _quiz.NextQuestion.DisplayText;
            }
            else
            {
                QuestionDisplay.Text = "Done";
                _quiz.IsPaused       = false;
                _quiz.Stop();
                StartButton.BringToFront();
                NextButton.Enabled = false;

                var scores = Properties.Settings.Default.Scores ?? new System.Collections.Specialized.StringCollection();
                scores.Add(((double)_quiz.CorrectCount / (double)_quiz.QuestionCount).ToString("P0"));
                Properties.Settings.Default.Scores = scores;
                Properties.Settings.Default.Save();

                DisplayPastScores();
            }
        }
Example #3
0
        public override void OnObserve(AnswerInput value)
        {
            if (!this.Statement.IsComputable(value.Identifier))
            {
                return;
            }

            this.EvaluateVisibility();
        }
Example #4
0
    private void ShowQuestion()
    {
        RemoveAnswerButton();
        questionData             = questionPool[questionIndex];
        questionDisplayText.text = questionData.questionText;
        audioDisplay.GetComponent <AudioPanel>().audioClipCommand.GetComponent <AudioController>().UnloadAudio();

        // Manage Audio question.
        if (questionData.questionAudio != null && questionData.questionAudio != "")
        {
            audioDisplay.GetComponent <AudioPanel>().audioClipCommand.GetComponent <AudioController>().LoadAudio(questionData.questionAudio);
            audioDisplay.SetActive(true);
        }

        if (questionData.questionImage != null && questionData.questionImage != "")
        {
            imageDisplay.SetActive(true);
            imageDisplay.GetComponent <Image>().sprite = dataController.getImageSprite(questionData.questionImage);
        }
        else
        {
            imageDisplay.SetActive(false);
        }

        // There 2 types of answer: Button or InputField.
        if (questionData.questionType == "Input")
        {
            for (int i = 0; i < questionData.answers.Length; i++)
            {
                GameObject answerInputGameObject = answerInputObjectPool.GetObject();
                answerInputGameObjects.Add(answerInputGameObject);
                answerInputGameObject.transform.SetParent(answerInputParent);


                AnswerInput answerInput = answerInputGameObject.GetComponent <AnswerInput>();
                answerInput.SetUp(questionData.answers[i]);
            }
        }
        else
        {
            for (int i = 0; i < questionData.answers.Length; i++)
            {
                GameObject answerButtonGameObject = answerButtonObjectPool.GetObject();
                answerButtonGameObjects.Add(answerButtonGameObject);
                answerButtonGameObject.transform.SetParent(answerButtonParent);


                AnswerButton answerButton = answerButtonGameObject.GetComponent <AnswerButton>();
                answerButton.SetUp(questionData.answers[i]);
            }
        }

        dataController.debudText.text += "question display image : " + questionDisplay.GetComponent <Image>().sprite.name;
    }
Example #5
0
        private void StartButton_Click(object sender, EventArgs e)
        {
            Properties.Settings.Default.Save();

            if (!_quiz.IsPaused)
            {
                InitializeValues();
                LoadQuizWithOptions();
                QuestionDisplay.Text = _quiz.GetFirstQuestion().DisplayText;
            }

            AnswerInput.Focus();
            _quiz.Start(_elapsedTimeDelegate);
            PauseButton.BringToFront();
            _quiz.IsPaused = false;
        }
Example #6
0
        public async Task <Answer> AnswerAsync(string id, AnswerInput request, CancellationToken cancellationToken)
        {
            Answer answer = new Answer();

            //answer.UserId = "";//通过token拿userid
            answer.CreateAt   = DateTime.Now;
            answer.Id         = Guid.NewGuid().ToString();
            answer.QuestionId = id;
            answer.Content    = request.Content;

            var filter = Builders <Question> .Filter.Eq(q => q.Id, id);

            var updateDefinition = Builders <Question> .Update.Push(m => m.Answers, answer.Id);

            //事务 to do
            await _questionCollection.UpdateOneAsync(filter, updateDefinition, null, cancellationToken);

            await _answerCollection.InsertOneAsync(answer);

            return(answer);
        }
Example #7
0
        public OutputList GetAnswers([FromBody] AnswerInput input)
        {
            var querys = from answers in _doContext.Answers.ToList()
                         join users in _doContext.Users.ToList() on answers.UserId equals users.Id
                         into JoinedEmpUser
                         from user in JoinedEmpUser.DefaultIfEmpty()
                         join problems in _doContext.Problems.ToList()
                         .Where(x => x.Id == input.ProbliemId)
                         on answers.ProblemId equals problems.Id
                         into JoinedEmpProblem
                         from problem in JoinedEmpProblem.DefaultIfEmpty()
                         select new ProblemListDto
            {
                Id        = answers.Id,
                Title     = problem == null ? "" : problem.Title,
                Info      = answers.Content,
                Another   = user == null ? "" : user.UserName,
                UserId    = user == null ? 0 : user.Id,
                ProblemId = problem == null ? 0 : problem.Id,
            };


            var totel = querys.Count();

            querys = querys.Where(x => x.ProblemId == input.ProbliemId);

            var result = _mapper.Map <List <ProblemListDto> >(querys);

            OutputList outputList = new OutputList
            {
                Totel = totel,
                Data  = result
            };

            return(outputList);
        }
Example #8
0
        public async Task <IActionResult> AnswerAsync(string id, [FromBody] AnswerInput request, CancellationToken cancellationToken)
        {
            var question = await _quesitonService.AnswerAsync(id, request, cancellationToken);

            return(Ok(question));
        }
Example #9
0
 public override void OnObserve(AnswerInput observation)
 {
 }
Example #10
0
 public override void OnObserve(AnswerInput value)
 {
     base.OnObserve(value);
     this.Input.SelectedDate = ((DateValue)this.Value).Value;
 }
Example #11
0
 public override void OnObserve(AnswerInput value)
 {
     base.OnObserve(value);
     this.Input.IsChecked = ((BooleanValue)this.Value).Value;
 }
Example #12
0
 public override void OnObserve(AnswerInput value)
 {
     base.OnObserve(value);
     this.Input.Text = this.Value.ToString();
 }