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/admin/ExamTemplatesUserCountController.java |   83 +++++++++++++++++++++++++++++++----------
 1 files changed, 62 insertions(+), 21 deletions(-)

diff --git a/src/main/java/com/mindskip/xzs/controller/admin/ExamTemplatesUserCountController.java b/src/main/java/com/mindskip/xzs/controller/admin/ExamTemplatesUserCountController.java
index 1f3375e..5eed6df 100644
--- a/src/main/java/com/mindskip/xzs/controller/admin/ExamTemplatesUserCountController.java
+++ b/src/main/java/com/mindskip/xzs/controller/admin/ExamTemplatesUserCountController.java
@@ -5,14 +5,14 @@
 import com.github.pagehelper.PageInfo;
 import com.mindskip.xzs.base.BaseApiController;
 import com.mindskip.xzs.base.RestResponse;
-import com.mindskip.xzs.domain.ExamPaperAnswer;
-import com.mindskip.xzs.domain.ExamTemplates;
-import com.mindskip.xzs.domain.ExamTemplatesUserCount;
-import com.mindskip.xzs.domain.User;
+import com.mindskip.xzs.domain.*;
 import com.mindskip.xzs.domain.vo.AnswerVO;
 import com.mindskip.xzs.domain.vo.ExamTemplatesUserCountVO;
+import com.mindskip.xzs.domain.vo.TeamplatesUserExcelVO;
 import com.mindskip.xzs.domain.vo.UserCountExcelVO;
+import com.mindskip.xzs.repository.ExamPaperAnswerMapper;
 import com.mindskip.xzs.repository.ExamTemplatesMapper;
+import com.mindskip.xzs.repository.ExamTemplatesUserMapper;
 import com.mindskip.xzs.service.ExamPaperAnswerService;
 import com.mindskip.xzs.service.ExamTemplatesUserCountService;
 import com.mindskip.xzs.service.UserService;
@@ -23,12 +23,8 @@
 import lombok.SneakyThrows;
 import org.springframework.web.bind.annotation.*;
 
-import javax.servlet.ServletOutputStream;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
-import java.io.InputStream;
-import java.io.UnsupportedEncodingException;
-import java.net.URLEncoder;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.stream.Collectors;
@@ -42,12 +38,16 @@
     private final ExamTemplatesMapper examTemplatesMapper;
     private final UserService userService;
     private final ExamPaperAnswerService examPaperAnswerService;
+    private final ExamPaperAnswerMapper examPaperAnswerMapper;
+    private final ExamTemplatesUserMapper examTemplatesUserMapper;
 
-    public ExamTemplatesUserCountController(ExamTemplatesUserCountService examTemplatesUserCountService, ExamTemplatesMapper examTemplatesMapper, UserService userService, ExamPaperAnswerService examPaperAnswerService) {
+    public ExamTemplatesUserCountController(ExamTemplatesUserCountService examTemplatesUserCountService, ExamTemplatesMapper examTemplatesMapper, UserService userService, ExamPaperAnswerService examPaperAnswerService, ExamPaperAnswerMapper examTemplatesUserCountMapper, ExamTemplatesUserMapper examTemplatesUserMapper) {
         this.examTemplatesUserCountService = examTemplatesUserCountService;
         this.examTemplatesMapper = examTemplatesMapper;
         this.userService = userService;
         this.examPaperAnswerService = examPaperAnswerService;
+        this.examPaperAnswerMapper = examTemplatesUserCountMapper;
+        this.examTemplatesUserMapper = examTemplatesUserMapper;
     }
 
     @RequestMapping(value = "/list", method = RequestMethod.POST)
@@ -116,21 +116,62 @@
     @SneakyThrows
     public void exportTemplatesId(@PathVariable("id") Integer id, HttpServletResponse response, HttpServletRequest request) {
         List<UserCountExcelVO> list = examTemplatesUserCountService.getByExamTemplates(id);
-//        response.setContentType("application/vnd.ms-excel");
-//        response.setCharacterEncoding("UTF-8");
-//
-//        String fileName = URLEncoder.encode("1","UTF-8");
-//        response.setHeader("Content-disposition","attachment;filename=" + fileName + ".xlsx");
-//
-//        ServletOutputStream outputStream = response.getOutputStream();
-//        InputStream resourceAsStream = Application.class.getClassLoader().getResourceAsStream("count.xlsx");
-//        EasyExcel.write(outputStream)
-//                .withTemplate(resourceAsStream)
-//                .sheet()
-//                .doFill(list);
         ExcelUtils.export(response,"涓汉缁冧範",list,UserCountExcelVO.class);
     }
 
+    @RequestMapping(value = "/exportRandownTemplatesId/{id}", method = RequestMethod.GET)
+    @SneakyThrows
+    public void exportRandownTemplatesId(@PathVariable("id") Integer id, HttpServletResponse response, HttpServletRequest request) {
+        ExamTemplates byId = examTemplatesMapper.getById(id);
+        List<ExamTemplatesUser> byId1 = examTemplatesUserMapper.getById(id);
+
+        List<ExamTemplatesUserCount> byTemplates = examTemplatesUserCountService.getByTemplates(id);
+        List<Integer> list = byTemplates.stream().map(ExamTemplatesUserCount::getExamPaperId).collect(Collectors.toList());
+        List<Integer> userIds = byId1.stream().map(e->Integer.parseInt(e.getUserId())).collect(Collectors.toList());
+        //鑰冭瘯
+        List<ExamPaperAnswer> result = new ArrayList<>();
+        if(list.size()!=0){
+            result = examPaperAnswerMapper.getResult(list);
+        }
+
+        //鐢ㄦ埛
+        List<User> users = userService.selectByIds(userIds);
+
+        List<TeamplatesUserExcelVO> list1 = new ArrayList<>();
+
+        for (User user : users) {
+            TeamplatesUserExcelVO vo = new TeamplatesUserExcelVO();
+            vo.setName(byId.getName());
+            vo.setUserName(user.getRealName());
+            Boolean str = false;
+            for (ExamPaperAnswer answer: result) {
+                if(user.getId().equals(answer.getCreateUser())){
+                    str = true;
+                    vo.setUserScore(answer.getUserScore() == 0 ? "0" : String.valueOf(answer.getUserScore() / 10));
+                    vo.setPaperScore(answer.getPaperScore() == 0 ? "0" : String.valueOf(answer.getPaperScore() / 10));
+                    vo.setDoTime(answer.getDoTime().toString());
+                    list1.add(vo);
+                    continue;
+                }
+            }
+            if(!str){
+                list1.add(vo);
+            }
+            str = false;
+
+        }
+
+
+        ExcelUtils.export(response,"涓汉缁冧範",list1, TeamplatesUserExcelVO.class);
+    }
+
+    @RequestMapping(value = "/timeOne", method = RequestMethod.GET)
+    @SneakyThrows
+    public void time( HttpServletResponse response, HttpServletRequest request) {
+        List<TeamplatesUserExcelVO> list = examPaperAnswerMapper.getByTimeOne();
+        ExcelUtils.export(response,"涓汉缁冧範",list,TeamplatesUserExcelVO.class);
+    }
+
 
 
 }

--
Gitblit v1.8.0