From 2d113b48ea098ed7bc0829d18900dae177bc5844 Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期五, 05 九月 2025 11:09:26 +0800
Subject: [PATCH] 修改查询

---
 ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/mapper/TSubjectMapper.java            |    2 +-
 ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TSubjectController.java    |    7 +++++--
 ruoyi-service/ruoyi-study/src/main/resources/mapper/sutdy/TSubjectMapper.xml                  |   14 +++++++++++++-
 ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TSubjectServiceImpl.java |    4 ++--
 ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/ITSubjectService.java         |    2 +-
 5 files changed, 22 insertions(+), 7 deletions(-)

diff --git a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TSubjectController.java b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TSubjectController.java
index ffa6280..5c3653a 100644
--- a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TSubjectController.java
+++ b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TSubjectController.java
@@ -61,6 +61,7 @@
     public R<PageInfo<SubjectVO>> subjectList(@RequestBody SubjectQuery query) {
         PageInfo<SubjectVO> res = new PageInfo<>(query.getPageNumber(), query.getPageSize());
         List<Integer> integers = new ArrayList<>();
+        int type=0;
         if (StringUtils.hasLength(query.getCategoryName())) {
             // 查询分类id包含的
             List<Integer> collect = categoryService.lambdaQuery().eq(TCategory::getState, 1)
@@ -70,20 +71,22 @@
             List<Integer> collect2 = categoryService.lambdaQuery().eq(TCategory::getState, 1)
                     .eq(TCategory::getType, 2)
                     .like(TCategory::getName, query.getCategoryName()).list()
-                    .stream().map(TCategory::getParentId).collect(Collectors.toList());
+                    .stream().map(TCategory::getId).collect(Collectors.toList());
             collect.addAll(collect2);
             if (collect2.isEmpty()) {
                 if (collect.isEmpty()) {
                     collect.add(-1);
                 }
+                type=1;
                 integers = collect;
             }else{
+                type=2;
                 integers = collect2;
             }
         }
 
         query.setIds(integers);
-        List<SubjectVO> list =  subjectService.listAll(query);
+        List<SubjectVO> list =  subjectService.listAll(query,type);
         for (SubjectVO subjectVO : list) {
             if (subjectVO.getFirstCategory()!=null&&subjectVO.getSecondCategory()!=null){
                 TCategory byId1 = categoryService.getById(subjectVO.getFirstCategory());
diff --git a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/mapper/TSubjectMapper.java b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/mapper/TSubjectMapper.java
index 6ea533a..f329dda 100644
--- a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/mapper/TSubjectMapper.java
+++ b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/mapper/TSubjectMapper.java
@@ -18,5 +18,5 @@
  */
 public interface TSubjectMapper extends BaseMapper<TSubject> {
 
-    List<SubjectVO> listAll(@Param("req") SubjectQuery query);
+    List<SubjectVO> listAll(@Param("req") SubjectQuery query, @Param("type") int type);
 }
diff --git a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/ITSubjectService.java b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/ITSubjectService.java
index 9ca0be1..f0d071f 100644
--- a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/ITSubjectService.java
+++ b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/ITSubjectService.java
@@ -17,6 +17,6 @@
  */
 public interface ITSubjectService extends IService<TSubject> {
 
-    List<SubjectVO> listAll(SubjectQuery query);
+    List<SubjectVO> listAll(SubjectQuery query,int type);
 
 }
diff --git a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TSubjectServiceImpl.java b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TSubjectServiceImpl.java
index ce3eb12..d7cd24e 100644
--- a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TSubjectServiceImpl.java
+++ b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TSubjectServiceImpl.java
@@ -22,7 +22,7 @@
 public class TSubjectServiceImpl extends ServiceImpl<TSubjectMapper, TSubject> implements ITSubjectService {
 
     @Override
-    public List<SubjectVO> listAll(SubjectQuery query) {
-        return this.baseMapper.listAll(query);
+    public List<SubjectVO> listAll(SubjectQuery query,int type) {
+        return this.baseMapper.listAll(query,type);
     }
 }
diff --git a/ruoyi-service/ruoyi-study/src/main/resources/mapper/sutdy/TSubjectMapper.xml b/ruoyi-service/ruoyi-study/src/main/resources/mapper/sutdy/TSubjectMapper.xml
index 2dbd834..4ab24d7 100644
--- a/ruoyi-service/ruoyi-study/src/main/resources/mapper/sutdy/TSubjectMapper.xml
+++ b/ruoyi-service/ruoyi-study/src/main/resources/mapper/sutdy/TSubjectMapper.xml
@@ -34,7 +34,19 @@
         <if test="req.type != null and req.type != ''">
             and `type` like concat('%',#{req.type},'%')
         </if>
-        <if test="null != req.ids and req.ids.size()>0" >
+        <if test="null != req.ids and req.ids.size()>0 and type ==1">
+            and firstCategory in
+            <foreach collection="req.ids" close=")" open="(" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="null != req.ids and req.ids.size()>0 and type ==2">
+            and secondCategory in
+            <foreach collection="req.ids" close=")" open="(" item="item" separator=",">
+                #{item}
+            </foreach>
+        </if>
+        <if test="null != req.ids and req.ids.size()>0 and type ==0">
             and firstCategory in
             <foreach collection="req.ids" close=")" open="(" item="item" separator=",">
                 #{item}

--
Gitblit v1.7.1