电商系统开发中商品目录的查找

1.产品类目

电商的商品都是按照一定的目录结构排序的,有根目录和子目录,例如下面100001-100005是产品的根目录,所有的商品都属于这几大类,冰箱(100006)属于家用电器(100001)

2.查找方法

    2.1 先查出一级目录,然后查其子目录,直到查到的是null

    2.2 直接查出目录,往上查父目录,一直查到parent_id是0

3.具体操作

选择从根目录开始往下查,在CategoryService层中添加接口selectAll,其中返回值的类型是返回给前端的responseVo,参数是由CategoryVo组成的List,这样就可以查到所有的category,因为前端不需要category中所有的属性,所有单独写一个categoryVo类

 ResponseVo<List<CategoryVo>> selectAll();

然后再实现类中调用mapper,查到所有category,通过增强for循环遍历所有的list,从中选出parentId为0的category,再将信息复制到categoryVo中剔除不需要的属性,最后将所有符合条件的categoryVo组成一个List返回给前端

public ResponseVo<List<CategoryVo>> selectAll() {
       List<CategoryVo> categoryVoList = new ArrayList<>();
        //查出所有的类目
        List<Category> categories = categoryMapper.selectAll();

        //查出parent_id为0的所有根目录,放入到list中并且返回
        for (Category category : categories) {
            if (category.getParentId() == 0) {
                CategoryVo categoryVo = new CategoryVo();
                //把数据库中category对象的属性拷贝到categoryVo中
                BeanUtils.copyProperties(category, categoryVo);
                categoryVoList.add(categoryVo);
            }
        }

        return ResponseVo.success(categoryVoList);
    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值