From 32ec64370ad5af7df86d59acdc134e697d936db2 Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期一, 23 九月 2024 20:41:11 +0800 Subject: [PATCH] 课目管理 --- src/main/java/com/mindskip/xzs/controller/admin/EducationController.java | 50 +++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 45 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/mindskip/xzs/controller/admin/EducationController.java b/src/main/java/com/mindskip/xzs/controller/admin/EducationController.java index bd18ee5..3ecde91 100644 --- a/src/main/java/com/mindskip/xzs/controller/admin/EducationController.java +++ b/src/main/java/com/mindskip/xzs/controller/admin/EducationController.java @@ -1,6 +1,8 @@ package com.mindskip.xzs.controller.admin; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; import com.mindskip.xzs.base.BaseApiController; import com.mindskip.xzs.base.RestResponse; import com.mindskip.xzs.domain.ExamPaperSubject; @@ -12,11 +14,14 @@ import com.mindskip.xzs.domain.vo.SubjectDeptVO; import com.mindskip.xzs.repository.DepartmentMapper; import com.mindskip.xzs.repository.SubjectDeptMapper; +import com.mindskip.xzs.repository.SubjectMapper; import com.mindskip.xzs.service.*; import com.mindskip.xzs.viewmodel.admin.education.SubjectEditRequestVM; import com.mindskip.xzs.viewmodel.admin.education.SubjectPageRequestVM; import com.mindskip.xzs.vo.SubjectVO; import lombok.RequiredArgsConstructor; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -32,6 +37,7 @@ public class EducationController extends BaseApiController { private final SubjectService subjectService; + private final SubjectMapper subjectMapper; private final SubjectDeptMapper subjectDeptMapper; private final QuestionSubjectService questionSubjectService; private final ExamPaperSubjectService examPaperSubjectService; @@ -52,9 +58,34 @@ return subjectService.add(form); } + @PostMapping("/subject/save") + public RestResponse<Object> save(@RequestBody @Validated Subject form) { + + form.setDeleted(Boolean.FALSE); + try { + subjectMapper.insert(form); + } catch (Exception e) { + return RestResponse.fail(500, "璇剧洰鍚嶄笉鑳介噸澶�"); + } + return RestResponse.ok(); + } + @PostMapping("/subject/edit") public RestResponse<Object> edit(@RequestBody @Validated EditSubjectForm form) { subjectService.edit(form); + return RestResponse.ok(); + } + + @PostMapping("/subject/edit1") + @Transactional(rollbackFor = Exception.class) + public RestResponse<Object> edit1(@RequestBody Subject form) { + form.setDeleted(Boolean.FALSE); + + try { + subjectService.updateById(form); + } catch (Exception e) { + return RestResponse.fail(500, "璇剧洰鍚嶄笉鑳介噸澶�"); + } return RestResponse.ok(); } @@ -62,6 +93,14 @@ public RestResponse<List<Subject>> listByDeptId(@PathVariable("deptId") Integer deptId) { List<Subject> subjects = subjectService.listByDeptId(deptId); return RestResponse.ok(subjects); + } + + @RequestMapping(value = "/subject/page1", method = RequestMethod.POST) + public RestResponse<Object> page(@RequestBody SubjectPageRequestVM model) { + + PageInfo<SubjectVO> page = PageHelper.startPage(model.getPageIndex(), model.getPageSize(), "id desc").doSelectPageInfo(() -> + departmentMapper.page1(model)); + return RestResponse.ok(page); } @RequestMapping(value = "/subject/page", method = RequestMethod.POST) @@ -140,16 +179,17 @@ } + @Transactional(rollbackFor = Exception.class) @RequestMapping(value = "/subject/delete/{id}", method = RequestMethod.POST) public RestResponse delete(@PathVariable Integer id) { - Subject subject = subjectService.selectById(id); - subject.setDeleted(true); - subjectService.updateByIdFilter(subject); + subjectService.deleteById(id); questionSubjectService.removeSubjectId(id); Integer[] ids = examPaperSubjectService.getBySubjectId(id) .stream().map(ExamPaperSubject::getExamPaperId).toArray(Integer[]::new); - examPaperService.removeByIds(ids); - examPaperDepartmentService.removeByExamPaperIds(ids); + if (ids.length > 0) { + examPaperService.removeByIds(ids); + examPaperDepartmentService.removeByExamPaperIds(ids); + } examPaperSubjectService.removeBySubjectId(id); return RestResponse.ok(); } -- Gitblit v1.8.0