public List <QuizAttempts> GetReflectionToolQuizAttempts(string userId, int attempt, QuizDetails quizDetails)
        {
            var reflectionToolQuizzes = _reflectionToolAdapter.GetReflectionToolQuestions();
            var latestAttempt         = _reflectionToolAdapter.GetLatestAttemptByUser(userId);
            List <ReflectionToolQuizAttempt> result = new List <ReflectionToolQuizAttempt>();

            if (latestAttempt != null)
            {
                if (attempt == 1)
                {
                    result = _reflectionToolAdapter.GetReflectionToolAttempts(userId, latestAttempt.attemptcount);
                }
                else
                {
                    if (latestAttempt.attemptcount > 1)
                    {
                        _reflectionToolAdapter.GetReflectionToolAttempts(userId, latestAttempt.attemptcount - 1);
                    }
                }
            }

            List <QuizAttempts> quizAttempts = new List <QuizAttempts>();

            if (result != null)
            {
                foreach (var quizAttempt in result)
                {
                    QuizAttempts attempts = new QuizAttempts
                    {
                        question        = reflectionToolQuizzes.FirstOrDefault(q => q.id == quizAttempt.questionid)?.question,
                        answer          = quizAttempt.answer,
                        userId          = quizAttempt.userid,
                        selectedoptions = string.Join(",", quizAttempt.selectedoptions),
                        attempt         = quizAttempt.attemptcount,
                        type            = quizDetails.type
                    };
                    quizAttempts.Add(attempts);
                }
            }

            return(quizAttempts);
        }
Exemplo n.º 2
0
 public List <ReflectionTool> GetReflectionToolQuestions()
 {
     return(_reflectionToolAdapter.GetReflectionToolQuestions());
 }