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/ExamPaperController.java | 75 ++++++++++++++++++++++++------------- 1 files changed, 48 insertions(+), 27 deletions(-) diff --git a/src/main/java/com/ycl/jxkg/controller/admin/ExamPaperController.java b/src/main/java/com/ycl/jxkg/controller/admin/ExamPaperController.java index eb27aa8..947e312 100644 --- a/src/main/java/com/ycl/jxkg/controller/admin/ExamPaperController.java +++ b/src/main/java/com/ycl/jxkg/controller/admin/ExamPaperController.java @@ -1,27 +1,30 @@ 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.ExamPaper; +import com.ycl.jxkg.domain.entity.ExamPaperQuestion; import com.ycl.jxkg.domain.form.ExamPaperForm; +import com.ycl.jxkg.domain.vo.admin.exam.ExamPaperEditRequestVO; +import com.ycl.jxkg.domain.vo.admin.exam.ExamPaperPageRequestVO; +import com.ycl.jxkg.domain.vo.admin.exam.ExamResponseVO; +import com.ycl.jxkg.domain.vo.admin.exam.QuestionExportVO; import com.ycl.jxkg.enums.VisibilityEnum; import com.ycl.jxkg.group.Add; import com.ycl.jxkg.group.Update; import com.ycl.jxkg.mapper.ExamPaperMapper; +import com.ycl.jxkg.service.ExamPaperQuestionService; import com.ycl.jxkg.service.ExamPaperService; -import com.ycl.jxkg.utils.DateTimeUtil; -import com.ycl.jxkg.utils.PageInfoHelper; -import com.ycl.jxkg.domain.vo.admin.exam.ExamPaperPageRequestVO; -import com.ycl.jxkg.domain.vo.admin.exam.ExamPaperEditRequestVO; -import com.ycl.jxkg.domain.vo.admin.exam.ExamResponseVO; -import com.github.pagehelper.PageInfo; import lombok.RequiredArgsConstructor; import org.apache.commons.lang3.StringUtils; -import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; -import javax.validation.Valid; +import javax.servlet.http.HttpServletResponse; import java.util.Date; import java.util.List; @@ -30,24 +33,18 @@ @RestController("AdminExamPaperController") @RequestMapping(value = "/api/admin/exam/paper") public class ExamPaperController extends BaseApiController { - - private final ExamPaperService examPaperService; - - private final ExamPaperMapper baseMapper; + @Autowired + private ExamPaperService examPaperService; + @Autowired + private ExamPaperQuestionService examPaperQuestionService; + @Autowired + private ExamPaperMapper baseMapper; @RequestMapping(value = "/page", method = RequestMethod.POST) public Result<PageInfo<ExamResponseVO>> pageList(@RequestBody ExamPaperPageRequestVO model) { - PageInfo<ExamPaper> pageInfo = examPaperService.page(model); - PageInfo<ExamResponseVO> page = PageInfoHelper.copyMap(pageInfo, e -> { - ExamResponseVO vo = new ExamResponseVO(); - BeanUtils.copyProperties(e, vo); - vo.setVisibility(VisibilityEnum.valueOf(vo.getVisibility()).getCode()+""); - vo.setCreateTime(DateTimeUtil.dateFormat(e.getCreateTime())); - return vo; - }); + PageInfo<ExamResponseVO> page = examPaperService.page(model); return Result.ok(page); } - @RequestMapping(value = "/addPaper", method = RequestMethod.POST) public Result taskExamPageList(@RequestBody @Validated(Add.class) ExamPaperForm form) { @@ -56,20 +53,28 @@ } form.setCreateUser(getCurrentUser().getId()); form.setCreateTime(new Date()); - ExamPaper entity = ExamPaperForm.getEntityByForm(form,null); - examPaperService.save(entity); - return Result.ok(); - } + return examPaperService.addPaper(form); + } @RequestMapping(value = "/edit", method = RequestMethod.POST) public Result edit(@RequestBody @Validated(Update.class) ExamPaperForm form) { if (!StringUtils.isBlank(form.getVisibility())) { form.setVisibility(VisibilityEnum.fromCode(form.getVisibility()).getName()); } - ExamPaper entity = ExamPaperForm.getEntityByForm(form,null); - examPaperService.updateById(entity); + return examPaperService.updateExamPaper(form); + } + + @RequestMapping(value = "/editQuestion", method = RequestMethod.POST) + public Result editQuestion(@RequestBody ExamPaperForm form) { + return Result.ok(); + } + + @RequestMapping(value = "/selectQuestion/{id}", method = RequestMethod.POST) + public Result<ExamPaperQuestion> selectQuestion(@PathVariable Integer id) { + ExamPaperQuestion vo = examPaperQuestionService.selectById(id); + return Result.ok(vo); } @RequestMapping(value = "/select/{id}", method = RequestMethod.POST) @@ -89,4 +94,20 @@ List<ExamPaper> list = examPaperService.myExamPaper(paperType); return Result.ok(list); } + + @GetMapping("/download/importTemplate") + public void importTemplate(HttpServletResponse response) { + examPaperService.importTemplate(response); + } + + @PostMapping("/export") + public void export(@RequestBody QuestionExportVO query, HttpServletResponse response) { + examPaperService.export(query, response); + } + + @PostMapping("/import") + public Result importPaper(@RequestParam("file") MultipartFile file, @RequestParam("examPaper") String form) { + return examPaperService.importPaper(file, JSON.parseObject(form, ExamPaperForm.class)); + } + } -- Gitblit v1.8.0