Browse Source

自动阅卷分数

CrazyIter 4 năm trước cách đây
mục cha
commit
b6550ca452
1 tập tin đã thay đổi với 10 bổ sung3 xóa
  1. 10 3
      TEAMModelOS/Controllers/Exam/ExamController.cs

+ 10 - 3
TEAMModelOS/Controllers/Exam/ExamController.cs

@@ -202,7 +202,7 @@ namespace TEAMModelOS.Controllers
             return builder.Data(record).build();
         }
 
-        public static void autoMark(List<ItemInfo> items ,List<Answer> stdAnswers, List<Answer> stuAnswers ,MarkConfig markConfig) {
+        public static List<Answer> autoMark(List<ItemInfo> items ,List<Answer> stdAnswers, List<Answer> stuAnswers ,MarkConfig markConfig) {
             int size = stuAnswers.Count;
             for (int i = 0; i < size; i++) {
                 //客观题
@@ -266,12 +266,19 @@ namespace TEAMModelOS.Controllers
                     else {
                         List<string> stuAns = stuAnswers[i].ans;
                         Answer stdAnswer = stdAnswers.Where(x => x.num == stuAnswers[i].num).FirstOrDefault();
-                        if (stdAnswer != null&&stdAnswer.ans.IsNotEmpty()&& stuAns.IsNotEmpty()) { 
-                            
+                        if (stdAnswer != null&&stdAnswer.ans.IsNotEmpty()&& stuAns.IsNotEmpty()) {
+                            if (stuAns[0].Equals(stdAnswer.ans[0]))
+                            {
+                                stuAnswers[i].score = stdAnswer.score;
+                            }
+                            else {
+                                stuAnswers[i].score = 0;
+                            }
                         }
                     }
                 }
             }
+            return stuAnswers;
         }
         /// <summary>
         /// 生成题目