浏览代码

feat: add finalMark field to test res

shc 1 年之前
父节点
当前提交
39a59b40b0

+ 16 - 9
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/controller/ApiController.java

@@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.bean.copier.CopyOptions;
 import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.collection.CollectionUtil;
+import cn.hutool.core.date.DatePattern;
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.io.FileUtil;
 import cn.hutool.core.lang.Assert;
@@ -178,6 +179,7 @@ import java.time.LocalDate;
 import java.time.LocalDateTime;
 import java.time.LocalTime;
 import java.time.ZoneId;
+import java.time.format.DateTimeFormatter;
 import java.time.temporal.TemporalAdjusters;
 import java.util.*;
 import java.util.concurrent.TimeUnit;
@@ -4008,21 +4010,26 @@ public class ApiController {
 			LocalDate today = LocalDate.now();
 			for (WmQuiz quiz : quizzes) {
 				Map<String, Object> history = new HashMap<>(3);
-				history.put("quiz", quiz);
-				List<WmPlatformQuizTestResult> quizTestResults = collect.get(quiz.getQuizId());
+
 				// 存在历史答题记录
+				Integer finalMark = null;
+				String expiryDate = null;
+				boolean valid = false;
+
+				List<WmPlatformQuizTestResult> quizTestResults = collect.get(quiz.getQuizId());
 				if (CollUtil.isNotEmpty(quizTestResults)) {
 					// 已经倒序排了, 所以一定是最后的答题结果
 					WmPlatformQuizTestResult historyResult = quizTestResults.get(0);
-					history.put("expiryDate", historyResult.getExpiry());
-					history.put("valid", today.isAfter(historyResult.getExpiry()));
-				}
-				// 不存在答题记录
-				else {
-					history.put("expiryDate", "");
-					history.put("valid", false);
+
+					finalMark = historyResult.getQuizResult().getFinalMark();
+					expiryDate = historyResult.getExpiry().format(DatePattern.CHINESE_DATE_FORMATTER);
+					valid = today.isAfter(historyResult.getExpiry());
 				}
 
+				history.put("quiz", quiz);
+				history.put("finalMark", finalMark);
+				history.put("expiryDate", expiryDate);
+				history.put("valid", false);
 				histories.add(history);
 			}
 		}