|
@@ -26,6 +26,7 @@ import com.qunzhixinxi.hnqz.admin.api.constant.CacheConstants;
|
|
|
import com.qunzhixinxi.hnqz.admin.api.constant.UpmsType;
|
|
|
import com.qunzhixinxi.hnqz.admin.api.dto.UserDTO;
|
|
|
import com.qunzhixinxi.hnqz.admin.api.dto.WmPkgDTO;
|
|
|
+import com.qunzhixinxi.hnqz.admin.api.dto.WmQuizDTO;
|
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.SysDept;
|
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.SysDeptCsm;
|
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.SysDictItem;
|
|
@@ -3999,18 +4000,18 @@ public class ApiController {
|
|
|
// 获取平台的问卷 和 答题的情况
|
|
|
List<WmQuiz> quizzes = quizService.listEntQuizzes(upmsConfig.getPltEntId(), UpmsState.QuizState.RELEASE);
|
|
|
List<Map<String, Object>> histories = new LinkedList<>();
|
|
|
- if (CollUtil.isNotEmpty(quizzes)){
|
|
|
+ if (CollUtil.isNotEmpty(quizzes)) {
|
|
|
List<Integer> quizIds = quizzes.stream().mapToInt(WmQuiz::getQuizId).boxed().distinct().collect(Collectors.toList());
|
|
|
Map<Integer, List<WmPlatformQuizTestResult>> collect =
|
|
|
platformQuizTestResultService.listPltQuizResults(user.getId(), quizIds).stream()
|
|
|
.collect(Collectors.groupingBy(WmPlatformQuizTestResult::getQuizId));
|
|
|
LocalDate today = LocalDate.now();
|
|
|
- for (WmQuiz quiz : quizzes){
|
|
|
+ for (WmQuiz quiz : quizzes) {
|
|
|
Map<String, Object> history = new HashMap<>(3);
|
|
|
history.put("quiz", quiz);
|
|
|
List<WmPlatformQuizTestResult> quizTestResults = collect.get(quiz.getQuizId());
|
|
|
// 存在历史答题记录
|
|
|
- if (CollUtil.isNotEmpty(quizTestResults)){
|
|
|
+ if (CollUtil.isNotEmpty(quizTestResults)) {
|
|
|
// 已经倒序排了, 所以一定是最后的答题结果
|
|
|
WmPlatformQuizTestResult historyResult = quizTestResults.get(0);
|
|
|
history.put("expiryDate", historyResult.getExpiry());
|
|
@@ -4034,6 +4035,21 @@ public class ApiController {
|
|
|
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 用户保存平台试卷测试结果
|
|
|
+ *
|
|
|
+ * @param resource 测试结果
|
|
|
+ * @return 保存结果
|
|
|
+ */
|
|
|
+ @SysLog(value = "用户保存平台试卷测试结果")
|
|
|
+ @PostMapping(value = "/quiz/plt/test/result/create")
|
|
|
+ public R<Boolean> createUserPltQuizTestResult(@Valid @RequestBody WmQuizDTO.OnUserPltTestResultCreate resource) {
|
|
|
+ HnqzUser user = SecurityUtils.getUser();
|
|
|
+
|
|
|
+ Boolean succ = platformQuizTestResultService.createQuizTestResult(resource.getQuizResults(), user);
|
|
|
+
|
|
|
+ return succ ? R.ok(true, "保存测试结果成功") : R.failed(false, "保存测试结果失败");
|
|
|
+ }
|
|
|
|
|
|
|
|
|
}
|