From 239c97e6701bc5ee5a1b9b890003dd6cd2132f48 Mon Sep 17 00:00:00 2001 From: qirong <2032486488@qq.com> Date: 星期一, 19 六月 2023 10:20:54 +0800 Subject: [PATCH] 统计 --- src/main/java/com/mindskip/xzs/controller/admin/ExamPaperAnswerController.java | 14 ++++++++++++-- 1 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/mindskip/xzs/controller/admin/ExamPaperAnswerController.java b/src/main/java/com/mindskip/xzs/controller/admin/ExamPaperAnswerController.java index 5db2e13..efcfcdf 100644 --- a/src/main/java/com/mindskip/xzs/controller/admin/ExamPaperAnswerController.java +++ b/src/main/java/com/mindskip/xzs/controller/admin/ExamPaperAnswerController.java @@ -15,6 +15,8 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.util.stream.Collectors; + @RestController("AdminExamPaperAnswerController") @RequestMapping(value = "/api/admin/examPaperAnswer") public class ExamPaperAnswerController extends BaseApiController { @@ -35,9 +37,12 @@ public RestResponse<PageInfo<ExamPaperAnswerPageResponseVM>> pageJudgeList(@RequestBody ExamPaperAnswerPageRequestVM model) { PageInfo<ExamPaperAnswer> pageInfo = examPaperAnswerService.adminPage(model); PageInfo<ExamPaperAnswerPageResponseVM> page = PageInfoHelper.copyMap(pageInfo, e -> { - User user = userService.selectById(e.getCreateUser()); -// if(user.getUserName().) + ExamPaperAnswerPageResponseVM vm = modelMapper.map(e, ExamPaperAnswerPageResponseVM.class); + User user = userService.selectByIdName(e.getCreateUser(), model.getUserName()); + if (user == null) { + return null; + } Subject subject = subjectService.selectById(vm.getSubjectId()); vm.setDoTime(ExamUtil.secondToVM(e.getDoTime())); vm.setSystemScore(ExamUtil.scoreToVM(e.getSystemScore())); @@ -49,6 +54,11 @@ vm.setUserName(user.getUserName()); return vm; }); + page.setList(page.getList().stream().filter(e -> e != null).collect(Collectors.toList())); + if(page.getSize()>0){ + Double avg = page.getList().stream().mapToInt(ExamPaperAnswerPageResponseVM -> Integer.parseInt(ExamPaperAnswerPageResponseVM.getUserScore())).average().getAsDouble(); + page.getList().get(0).setAvgSource(avg); + } return RestResponse.ok(page); } -- Gitblit v1.8.0