Description or Example
# 核心源码
```java
@RequestMapping("/list")
// @RequiresPermissions("product:skuinfo:list")
public R list(@RequestParam Map<String, Object> params, SkuSearchVO skuSearchVO){
PageUtils page = skuInfoService.getSkuByVOWithKey(params, skuSearchVO);
return R.ok().put("page", page);
}
```
```java
@Override
public PageUtils getSkuByVOWithKey(Map<String, Object> params, SkuSearchVO skuSearchVO) {
LambdaQueryWrapper<SkuInfoEntity> queryWrapper = new LambdaQueryWrapper<>();
// 获取检索关键字
String key = (String) params.get("key");
Long catelogId = skuSearchVO.getCatelogId();
Long brandId = skuSearchVO.getBrandId();
Integer max = skuSearchVO.getMax();
Integer min = skuSearchVO.getMin();
if (StringUtils.isNotBlank(key)) // 检索关键字存在
queryWrapper.and(wp ->
wp.eq(SkuInfoEntity::getSkuId, key)
.or()
.like(SkuInfoEntity::getSkuName, key));
if (catelogId != null && catelogId != 0L) // 分类ID存在
queryWrapper.eq(SkuInfoEntity::getCatalogId, catelogId);
if (brandId != null && brandId != 0L) // 品牌ID存在
queryWrapper.eq(SkuInfoEntity::getBrandId, brandId);
if (max != null && max != 0) // 最大值存在
queryWrapper.le(SkuInfoEntity::getPrice, max);
if (min != null && min != 0) // 最小值存在
queryWrapper.ge(SkuInfoEntity::getPrice, max);
IPage<SkuInfoEntity> page = this.page(new Query<SkuInfoEntity>().getPage(params), queryWrapper);
return new PageUtils(page);
}
```