Browse Source

自动阅卷分数

CrazyIter 4 years ago
parent
commit
b6550ca452
1 changed files with 10 additions and 3 deletions
  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();
             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;
             int size = stuAnswers.Count;
             for (int i = 0; i < size; i++) {
             for (int i = 0; i < size; i++) {
                 //客观题
                 //客观题
@@ -266,12 +266,19 @@ namespace TEAMModelOS.Controllers
                     else {
                     else {
                         List<string> stuAns = stuAnswers[i].ans;
                         List<string> stuAns = stuAnswers[i].ans;
                         Answer stdAnswer = stdAnswers.Where(x => x.num == stuAnswers[i].num).FirstOrDefault();
                         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>
         /// <summary>
         /// 生成题目
         /// 生成题目