From 541e77765ef787c48c4b0f694b499a4fc5196d6e Mon Sep 17 00:00:00 2001
From: 龚焕茏 <2842157468@qq.com>
Date: 星期三, 26 六月 2024 16:13:16 +0800
Subject: [PATCH] feat:考试监控
---
src/main/java/com/ycl/jxkg/controller/admin/ExamPaperAnswerController.java | 75 +++++++++++++++++++------------------
1 files changed, 39 insertions(+), 36 deletions(-)
diff --git a/src/main/java/com/ycl/jxkg/controller/admin/ExamPaperAnswerController.java b/src/main/java/com/ycl/jxkg/controller/admin/ExamPaperAnswerController.java
index 30937ca..28d7d0d 100644
--- a/src/main/java/com/ycl/jxkg/controller/admin/ExamPaperAnswerController.java
+++ b/src/main/java/com/ycl/jxkg/controller/admin/ExamPaperAnswerController.java
@@ -1,56 +1,59 @@
package com.ycl.jxkg.controller.admin;
+import com.github.pagehelper.PageInfo;
import com.ycl.jxkg.base.BaseApiController;
import com.ycl.jxkg.base.Result;
-import com.ycl.jxkg.domain.ExamPaperAnswer;
-import com.ycl.jxkg.domain.Subject;
-import com.ycl.jxkg.domain.User;
-import com.ycl.jxkg.service.*;
-import com.ycl.jxkg.utils.DateTimeUtil;
-import com.ycl.jxkg.utils.ExamUtil;
-import com.ycl.jxkg.utils.PageInfoHelper;
-import com.ycl.jxkg.vo.student.exampaper.ExamPaperAnswerPageResponseVO;
-import com.ycl.jxkg.vo.admin.paper.ExamPaperAnswerPageRequestVO;
-import com.github.pagehelper.PageInfo;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
+import com.ycl.jxkg.domain.entity.ExamPaperAnswer;
+import com.ycl.jxkg.domain.vo.admin.exam.ExamPaperEditRequestVO;
+import com.ycl.jxkg.domain.vo.admin.paper.ExamPaperAnswerPageRequestVO;
+import com.ycl.jxkg.domain.vo.student.exam.ExamPaperReadVO;
+import com.ycl.jxkg.domain.vo.student.exam.ExamPaperSubmitVO;
+import com.ycl.jxkg.domain.vo.student.exampaper.ExamPaperAnswerExportVO;
+import com.ycl.jxkg.domain.vo.student.exampaper.ExamPaperAnswerPageResponseVO;
+import com.ycl.jxkg.service.ExamPaperAnswerService;
+import com.ycl.jxkg.service.ExamPaperService;
+import com.ycl.jxkg.utils.ExcelUtils;
+import lombok.RequiredArgsConstructor;
+import lombok.SneakyThrows;
import org.springframework.web.bind.annotation.*;
+import javax.servlet.http.HttpServletResponse;
+import java.util.List;
+
+@RequiredArgsConstructor
@RestController("AdminExamPaperAnswerController")
@RequestMapping(value = "/api/admin/examPaperAnswer")
public class ExamPaperAnswerController extends BaseApiController {
private final ExamPaperAnswerService examPaperAnswerService;
- private final SubjectService subjectService;
- private final UserService userService;
+ private final ExamPaperService examPaperService;
- @Autowired
- public ExamPaperAnswerController(ExamPaperAnswerService examPaperAnswerService, SubjectService subjectService, UserService userService) {
- this.examPaperAnswerService = examPaperAnswerService;
- this.subjectService = subjectService;
- this.userService = userService;
+ @PostMapping("/pageExamPaper")
+ public Result<PageInfo<ExamPaperAnswerPageResponseVO>> pageExamPaper(@RequestBody ExamPaperAnswerPageRequestVO model) {
+ return Result.ok(examPaperAnswerService.pageExamPaper(model));
}
-
@RequestMapping(value = "/page", method = RequestMethod.POST)
public Result<PageInfo<ExamPaperAnswerPageResponseVO>> pageJudgeList(@RequestBody ExamPaperAnswerPageRequestVO model) {
- PageInfo<ExamPaperAnswer> pageInfo = examPaperAnswerService.adminPage(model);
- PageInfo<ExamPaperAnswerPageResponseVO> page = PageInfoHelper.copyMap(pageInfo, e -> {
- ExamPaperAnswerPageResponseVO vo = new ExamPaperAnswerPageResponseVO();
- BeanUtils.copyProperties(e, vo);
- Subject subject = subjectService.selectById(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()));
- User user = userService.selectById(e.getCreateUser());
- vo.setUserName(user.getUserName());
- return vo;
- });
- return Result.ok(page);
+ return Result.ok(examPaperAnswerService.adminPage(model));
}
+ @RequestMapping(value = "/exportExcel", method = RequestMethod.POST)
+ @SneakyThrows
+ public void exportExcel(ExamPaperAnswerPageRequestVO model, HttpServletResponse response) {
+ List<ExamPaperAnswerPageResponseVO> list = examPaperAnswerService.list(model);
+ ExcelUtils.exportExcelToTarget(response, "", "鎴愮哗鍒楄〃", list, ExamPaperAnswerExportVO.class);
+ }
+
+ @PostMapping("/read/{id}")
+ public Result<ExamPaperReadVO> read(@PathVariable Integer id) {
+ ExamPaperAnswer examPaperAnswer = examPaperAnswerService.getById(id);
+ ExamPaperReadVO vm = new ExamPaperReadVO();
+ ExamPaperEditRequestVO paper = examPaperService.examPaperToVM(examPaperAnswer.getExamPaperId());
+ ExamPaperSubmitVO answer = examPaperAnswerService.examPaperAnswerToVM(examPaperAnswer.getId());
+ vm.setPaper(paper);
+ vm.setAnswer(answer);
+ return Result.ok(vm);
+ }
}
--
Gitblit v1.8.0