当前位置:   article > 正文

二级分类封装_java查询二级分类并封装

java查询二级分类并封装

一、创建vo

//一级分类
@Data
public class OneSubject {
    private String id;
    private String title;
    private List<TwoSubject> children=new ArrayList<>(); //一个一级分类对应多个二级分类
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
//二级
@Data
public class TwoSubject {
    private String id;
    private String title;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

二、创建Controller

	@GetMapping("subjectList")
    public R subjectList(){
        List<OneSubject> data=subjectService.getOneTwoSubject();
        return R.ok().data("list",data);
    }
  • 1
  • 2
  • 3
  • 4
  • 5

三、创建service

接口

   //获取分类列表
    List<OneSubject> getOneTwoSubject();
  • 1
  • 2

实现类

//获取分类列表
    @Override
    public List<OneSubject> getOneTwoSubject() {
        //1.获取一级分类列表
        QueryWrapper<EduSubject> OneWrapper=new QueryWrapper<>();
        OneWrapper.eq("parent_id", "0");
        List<EduSubject> eduOneSubject = baseMapper.selectList(OneWrapper);

        //2.查询二级分类列表
        QueryWrapper<EduSubject> TwoWrapper=new QueryWrapper<>();
        OneWrapper.ne("parent_id", "0");
        List<EduSubject> eduTwoSubject = baseMapper.selectList(TwoWrapper);

        //3.封装一级分类

        List<OneSubject> finalOneSubject=new ArrayList<>();
        for (int i = 0; i < eduOneSubject.size(); i++) {
            EduSubject eduSubjectOne = eduOneSubject.get(i);
            OneSubject oneSubject = new OneSubject();//
            BeanUtils.copyProperties(eduSubjectOne, oneSubject);
            finalOneSubject.add(oneSubject);


            //4.封装二级分类
            List<TwoSubject> finalTwoSubject=new ArrayList<>();
            for (int m = 0; m < eduTwoSubject.size(); m++) {
                EduSubject eduSubjectTwo = eduTwoSubject.get(m);
                if(eduSubjectTwo.getParentId().equals(eduSubjectOne.getId())){
                    TwoSubject twoSubject=new TwoSubject();
                    BeanUtils.copyProperties(eduSubjectTwo, twoSubject);
                    finalTwoSubject.add(twoSubject);

                }
            }
            oneSubject.setChildren(finalTwoSubject);
        }
        return finalOneSubject;
    }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/686043
推荐阅读
相关标签
  

闽ICP备14008679号