From 16b4725365f3286c2d2a80945e26f35f89b53f24 Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期五, 28 六月 2024 11:37:06 +0800 Subject: [PATCH] answer表改为score表,阅卷代码 --- src/main/java/com/ycl/jxkg/controller/student/ExamPaperAnswerController.java | 89 ++++++++++++++++++++++---------------------- 1 files changed, 44 insertions(+), 45 deletions(-) diff --git a/src/main/java/com/ycl/jxkg/controller/student/ExamPaperAnswerController.java b/src/main/java/com/ycl/jxkg/controller/student/ExamPaperAnswerController.java index f9e0cae..1f3c735 100644 --- a/src/main/java/com/ycl/jxkg/controller/student/ExamPaperAnswerController.java +++ b/src/main/java/com/ycl/jxkg/controller/student/ExamPaperAnswerController.java @@ -3,15 +3,14 @@ import com.ycl.jxkg.base.BaseApiController; import com.ycl.jxkg.base.Result; import com.ycl.jxkg.domain.*; -import com.ycl.jxkg.domain.entity.ExamPaperAnswer; +import com.ycl.jxkg.domain.entity.ExamPaperScore; import com.ycl.jxkg.domain.entity.Subject; import com.ycl.jxkg.domain.entity.User; import com.ycl.jxkg.domain.entity.UserEventLog; -import com.ycl.jxkg.domain.vo.ExamSubmitVO; import com.ycl.jxkg.enums.ExamPaperAnswerStatusEnum; import com.ycl.jxkg.event.CalculateExamPaperAnswerCompleteEvent; import com.ycl.jxkg.event.UserEvent; -import com.ycl.jxkg.service.ExamPaperAnswerService; +import com.ycl.jxkg.service.ExamPaperScoreService; import com.ycl.jxkg.service.ExamPaperService; import com.ycl.jxkg.service.SubjectService; import com.ycl.jxkg.utils.DateTimeUtil; @@ -26,7 +25,6 @@ import lombok.RequiredArgsConstructor; import org.springframework.beans.BeanUtils; import org.springframework.context.ApplicationEventPublisher; -import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; @@ -37,7 +35,7 @@ @RequestMapping(value = "/api/student/exampaper/answer") public class ExamPaperAnswerController extends BaseApiController { - private final ExamPaperAnswerService examPaperAnswerService; + private final ExamPaperScoreService examPaperScoreService; private final ExamPaperService examPaperService; private final SubjectService subjectService; private final ApplicationEventPublisher eventPublisher; @@ -46,17 +44,17 @@ @RequestMapping(value = "/pageList", method = RequestMethod.POST) public Result<PageInfo<ExamPaperAnswerPageResponseVO>> pageList(@RequestBody @Valid ExamPaperAnswerPageVO model) { model.setCreateUser(getCurrentUser().getId()); - PageInfo<ExamPaperAnswer> pageInfo = examPaperAnswerService.studentPage(model); + PageInfo<ExamPaperScore> pageInfo = examPaperScoreService.studentPage(model); PageInfo<ExamPaperAnswerPageResponseVO> page = PageInfoHelper.copyMap(pageInfo, e -> { ExamPaperAnswerPageResponseVO vo = new ExamPaperAnswerPageResponseVO(); - BeanUtils.copyProperties(e, vo); - Subject subject = subjectService.getById(vo.getSubjectId()); - vo.setDoTime(ExamUtil.secondToVM(e.getDoTime())); - vo.setSystemScore(ExamUtil.scoreToVM(e.getSystemScore())); - vo.setUserScore(ExamUtil.scoreToVM(e.getUserScore())); - vo.setPaperScore(ExamUtil.scoreToVM(e.getPaperScore())); - vo.setSubjectName(subject.getName()); - vo.setCreateTime(DateTimeUtil.dateFormat(e.getCreateTime())); +// BeanUtils.copyProperties(e, vo); +// Subject subject = subjectService.getById(vo.getSubjectId()); +// vo.setDoTime(ExamUtil.secondToVM(e.getDoTime())); +// vo.setSystemScore(ExamUtil.scoreToVM(e.getSystemScore())); +// vo.setUserScore(ExamUtil.scoreToVM(e.getUserScore())); +// vo.setPaperScore(ExamUtil.scoreToVM(e.getPaperScore())); +// vo.setSubjectName(subject.getName()); +// vo.setCreateTime(DateTimeUtil.dateFormat(e.getCreateTime())); return vo; }); return Result.ok(page); @@ -66,50 +64,51 @@ @RequestMapping(value = "/answerSubmit", method = RequestMethod.POST) public Result answerSubmit(@RequestBody @Valid ExamPaperSubmitVO examPaperSubmitVO) { User user = getCurrentUser(); - ExamPaperAnswerInfo examPaperAnswerInfo = examPaperAnswerService.calculateExamPaperAnswer(examPaperSubmitVO, user); + ExamPaperAnswerInfo examPaperAnswerInfo = examPaperScoreService.calculateExamPaperAnswer(examPaperSubmitVO, user); if (null == examPaperAnswerInfo) { return Result.fail(2, "璇曞嵎涓嶈兘閲嶅鍋�"); } - ExamPaperAnswer examPaperAnswer = examPaperAnswerInfo.getExamPaperAnswer(); - Integer userScore = examPaperAnswer.getUserScore(); - String scoreVm = ExamUtil.scoreToVM(userScore); - UserEventLog userEventLog = new UserEventLog(user.getId(), user.getUserName(), user.getRealName(), new Date()); - String content = user.getUserName() + " 鎻愪氦璇曞嵎锛�" + examPaperAnswerInfo.getExamPaper().getName() - + " 寰楀垎锛�" + scoreVm - + " 鑰楁椂锛�" + ExamUtil.secondToVM(examPaperAnswer.getDoTime()); - userEventLog.setContent(content); - eventPublisher.publishEvent(new CalculateExamPaperAnswerCompleteEvent(examPaperAnswerInfo)); - eventPublisher.publishEvent(new UserEvent(userEventLog)); - return Result.ok(scoreVm); +// ExamPaperScore examPaperScore = examPaperAnswerInfo.getExamPaperScore(); +// Integer userScore = examPaperScore.getUserScore(); +// String scoreVm = ExamUtil.scoreToVM(userScore); +// UserEventLog userEventLog = new UserEventLog(user.getId(), user.getUserName(), user.getRealName(), new Date()); +// String content = user.getUserName() + " 鎻愪氦璇曞嵎锛�" + examPaperAnswerInfo.getExamPaper().getName() +// + " 寰楀垎锛�" + scoreVm +// + " 鑰楁椂锛�" + ExamUtil.secondToVM(examPaperScore.getDoTime()); +// userEventLog.setContent(content); +// eventPublisher.publishEvent(new CalculateExamPaperAnswerCompleteEvent(examPaperAnswerInfo)); +// eventPublisher.publishEvent(new UserEvent(userEventLog)); +// return Result.ok(scoreVm); + return Result.ok(); } @RequestMapping(value = "/edit", method = RequestMethod.POST) public Result edit(@RequestBody @Valid ExamPaperSubmitVO examPaperSubmitVO) { - boolean notJudge = examPaperSubmitVO.getAnswerItems().stream().anyMatch(i -> i.getDoRight() == null && i.getScore() == null); - if (notJudge) { - return Result.fail(2, "鏈夋湭鎵规敼棰樼洰"); - } - - ExamPaperAnswer examPaperAnswer = examPaperAnswerService.getById(examPaperSubmitVO.getId()); - ExamPaperAnswerStatusEnum examPaperAnswerStatusEnum = ExamPaperAnswerStatusEnum.fromCode(examPaperAnswer.getStatus()); - if (examPaperAnswerStatusEnum == ExamPaperAnswerStatusEnum.Complete) { - return Result.fail(3, "璇曞嵎宸插畬鎴�"); - } - String score = examPaperAnswerService.judge(examPaperSubmitVO); - User user = getCurrentUser(); - UserEventLog userEventLog = new UserEventLog(user.getId(), user.getUserName(), user.getRealName(), new Date()); - String content = user.getUserName() + " 鎵规敼璇曞嵎锛�" + examPaperAnswer.getPaperName() + " 寰楀垎锛�" + score; - userEventLog.setContent(content); - eventPublisher.publishEvent(new UserEvent(userEventLog)); +// boolean notJudge = examPaperSubmitVO.getAnswerItems().stream().anyMatch(i -> i.getDoRight() == null && i.getScore() == null); +// if (notJudge) { +// return Result.fail(2, "鏈夋湭鎵规敼棰樼洰"); +// } +// +// ExamPaperScore examPaperScore = examPaperScoreService.getById(examPaperSubmitVO.getId()); +// ExamPaperAnswerStatusEnum examPaperAnswerStatusEnum = ExamPaperAnswerStatusEnum.fromCode(examPaperScore.getStatus()); +// if (examPaperAnswerStatusEnum == ExamPaperAnswerStatusEnum.Complete) { +// return Result.fail(3, "璇曞嵎宸插畬鎴�"); +// } + String score = examPaperScoreService.judge(examPaperSubmitVO); +// User user = getCurrentUser(); +// UserEventLog userEventLog = new UserEventLog(user.getId(), user.getUserName(), user.getRealName(), new Date()); +// String content = user.getUserName() + " 鎵规敼璇曞嵎锛�" + examPaperScore.get() + " 寰楀垎锛�" + score; +// userEventLog.setContent(content); +// eventPublisher.publishEvent(new UserEvent(userEventLog)); return Result.ok(score); } @RequestMapping(value = "/read/{id}", method = RequestMethod.POST) public Result<ExamPaperReadVO> read(@PathVariable Integer id) { - ExamPaperAnswer examPaperAnswer = examPaperAnswerService.getById(id); + ExamPaperScore examPaperScore = examPaperScoreService.getById(id); ExamPaperReadVO vm = new ExamPaperReadVO(); - ExamPaperEditRequestVO paper = examPaperService.examPaperToVM(examPaperAnswer.getExamPaperId()); - ExamPaperSubmitVO answer = examPaperAnswerService.examPaperAnswerToVM(examPaperAnswer.getId()); + ExamPaperEditRequestVO paper = examPaperService.examPaperToVM(examPaperScore.getPaperId()); + ExamPaperSubmitVO answer = examPaperScoreService.examPaperAnswerToVM(examPaperScore.getId()); vm.setPaper(paper); vm.setAnswer(answer); return Result.ok(vm); -- Gitblit v1.8.0