From c50e176c4a6b9331d2d1c0520bafb18f54f0dee6 Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期五, 08 三月 2024 17:35:10 +0800 Subject: [PATCH] 部门增加管理员 --- src/main/java/com/mindskip/xzs/controller/student/ExamPaperAnswerController.java | 30 ++++++++++++++++++++++++------ 1 files changed, 24 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/mindskip/xzs/controller/student/ExamPaperAnswerController.java b/src/main/java/com/mindskip/xzs/controller/student/ExamPaperAnswerController.java index 52c3abc..32717f9 100644 --- a/src/main/java/com/mindskip/xzs/controller/student/ExamPaperAnswerController.java +++ b/src/main/java/com/mindskip/xzs/controller/student/ExamPaperAnswerController.java @@ -6,9 +6,7 @@ import com.mindskip.xzs.domain.enums.ExamPaperAnswerStatusEnum; import com.mindskip.xzs.event.CalculateExamPaperAnswerCompleteEvent; import com.mindskip.xzs.event.UserEvent; -import com.mindskip.xzs.service.ExamPaperAnswerService; -import com.mindskip.xzs.service.ExamPaperService; -import com.mindskip.xzs.service.SubjectService; +import com.mindskip.xzs.service.*; import com.mindskip.xzs.utility.DateTimeUtil; import com.mindskip.xzs.utility.ExamUtil; import com.mindskip.xzs.utility.PageInfoHelper; @@ -24,6 +22,7 @@ import javax.validation.Valid; import java.util.Date; +import java.util.stream.Collectors; @RestController("StudentExamPaperAnswerController") @RequestMapping(value = "/api/student/exampaper/answer") @@ -33,13 +32,17 @@ private final ExamPaperService examPaperService; private final SubjectService subjectService; private final ApplicationEventPublisher eventPublisher; + private final ExamPaperSubjectService examPaperSubjectService; + private final ExamTemplatesUserCountService examTemplatesUserCountService; @Autowired - public ExamPaperAnswerController(ExamPaperAnswerService examPaperAnswerService, ExamPaperService examPaperService, SubjectService subjectService, ApplicationEventPublisher eventPublisher) { + public ExamPaperAnswerController(ExamPaperAnswerService examPaperAnswerService, ExamPaperService examPaperService, SubjectService subjectService, ApplicationEventPublisher eventPublisher, ExamPaperSubjectService examPaperSubjectService, ExamTemplatesUserCountService examTemplatesUserCountService) { this.examPaperAnswerService = examPaperAnswerService; this.examPaperService = examPaperService; this.subjectService = subjectService; this.eventPublisher = eventPublisher; + this.examPaperSubjectService = examPaperSubjectService; + this.examTemplatesUserCountService = examTemplatesUserCountService; } @@ -49,12 +52,19 @@ PageInfo<ExamPaperAnswer> pageInfo = examPaperAnswerService.studentPage(model); PageInfo<ExamPaperAnswerPageResponseVM> page = PageInfoHelper.copyMap(pageInfo, e -> { ExamPaperAnswerPageResponseVM vm = modelMapper.map(e, ExamPaperAnswerPageResponseVM.class); - Subject subject = subjectService.selectById(vm.getSubjectId()); + ExamPaperAnswer examPaperAnswer = examPaperAnswerService.getById(vm.getId()); + Integer[] ids = examPaperSubjectService.getByExamPaperId(examPaperAnswer.getExamPaperId()) + .stream().map(ExamPaperSubject::getSubjectId).toArray(Integer[]::new); + String name = ""; + if(ids.length>0){ + name = subjectService.selectByIds(ids) + .stream().map(Subject::getName).collect(Collectors.joining(",")); + } vm.setDoTime(ExamUtil.secondToVM(e.getDoTime())); vm.setSystemScore(ExamUtil.scoreToVM(e.getSystemScore())); vm.setUserScore(ExamUtil.scoreToVM(e.getUserScore())); vm.setPaperScore(ExamUtil.scoreToVM(e.getPaperScore())); - vm.setSubjectName(subject.getName()); + vm.setSubjectName(name); vm.setCreateTime(DateTimeUtil.dateFormat(e.getCreateTime())); return vm; }); @@ -79,6 +89,14 @@ userEventLog.setContent(content); eventPublisher.publishEvent(new CalculateExamPaperAnswerCompleteEvent(examPaperAnswerInfo)); eventPublisher.publishEvent(new UserEvent(userEventLog)); + //棣栭〉闅忔満璇曞嵎鎿嶄綔 + if(examPaperSubmitVM.getTemplatesId() != null){ + ExamTemplatesUserCount examTemplatesUserCount = new ExamTemplatesUserCount(); + examTemplatesUserCount.setUserId(user.getId()); + examTemplatesUserCount.setExamPaperId(examPaperSubmitVM.getId()); + examTemplatesUserCount.setExamTemplatesId(examPaperSubmitVM.getTemplatesId()); + examTemplatesUserCountService.add(examTemplatesUserCount); + } return RestResponse.ok(scoreVm); } -- Gitblit v1.8.0