欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

五十一.商品管理-SKU检索功能

程序员文章站 2024-02-27 20:45:03
...

由于代码生成器有生成相应的sku查询列表接口,如下:
五十一.商品管理-SKU检索功能
接口路径不变,修改该接口所调用的service层方法,加上相应查询参数,在SkuInfoService接口添加允许有筛选条件的方法,如下:

    /**
     * 根据条件筛选列表
     *
     * @param params
     * @return
     */
    PageUtils queryPageByCondition(Map<String, Object> params);

SkuInfoServiceImpl添加相应的方法实现,如下:

    @Override
    public PageUtils queryPageByCondition(Map<String, Object> params) {
        QueryWrapper<SkuInfoEntity> queryWrapper = new QueryWrapper<>();
        String key = (String) params.get("key");
        if (!StringUtils.isEmpty(key)) {
            queryWrapper.and((wrapper) -> {
                wrapper.eq("sku_id", key).or().like("sku_name", key);
            });
        }

        String catelogId = (String) params.get("catelogId");
        if (!StringUtils.isEmpty(catelogId) && !"0".equalsIgnoreCase(catelogId)) {

            queryWrapper.eq("catalog_id", catelogId);
        }

        String brandId = (String) params.get("brandId");
        if (!StringUtils.isEmpty(brandId) && !"0".equalsIgnoreCase(catelogId)) {
            queryWrapper.eq("brand_id", brandId);
        }

        String min = (String) params.get("min");
        if (!StringUtils.isEmpty(min)) {
            queryWrapper.ge("price", min);
        }

        String max = (String) params.get("max");

        if (!StringUtils.isEmpty(max)) {
            try {
                BigDecimal bigDecimal = new BigDecimal(max);

                if (bigDecimal.compareTo(new BigDecimal("0")) == 1) {
                    queryWrapper.le("price", max);
                }
            } catch (Exception e) {

            }

        }

        IPage<SkuInfoEntity> page = this.page(
                new Query<SkuInfoEntity>().getPage(params),
                queryWrapper
        );

        return new PageUtils(page);
    }

把列表接口原来调用的方法改成编写的新方法,如下:
五十一.商品管理-SKU检索功能
SKU检索功能编写完成。