From 3ec909b27b3eba956aa9d00cc7a94c179bd04bbf Mon Sep 17 00:00:00 2001 From: 龚焕茏 <2842157468@qq.com> Date: 星期三, 03 七月 2024 18:29:31 +0800 Subject: [PATCH] feat:新增随机时间题目配置 --- src/main/java/com/mindskip/xzs/controller/admin/ExamTemplatesController.java | 52 +++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 37 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/mindskip/xzs/controller/admin/ExamTemplatesController.java b/src/main/java/com/mindskip/xzs/controller/admin/ExamTemplatesController.java index 43dc63d..df1f7a2 100644 --- a/src/main/java/com/mindskip/xzs/controller/admin/ExamTemplatesController.java +++ b/src/main/java/com/mindskip/xzs/controller/admin/ExamTemplatesController.java @@ -3,48 +3,62 @@ import com.github.pagehelper.PageInfo; import com.mindskip.xzs.base.BaseApiController; import com.mindskip.xzs.base.RestResponse; -import com.mindskip.xzs.domain.ExamPaper; +import com.mindskip.xzs.context.WebContext; import com.mindskip.xzs.domain.ExamTemplates; +import com.mindskip.xzs.domain.ExamTemplatesConfig; import com.mindskip.xzs.domain.ExamTemplatesSubject; -import com.mindskip.xzs.domain.User; import com.mindskip.xzs.domain.vo.ExamTemplatesVO; import com.mindskip.xzs.repository.ExamTemplatesSubjectMapper; +import com.mindskip.xzs.service.ExamPaperDepartmentService; +import com.mindskip.xzs.service.ExamTemplatesConfigService; import com.mindskip.xzs.service.ExamTemplatesService; import com.mindskip.xzs.utility.PageInfoHelper; +import com.mindskip.xzs.utility.minio.DateUtils; import com.mindskip.xzs.viewmodel.admin.exam.ExamPaperEditRequestVM; +import lombok.RequiredArgsConstructor; +import org.apache.commons.lang3.ObjectUtils; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.util.List; +import java.util.Objects; +import java.util.stream.Collectors; @RestController("AdminExamTemplatesController") @RequestMapping(value = "/api/admin/exam/templates") +@RequiredArgsConstructor public class ExamTemplatesController extends BaseApiController { private final ExamTemplatesService examTemplatesService; + private final ExamTemplatesConfigService examTemplatesConfigService; private final ExamTemplatesSubjectMapper examTemplatesSubjectMapper; - - public ExamTemplatesController(ExamTemplatesService examTemplatesService, ExamTemplatesSubjectMapper examTemplatesSubjectMapper) { - this.examTemplatesService = examTemplatesService; - this.examTemplatesSubjectMapper = examTemplatesSubjectMapper; - } + private final WebContext webContext; + private final ExamPaperDepartmentService examPaperDepartmentService; @RequestMapping(value = "/edit", method = RequestMethod.POST) public RestResponse edit(@RequestBody @Valid ExamPaperEditRequestVM model) { + model.setCreateUser(getCurrentUser().getId()); examTemplatesService.add(model); return RestResponse.ok(); } @RequestMapping(value = "/list", method = RequestMethod.GET) public RestResponse<PageInfo<ExamTemplatesVO>> list(ExamTemplatesVO examTemplatesVO) throws Exception { - PageInfo<ExamTemplates> pageInfo = examTemplatesService.gets(examTemplatesVO); + // 濡傛灉鏄儴闂ㄧ鐞嗗憳锛岄渶瑕佸仛鏁版嵁鏉冮檺 + examTemplatesVO.setDeptId(ObjectUtils.isNotEmpty(examTemplatesVO.getDeptId()) ? examTemplatesVO.getDeptId() : getAdminDeptIds()); + PageInfo<ExamTemplates> pageInfo = examTemplatesService.getByadmins(examTemplatesVO); PageInfo<ExamTemplatesVO> info = PageInfoHelper.copyMap(pageInfo, e -> { ExamTemplatesVO vo = new ExamTemplatesVO(); vo.setName(e.getName()); vo.setId(e.getId()); vo.setCtime(e.getCtime()); - Integer[] ids = examTemplatesSubjectMapper.getTemplatesId(e.getId()).stream().map(ExamTemplatesSubject::getSubjectId).toArray(Integer[]::new); + + List<ExamTemplatesSubject> subjectList = examTemplatesSubjectMapper.getTemplatesId(e.getId()); + Integer[] ids = subjectList.stream().map(ExamTemplatesSubject::getSubjectId).toArray(Integer[]::new); + String subjectNames = subjectList.stream().map(ExamTemplatesSubject::getSubjectName).collect(Collectors.joining("銆�")); + vo.setSubjectNames(subjectNames); vo.setSubjectId(ids); + vo.setCreateDepartment(examPaperDepartmentService.selectByUserId(e.getCreateUser())); return vo; }); return RestResponse.ok(info); @@ -61,10 +75,18 @@ return RestResponse.ok(); } -// @RequestMapping(value = "/random", method = RequestMethod.POST) -// public RestResponse<Integer> randomExam() throws Exception { -// User user = getCurrentUser(); -// Integer id = examTemplatesService.randomExam(user); -// return RestResponse.ok(id); -// } + @PostMapping("/setConfig") + public RestResponse<Boolean> setConfig(@RequestBody ExamTemplatesConfig examTemplatesConfig) { + if (Objects.isNull(examTemplatesConfig.getId())) { + examTemplatesConfig.setCreateUser(getCurrentUser().getId()); + examTemplatesConfig.setCreateTime(DateUtils.getNowDate()); + } + return RestResponse.ok(examTemplatesConfigService.saveOrUpdate(examTemplatesConfig)); + } + + @GetMapping("/getConfig") + public RestResponse<ExamTemplatesConfig> getConfig() { + return RestResponse.ok(examTemplatesConfigService.getConfig()); + } + } -- Gitblit v1.8.0