public UCAnswerPanel() { InitializeComponent(); if (this.IsDesignMode()) { return; } this.Visibility = Visibility.Collapsed; initEvents(); Loaded += (s, e) => { foreach (var student in APP.StudySession.GetStudyStudents()) { var penStatus = PenController.Instance.GetPenStatus(student.id); var item = new ViewModels.StudentView(student); item.IsSubmit = penStatus.IsSubmit; item.IsWriteing = penStatus.IsWriteing; item.IsOnline = penStatus.IsOnline; mStudentViews.Add(item); } ; ICUser.ItemsSource = mStudentViews; }; }
/// <summary> /// 加载用户数据和题的信息 /// </summary> /// <param name="studentId"></param> /// <param name="questionRecordId"></param> private void UpdateData(string exercise_record_id, long questionId) { var student = APP.StudySession.GetStudyStudent(StudentId); var studentView = new ViewModels.StudentView(student); var questionRecord = APP.IDatas.ErPaperPracticeRecordQuestionSealUp .Where(m => m.paper_practice_record_id == exercise_record_id && m.source_question_id == questionId) .Select(m => new { m.first_step_stem, m.start_practice_time }) .FirstOrDefault(); mPageData.StudentId = StudentId; mPageData.Name = studentView.Name; mPageData.Face = studentView.Face; if (questionRecord != null) { mPageData.QuestionTitle = questionRecord.first_step_stem; } if (this.IsShowAnswer) { var mButtonAnswer = APP.IDatas.ErStudentButtonAnswerOriginalRecord .Where(m => m.student_id == this.StudentId && m.exercise_record_id == exercise_record_id && m.question_id == questionId && m.step_number == 1) .Select(m => new { m.is_submit, m.button_item, m.create_time, m.step_number }).OrderBy(m => m.create_time).ToList(); if (mButtonAnswer.Count > 0) { var lastResult = mButtonAnswer.Where(m => m.is_submit).OrderByDescending(m => m.create_time).Select(m => new { m.button_item, m.create_time }).FirstOrDefault(); if (lastResult != null) { var lastTime = (lastResult.create_time.Value - questionRecord.start_practice_time.Value).ToString(@"m'\''s'\'\''"); mPageData.IsSubmitAnswerText = $"提交答案:{lastResult.button_item},总共用时:" + lastTime; } else { mPageData.IsSubmitAnswerText = "提交答案:未提交"; } var submits = mButtonAnswer.Where(m => m.is_submit).OrderBy(m => m.create_time).ToList(); var list = new List <string>(); for (var i = 0; i < submits.Count; i++) { var item = submits[i]; var lastTime = (item.create_time.Value - questionRecord.start_practice_time.Value).ToString(@"m'\''s'\'\''"); list.Add($"第{MSUtils.NumberToChinese(i + 1)}次提交答案:用时{lastTime}"); } mPageData.AnswerText = list.ToJoin(";"); } else { mPageData.IsSubmitAnswerText = "提交答案:未提交"; mPageData.AnswerText = "未做题"; } } }