From 47cd9ecc0eff38ffe6b3b794b2bf197e958f4403 Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期三, 14 五月 2025 15:50:57 +0800 Subject: [PATCH] bug:学员有状态不能修改问题 --- src/main/java/com/mindskip/xzs/service/impl/ExamPaperAnswerServiceImpl.java | 27 ++++++++++++++++++++++++++- 1 files changed, 26 insertions(+), 1 deletions(-) diff --git a/src/main/java/com/mindskip/xzs/service/impl/ExamPaperAnswerServiceImpl.java b/src/main/java/com/mindskip/xzs/service/impl/ExamPaperAnswerServiceImpl.java index 3f362f2..cb7c8be 100644 --- a/src/main/java/com/mindskip/xzs/service/impl/ExamPaperAnswerServiceImpl.java +++ b/src/main/java/com/mindskip/xzs/service/impl/ExamPaperAnswerServiceImpl.java @@ -3,6 +3,7 @@ import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.mindskip.xzs.domain.*; +import com.mindskip.xzs.domain.enums.AnswerInvalidEnum; import com.mindskip.xzs.domain.enums.ExamPaperAnswerStatusEnum; import com.mindskip.xzs.domain.enums.ExamPaperTypeEnum; import com.mindskip.xzs.domain.enums.QuestionTypeEnum; @@ -278,7 +279,7 @@ @Override public PageInfo<ExamPaperAnswer> adminPage(com.mindskip.xzs.viewmodel.admin.paper.ExamPaperAnswerPageRequestVM requestVM) { - return PageHelper.startPage(requestVM.getPageIndex(), requestVM.getPageSize(), "user_score desc").doSelectPageInfo(() -> + return PageHelper.startPage(requestVM.getPageIndex(), requestVM.getPageSize(), "create_time desc").doSelectPageInfo(() -> examPaperAnswerMapper.adminPage(requestVM)); } @@ -401,4 +402,28 @@ return dataByPaper; } } + + @Override + public void maxGrade(ExamPaperAnswer examPaperAnswer, Integer templateId) { + // 鑾峰彇鏌愪竴鍦鸿�冭瘯鏇剧粡鐨勬渶楂樻垚缁� + ExamPaperAnswer maxGrade; + if (Objects.equals(examPaperAnswer.getPaperType(), 7)) { + maxGrade = examPaperAnswerMapper.getTemplateOtherExamAnswer(examPaperAnswer, templateId); + } else { + maxGrade = examPaperAnswerMapper.getPaperOtherExamAnswer(examPaperAnswer); + } + if (Objects.isNull(maxGrade)) { + return; + } + // 鏈鑰冭瘯鍒嗘暟涓嶅涔嬪墠锛屾湰娆℃棤鏁� + if (maxGrade.getUserScore() > examPaperAnswer.getUserScore()) { + // 涔嬪墠鐨勬垚缁╂湁鏁� + maxGrade.setInvalid(AnswerInvalidEnum.VALID); + examPaperAnswerMapper.updateByPrimaryKeySelective(maxGrade); + // 鏈鐨勪笉鏄渶楂樺垎锛屾棤鏁� + examPaperAnswer.setInvalid(AnswerInvalidEnum.INVALID); + examPaperAnswerMapper.updateByPrimaryKeySelective(examPaperAnswer); + } + } + } -- Gitblit v1.8.0