From de723adff546eb1249dd33ab6aa898deb930de75 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期四, 30 五月 2024 11:20:43 +0800
Subject: [PATCH] 编辑试卷时选择部门出现对应的课目

---
 src/main/java/com/mindskip/xzs/service/SubjectService.java               |    8 ++++++++
 src/main/resources/mapper/SubjectMapper.xml                              |   10 ++++++++++
 src/main/java/com/mindskip/xzs/controller/admin/EducationController.java |    7 +++++++
 src/main/java/com/mindskip/xzs/repository/SubjectMapper.java             |    8 ++++++++
 src/main/java/com/mindskip/xzs/service/impl/SubjectServiceImpl.java      |    4 ++++
 5 files changed, 37 insertions(+), 0 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 a6b772d..d7ab8b0 100644
--- a/src/main/java/com/mindskip/xzs/controller/admin/EducationController.java
+++ b/src/main/java/com/mindskip/xzs/controller/admin/EducationController.java
@@ -43,6 +43,12 @@
         return RestResponse.ok(subjects);
     }
 
+    @RequestMapping(value = "/subject/select/dept/{deptId}", method = RequestMethod.GET)
+    public RestResponse<List<Subject>> listByDeptId(@PathVariable("deptId") Integer deptId) {
+        List<Subject> subjects = subjectService.listByDeptId(deptId);
+        return RestResponse.ok(subjects);
+    }
+
     @RequestMapping(value = "/subject/page", method = RequestMethod.POST)
     public RestResponse<PageInfo<SubjectResponseVM>> pageList(@RequestBody SubjectPageRequestVM model) {
         PageInfo<Subject> pageInfo = subjectService.page(model);
@@ -91,6 +97,7 @@
         return RestResponse.ok(vm);
     }
 
+
     @RequestMapping(value = "/subject/delete/{id}", method = RequestMethod.POST)
     public RestResponse delete(@PathVariable Integer id) {
         Subject subject = subjectService.selectById(id);
diff --git a/src/main/java/com/mindskip/xzs/repository/SubjectMapper.java b/src/main/java/com/mindskip/xzs/repository/SubjectMapper.java
index f893e99..f9909a7 100644
--- a/src/main/java/com/mindskip/xzs/repository/SubjectMapper.java
+++ b/src/main/java/com/mindskip/xzs/repository/SubjectMapper.java
@@ -25,4 +25,12 @@
     List<String> selectSubjectName(@Param("ids") List<Integer> ids);
 
     String selectSubjectNameById(Integer id);
+
+    /**
+     * 閮ㄩ棬id鏌ヨ璇剧洰
+     *
+     * @param deptId
+     * @return
+     */
+    List<Subject> listByDeptId(@Param("deptId") Integer deptId);
 }
diff --git a/src/main/java/com/mindskip/xzs/service/SubjectService.java b/src/main/java/com/mindskip/xzs/service/SubjectService.java
index a599082..1069765 100644
--- a/src/main/java/com/mindskip/xzs/service/SubjectService.java
+++ b/src/main/java/com/mindskip/xzs/service/SubjectService.java
@@ -20,4 +20,12 @@
     List<Subject> getNames(String[] names);
 
     List<Subject> selectByIds(Integer[] ids);
+
+    /**
+     * 鏍规嵁閮ㄩ棬id鏌ヨ璇剧洰
+     *
+     * @param deptId
+     * @return
+     */
+    List<Subject> listByDeptId(Integer deptId);
 }
diff --git a/src/main/java/com/mindskip/xzs/service/impl/SubjectServiceImpl.java b/src/main/java/com/mindskip/xzs/service/impl/SubjectServiceImpl.java
index 68cde6a..609b7b1 100644
--- a/src/main/java/com/mindskip/xzs/service/impl/SubjectServiceImpl.java
+++ b/src/main/java/com/mindskip/xzs/service/impl/SubjectServiceImpl.java
@@ -75,4 +75,8 @@
         return subjectMapper.selectByIds(ids);
     }
 
+    @Override
+    public List<Subject> listByDeptId(Integer deptId) {
+        return subjectMapper.listByDeptId(deptId);
+    }
 }
diff --git a/src/main/resources/mapper/SubjectMapper.xml b/src/main/resources/mapper/SubjectMapper.xml
index fac9514..b5bfd26 100644
--- a/src/main/resources/mapper/SubjectMapper.xml
+++ b/src/main/resources/mapper/SubjectMapper.xml
@@ -126,6 +126,16 @@
         where ts.deleted = 0
     </select>
 
+    <select id="listByDeptId" resultMap="BaseResultMap">
+        select ts.id,
+               ts.name
+        from t_subject ts
+                 INNER JOIN t_subject_dept tsd ON tsd.subject_id = ts.id
+            AND tsd.dept_id = #{deptId}
+        where ts.deleted = 0
+    </select>
+
+
     <select id="page" resultMap="BaseResultMap"
             parameterType="com.mindskip.xzs.viewmodel.admin.education.SubjectPageRequestVM">
         SELECT

--
Gitblit v1.8.0