forked from gushen/sunway-user-system
添加了子分类的查询方法
This commit is contained in:
@@ -121,11 +121,20 @@ public class ProductController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询所有商品分类(树形结构)
|
* 查询所有顶级商品分类(树形结构)
|
||||||
*/
|
*/
|
||||||
@GetMapping("/category")
|
@GetMapping("/category")
|
||||||
public ResponseEntity<List<ProductCategory>> getAllCategories() {
|
public ResponseEntity<List<ProductCategory>> getAllCategories() {
|
||||||
List<ProductCategory> categories = categoryService.getAllCategories();
|
List<ProductCategory> categories = categoryService.getAllTopCategories();
|
||||||
|
return ResponseEntity.success(categories);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询子级商品分类
|
||||||
|
*/
|
||||||
|
@GetMapping("/category/{id}")
|
||||||
|
public ResponseEntity<List<ProductCategory>> getChildCategories(@PathVariable Long id) {
|
||||||
|
List<ProductCategory> categories = categoryService.getChildCategories(id);
|
||||||
return ResponseEntity.success(categories);
|
return ResponseEntity.success(categories);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -73,8 +73,18 @@ public class ProductCategoryServiceImpl extends ServiceImpl<ProductCategoryMappe
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<ProductCategory> getAllCategories() {
|
public List<ProductCategory> getAllTopCategories() {
|
||||||
QueryWrapper<ProductCategory> queryWrapper = new QueryWrapper<>();
|
QueryWrapper<ProductCategory> queryWrapper = new QueryWrapper<>();
|
||||||
|
queryWrapper.eq("is_deleted", 0)
|
||||||
|
.eq("level",1);
|
||||||
|
return categoryMapper.selectList(queryWrapper);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<ProductCategory> getChildCategories(Long id) {
|
||||||
|
QueryWrapper<ProductCategory> queryWrapper = new QueryWrapper<>();
|
||||||
|
queryWrapper.eq("is_deleted", 0)
|
||||||
|
.eq("parent_id", id);
|
||||||
return categoryMapper.selectList(queryWrapper);
|
return categoryMapper.selectList(queryWrapper);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -29,5 +29,7 @@ public interface ProductCategoryService extends IService<ProductCategory> {
|
|||||||
* 查询所有分类(树形结构)
|
* 查询所有分类(树形结构)
|
||||||
* @return 分类列表
|
* @return 分类列表
|
||||||
*/
|
*/
|
||||||
List<ProductCategory> getAllCategories();
|
List<ProductCategory> getAllTopCategories();
|
||||||
|
|
||||||
|
List<ProductCategory> getChildCategories(Long id);
|
||||||
}
|
}
|
||||||
@@ -9,10 +9,17 @@
|
|||||||
FROM product p
|
FROM product p
|
||||||
LEFT JOIN product_category c ON p.category_id = c.id
|
LEFT JOIN product_category c ON p.category_id = c.id
|
||||||
WHERE p.is_deleted = 0
|
WHERE p.is_deleted = 0
|
||||||
<if test="categoryId != null">AND p.category_id = #{categoryId}</if>
|
<if test="categoryId != null">
|
||||||
|
AND (
|
||||||
|
p.category_id = #{categoryId}
|
||||||
|
OR p.category_id IN (
|
||||||
|
SELECT id FROM product_category WHERE parent_id = #{categoryId} AND is_deleted = 0
|
||||||
|
)
|
||||||
|
)
|
||||||
|
</if>
|
||||||
<if test="name != null and name != ''">AND p.name LIKE CONCAT('%', #{name}, '%')</if>
|
<if test="name != null and name != ''">AND p.name LIKE CONCAT('%', #{name}, '%')</if>
|
||||||
<if test="status != null">AND p.status = #{status}</if>
|
<if test="status != null">AND p.status = #{status}</if>
|
||||||
ORDER BY p.sort ASC, p.create_time DESC
|
ORDER BY p.sort ASC, p.create_time DESC
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|||||||
Reference in New Issue
Block a user