From 247cb86585a1d1894596ed18a6c93efecb992946 Mon Sep 17 00:00:00 2001
From: luohairen <3399054449@qq.com>
Date: 星期四, 14 十一月 2024 10:34:27 +0800
Subject: [PATCH] 班级成绩图表分析

---
 src/main/java/com/ycl/jxkg/controller/admin/ExamPaperScoreController.java |   45 +++++++++++++++++++++++++++++++++------------
 1 files changed, 33 insertions(+), 12 deletions(-)

diff --git a/src/main/java/com/ycl/jxkg/controller/admin/ExamPaperScoreController.java b/src/main/java/com/ycl/jxkg/controller/admin/ExamPaperScoreController.java
index 8a31e74..dd9e10d 100644
--- a/src/main/java/com/ycl/jxkg/controller/admin/ExamPaperScoreController.java
+++ b/src/main/java/com/ycl/jxkg/controller/admin/ExamPaperScoreController.java
@@ -1,32 +1,42 @@
 package com.ycl.jxkg.controller.admin;
 
+import com.alibaba.fastjson.JSON;
 import com.github.pagehelper.PageInfo;
 import com.ycl.jxkg.base.BaseApiController;
 import com.ycl.jxkg.base.Result;
 import com.ycl.jxkg.domain.entity.ExamPaperScore;
-import com.ycl.jxkg.domain.vo.admin.exam.ExamPaperEditRequestVO;
+import com.ycl.jxkg.domain.entity.User;
+import com.ycl.jxkg.domain.vo.PaperFixQuestionVO;
+import com.ycl.jxkg.domain.vo.admin.exam.ExamPaperInfoVO;
+import com.ycl.jxkg.domain.vo.admin.exam.ExamPaperMarkNavbarVO;
+import com.ycl.jxkg.domain.vo.admin.exam.ExamPaperScoreVO;
 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.admin.paper.UserAnswerPageRequestVO;
 import com.ycl.jxkg.domain.vo.student.exampaper.ExamPaperAnswerExportVO;
 import com.ycl.jxkg.domain.vo.student.exampaper.ExamPaperAnswerPageResponseVO;
+import com.ycl.jxkg.domain.vo.student.exampaper.UserAnswerPageResponseVO;
 import com.ycl.jxkg.service.ExamPaperScoreService;
-import com.ycl.jxkg.service.ExamPaperService;
+import com.ycl.jxkg.service.UserService;
 import com.ycl.jxkg.utils.ExcelUtils;
 import lombok.RequiredArgsConstructor;
 import lombok.SneakyThrows;
+import org.springframework.beans.BeanUtils;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletResponse;
 import java.util.List;
+import java.util.Objects;
 
+/**
+ * @author gonghl
+ */
 @RequiredArgsConstructor
 @RestController("AdminExamPaperAnswerController")
 @RequestMapping(value = "/api/admin/examPaperAnswer")
 public class ExamPaperScoreController extends BaseApiController {
 
     private final ExamPaperScoreService examPaperScoreService;
-    private final ExamPaperService examPaperService;
+    private final UserService userService;
 
     @PostMapping("/pageExamPaper")
     public Result<PageInfo<ExamPaperAnswerPageResponseVO>> pageExamPaper(@RequestBody ExamPaperAnswerPageRequestVO model) {
@@ -38,6 +48,11 @@
         return Result.ok(examPaperScoreService.adminPage(model));
     }
 
+    @PostMapping("/pageUser")
+    public Result<PageInfo<UserAnswerPageResponseVO>> pageUser(@RequestBody UserAnswerPageRequestVO model) {
+        return Result.ok(examPaperScoreService.pageUser(model));
+    }
+
     @RequestMapping(value = "/exportExcel", method = RequestMethod.POST)
     @SneakyThrows
     public void exportExcel(ExamPaperAnswerPageRequestVO model, HttpServletResponse response) {
@@ -46,14 +61,20 @@
     }
 
     @PostMapping("/read/{id}")
-    public Result<ExamPaperReadVO> read(@PathVariable Integer id) {
+    public Result<ExamPaperScoreVO> read(@PathVariable Integer id) {
         ExamPaperScore examPaperScore = examPaperScoreService.getById(id);
-        ExamPaperReadVO vm = new ExamPaperReadVO();
-        ExamPaperEditRequestVO paper = examPaperService.examPaperToVM(examPaperScore.getPaperId());
-        ExamPaperSubmitVO answer = examPaperScoreService.examPaperAnswerToVM(examPaperScore.getId());
-        vm.setPaper(paper);
-        vm.setAnswer(answer);
-        return Result.ok(vm);
+        ExamPaperScoreVO examPaperScoreVO = new ExamPaperScoreVO();
+        BeanUtils.copyProperties(examPaperScore, examPaperScoreVO);
+        User user = userService.getById(examPaperScore.getUserId());
+        examPaperScoreVO.setUserName(Objects.nonNull(user) ? user.getRealName() : "鐢ㄦ埛宸叉敞閿�");
+        examPaperScoreVO.setNavbar(JSON.parseArray(examPaperScore.getNavbar(), ExamPaperMarkNavbarVO.class));
+        examPaperScoreVO.setTitleItems(JSON.parseArray(examPaperScore.getPaperContent(), PaperFixQuestionVO.class));
+        return Result.ok(examPaperScoreVO);
+    }
+
+    @PostMapping("/getExamPaperInfo/{id}")
+    public Result<ExamPaperInfoVO> getExamPaperInfo(@PathVariable Integer id) {
+        return examPaperScoreService.getExamPaperInfo(id);
     }
 
 }

--
Gitblit v1.8.0