From ed0138c777d34621872e67cbd19956129c180dd4 Mon Sep 17 00:00:00 2001 From: Agent Date: Wed, 1 Apr 2026 15:18:41 +0000 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=96=B0=E5=A2=9E=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E6=89=80=E6=9C=89=E5=95=86=E5=93=81=E6=8E=A5=E5=8F=A3=EF=BC=88?= =?UTF-8?q?=E5=8C=85=E6=8B=AC=E4=B8=8B=E6=9E=B6=EF=BC=89=E7=94=A8=E4=BA=8E?= =?UTF-8?q?=E5=95=86=E5=93=81=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../building/controller/ProductController.java | 12 ++++++++++++ .../example/building/service/ProductService.java | 5 +++++ .../building/service/impl/ProductServiceImpl.java | 14 ++++++++++++++ .../migration/V13__add_order_item_size_fields.sql | 4 ---- 4 files changed, 31 insertions(+), 4 deletions(-) delete mode 100644 src/main/resources/db/migration/V13__add_order_item_size_fields.sql diff --git a/src/main/java/com/example/building/controller/ProductController.java b/src/main/java/com/example/building/controller/ProductController.java index 6c7d673..c790104 100644 --- a/src/main/java/com/example/building/controller/ProductController.java +++ b/src/main/java/com/example/building/controller/ProductController.java @@ -79,6 +79,18 @@ public class ProductController { return Result.success(productService.getProducts(categoryId, keyword, page, pageSize)); } + /** + * 获取所有商品(包括下架的,用于管理) + */ + @GetMapping("/all") + public Result> getAllProducts( + @RequestParam(required = false) String categoryId, + @RequestParam(required = false) String keyword, + @RequestParam(defaultValue = "1") Integer page, + @RequestParam(defaultValue = "20") Integer pageSize) { + return Result.success(productService.getAllProducts(categoryId, keyword, page, pageSize)); + } + /** * 获取商品详情 */ diff --git a/src/main/java/com/example/building/service/ProductService.java b/src/main/java/com/example/building/service/ProductService.java index 60bf9c9..322650e 100644 --- a/src/main/java/com/example/building/service/ProductService.java +++ b/src/main/java/com/example/building/service/ProductService.java @@ -37,6 +37,11 @@ public interface ProductService { */ Page getProducts(String categoryId, String keyword, Integer page, Integer pageSize); + /** + * 获取所有商品(包括下架的) + */ + Page getAllProducts(String categoryId, String keyword, Integer page, Integer pageSize); + /** * 获取商品详情 */ diff --git a/src/main/java/com/example/building/service/impl/ProductServiceImpl.java b/src/main/java/com/example/building/service/impl/ProductServiceImpl.java index 7695616..9223eb3 100644 --- a/src/main/java/com/example/building/service/impl/ProductServiceImpl.java +++ b/src/main/java/com/example/building/service/impl/ProductServiceImpl.java @@ -99,6 +99,20 @@ public class ProductServiceImpl implements ProductService { return productMapper.selectPage(pageParam, wrapper); } + @Override + public Page getAllProducts(String categoryId, String keyword, Integer page, Integer pageSize) { + Page pageParam = new Page<>(page, pageSize); + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + if (StringUtils.hasText(categoryId)) { + wrapper.eq(Product::getCategoryId, categoryId); + } + if (StringUtils.hasText(keyword)) { + wrapper.like(Product::getName, keyword); + } + wrapper.orderByDesc(Product::getCreatedAt); + return productMapper.selectPage(pageParam, wrapper); + } + /** * 获取商品详情 */ diff --git a/src/main/resources/db/migration/V13__add_order_item_size_fields.sql b/src/main/resources/db/migration/V13__add_order_item_size_fields.sql deleted file mode 100644 index 1f7b97b..0000000 --- a/src/main/resources/db/migration/V13__add_order_item_size_fields.sql +++ /dev/null @@ -1,4 +0,0 @@ --- 添加商品长度、宽度、面积字段 -ALTER TABLE order_items ADD COLUMN length DECIMAL(10,2) COMMENT '长度(cm)'; -ALTER TABLE order_items ADD COLUMN width DECIMAL(10,2) COMMENT '宽度(cm)'; -ALTER TABLE order_items ADD COLUMN area DECIMAL(10,4) COMMENT '面积(m²)'; \ No newline at end of file