public void EditStudentExamQuestion(int examQuestionId, StudentQuestionTable newExamQuestion) { StudentQuestionTable model = studentExamQuestionRepository.GetById(examQuestionId); model = newExamQuestion; EditStudentExamQuestion(model); }
private static string[] GetStudentAnswers(StudentQuestionTable studentExamQuestion, OptionAssignController optionAssignController) { if (studentExamQuestion == null) { return new string[] { "" } } ; string[] studentAnswerIds = studentExamQuestion.studentAnswerIds.Split(','); List <int> answerIds = new List <int>(); foreach (string studentAnswerId in studentAnswerIds) { int.TryParse(studentAnswerId, out int result); answerIds.Add(result); } List <string> answers = new List <string>(); foreach (int answerId in answerIds) { OptionAssign answer = optionAssignController.GetById(answerId); if (answer != null) { answers.Add(answer.optionTitle); } } return(answers.ToArray()); }
private void DeleteStudentExamQuestion(int examQuestionId) { StudentQuestionTable model = studentExamQuestionRepository.GetById(examQuestionId); if (model == null) { return; } Delete(examQuestionId); }
private void EvaluateAndRegister(RealExam studentExam, RealExam modelExam) { OptionAssignController optionAssignController = new OptionAssignController(); Dictionary <string, float> questionScores = StudentExamUtils.EvaulateExam(studentExam, modelExam); StudentExam exam = StudentExamUtils.NewRealExamToStudentExam(studentExam, (int)questionScores["~totalScore"], studentExam.studentId); int studentExamId = studentExamController.AddStudentExam(exam); StudentExamQuestionController studentExamQuestionController = new StudentExamQuestionController(); foreach (RealExamQuestion question in studentExam.examElements) { StudentQuestionTable studentQuestion = StudentExamUtils.RealQuestionToStudentQuestion(question, (int)questionScores[question.title], studentExamId, optionAssignController); studentExamQuestionController.AddStudentExamQuestion(studentQuestion); } }
public int AddStudentExamQuestion(StudentQuestionTable model) { var allExamQuestions = studentExamQuestionRepository.GetAll(); int lastId = 0; if (allExamQuestions.Count() > 0) { lastId = allExamQuestions[allExamQuestions.Count() - 1].Id; } model.Id = lastId + 1; studentExamQuestionRepository.Insert(model); studentExamQuestionRepository.Save(); return(model.Id); }
public static RealExamQuestion[] GetAllStudentExamElements(int studentExamId, ExamController examController, List <questionAssign> allQuestions, QuestionAssignController questionAssignController, OptionAssignController optionAssignController, StudentExamQuestionController studentExamQuestionController) { List <RealExamQuestion> allExamElements = new List <RealExamQuestion>(); foreach (questionAssign question in allQuestions) { if (question == null) { continue; } StudentQuestionTable studentExamQuestion = studentExamQuestionController.GetByModelQuestionId(question.Id, studentExamId); allExamElements.Add(GetExamElement(question, optionAssignController.GetAllQuestionOptions(question.Id), studentExamQuestion, optionAssignController)); } return(allExamElements.ToArray()); }
private void EditStudentExamQuestion(StudentQuestionTable model) { studentExamQuestionRepository.Update(model); studentExamQuestionRepository.Save(); }
public static RealExamQuestion GetExamElement(questionAssign question, List <OptionAssign> allOptions, StudentQuestionTable studentExamQuestion, OptionAssignController optionAssignController) { return(new RealExamQuestion { type = question.type, title = question.title, multiple = question.type == "Single" ? false : true, options = OptionUtils.OptionsToRealOptions(allOptions), studentAnswer = GetStudentAnswers(studentExamQuestion, optionAssignController), answer = OptionUtils.OptionsToAnswers(allOptions), studentScore = studentExamQuestion.score, score = question.score, questionId = question.Id, }); }