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()); 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); } 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); } 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); } } 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}