diff --git a/book-product/src/main/java/com/bookstore/bookmall/product/controller/SkuInfoController.java b/book-product/src/main/java/com/bookstore/bookmall/product/controller/SkuInfoController.java index 011b7ea..8039333 100644 --- a/book-product/src/main/java/com/bookstore/bookmall/product/controller/SkuInfoController.java +++ b/book-product/src/main/java/com/bookstore/bookmall/product/controller/SkuInfoController.java @@ -37,7 +37,7 @@ public class SkuInfoController { @RequestMapping("/list") //@RequiresPermissions("product:skuinfo:list") public R list(@RequestParam Map params){ - PageUtils page = skuInfoService.queryPage(params); + PageUtils page = skuInfoService.queryPageByCondition(params); return R.ok().put("page", page); } diff --git a/book-product/src/main/java/com/bookstore/bookmall/product/service/SkuInfoService.java b/book-product/src/main/java/com/bookstore/bookmall/product/service/SkuInfoService.java index 886a056..6a15a54 100644 --- a/book-product/src/main/java/com/bookstore/bookmall/product/service/SkuInfoService.java +++ b/book-product/src/main/java/com/bookstore/bookmall/product/service/SkuInfoService.java @@ -18,5 +18,7 @@ public interface SkuInfoService extends IService { PageUtils queryPage(Map params); void saveSkuInfo(SkuInfoEntity skuInfoEntity); + + PageUtils queryPageByCondition(Map params); } diff --git a/book-product/src/main/java/com/bookstore/bookmall/product/service/impl/SkuInfoServiceImpl.java b/book-product/src/main/java/com/bookstore/bookmall/product/service/impl/SkuInfoServiceImpl.java index 3b62cb4..43abd7f 100644 --- a/book-product/src/main/java/com/bookstore/bookmall/product/service/impl/SkuInfoServiceImpl.java +++ b/book-product/src/main/java/com/bookstore/bookmall/product/service/impl/SkuInfoServiceImpl.java @@ -1,6 +1,9 @@ package com.bookstore.bookmall.product.service.impl; +import com.mysql.cj.util.StringUtils; import org.springframework.stereotype.Service; + +import java.math.BigDecimal; import java.util.Map; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -31,4 +34,58 @@ public class SkuInfoServiceImpl extends ServiceImpl i this.baseMapper.insert(skuInfoEntity); } + @Override + public PageUtils queryPageByCondition(Map params) { + QueryWrapper QueryWrapper = new QueryWrapper<>(); + + + //key: "华为", + //brandId: 9, + //catelogId: 225 + //min + //max + String key = (String) params.get("key"); + if (!StringUtils.isNullOrEmpty(key)) { + QueryWrapper.and((w)->{ + w.eq("sku_id",key).or().like("sku_name", key); + }); + } + + String brandId = (String) params.get("brandId"); + if (!StringUtils.isNullOrEmpty(brandId) && !"0".equals(brandId)) { + QueryWrapper.eq("brand_id", brandId); + } + + String catelogId = (String) params.get("catalogId"); + if (!StringUtils.isNullOrEmpty(catelogId) && !"0".equals(catelogId)) { + QueryWrapper.eq("catalog_id", catelogId); + } + + String min = (String) params.get("min"); + if (!StringUtils.isNullOrEmpty(min)) { + QueryWrapper.ge("price", min); + } + + String max = (String) params.get("max"); + if (!StringUtils.isNullOrEmpty(max)) { + try { + BigDecimal bigDecimal = new BigDecimal(max); + if (bigDecimal.compareTo(new BigDecimal(0)) == 1) { + QueryWrapper.le("price", max); + } + }catch (Exception e){ + + } + + } + + + IPage page = this.page( + new Query().getPage(params), + QueryWrapper + ); + + return new PageUtils(page); + } + } \ No newline at end of file