From 315659d1f7d23c65755d439b0c11b97ef1101404 Mon Sep 17 00:00:00 2001 From: bunny <1319900154@qq.com> Date: Tue, 26 Mar 2024 16:27:56 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E6=96=B0=E5=A2=9E-=E5=95=86=E5=93=81?= =?UTF-8?q?=E7=AE=A1=E7=90=86):=20=E5=88=A0=E9=99=A4=E5=95=86=E5=93=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: bunny <1319900154@qq.com> --- .../spzx/manger/controller/ProductController.java | 7 +++++++ .../spzx/manger/mapper/ProductDetailsMapper.java | 7 +++++++ .../atguigu/spzx/manger/mapper/ProductMapper.java | 7 +++++++ .../atguigu/spzx/manger/mapper/ProductSkuMapper.java | 7 +++++++ .../atguigu/spzx/manger/service/ProductService.java | 7 +++++++ .../spzx/manger/service/impl/ProductServiceImpl.java | 12 ++++++++++++ .../main/resources/mapper/ProductDetailsMapper.xml | 8 ++++++++ .../src/main/resources/mapper/ProductMapper.xml | 8 ++++++++ .../src/main/resources/mapper/ProductSkuMapper.xml | 8 ++++++++ 9 files changed, 71 insertions(+) diff --git a/spzx-manager/src/main/java/com/atguigu/spzx/manger/controller/ProductController.java b/spzx-manager/src/main/java/com/atguigu/spzx/manger/controller/ProductController.java index 2017a06..6a59401 100644 --- a/spzx-manager/src/main/java/com/atguigu/spzx/manger/controller/ProductController.java +++ b/spzx-manager/src/main/java/com/atguigu/spzx/manger/controller/ProductController.java @@ -58,4 +58,11 @@ public class ProductController { productService.updateById(product); return Result.success(); } + + @Operation(summary = "删除商品", description = "删除商品") + @DeleteMapping("/deleteById/{id}") + public Result deleteById(@Parameter(name = "id", description = "商品id", required = true) @PathVariable Long id) { + productService.deleteById(id); + return Result.success(); + } } \ No newline at end of file diff --git a/spzx-manager/src/main/java/com/atguigu/spzx/manger/mapper/ProductDetailsMapper.java b/spzx-manager/src/main/java/com/atguigu/spzx/manger/mapper/ProductDetailsMapper.java index f91d8fc..b2d4b82 100644 --- a/spzx-manager/src/main/java/com/atguigu/spzx/manger/mapper/ProductDetailsMapper.java +++ b/spzx-manager/src/main/java/com/atguigu/spzx/manger/mapper/ProductDetailsMapper.java @@ -26,4 +26,11 @@ public interface ProductDetailsMapper { * @param productDetails ProductDetails */ void updateById(ProductDetails productDetails); + + /** + * 根据商品的id删除商品的详情数据 + * + * @param id 删除ID + */ + void deleteByProductId(Long id); } diff --git a/spzx-manager/src/main/java/com/atguigu/spzx/manger/mapper/ProductMapper.java b/spzx-manager/src/main/java/com/atguigu/spzx/manger/mapper/ProductMapper.java index 3f8c7a3..d3b9b24 100644 --- a/spzx-manager/src/main/java/com/atguigu/spzx/manger/mapper/ProductMapper.java +++ b/spzx-manager/src/main/java/com/atguigu/spzx/manger/mapper/ProductMapper.java @@ -37,4 +37,11 @@ public interface ProductMapper { * @param product 商品实体类 */ void updateById(Product product); + + /** + * 根据id删除商品基本数据 + * + * @param id 删除ID + */ + void deleteById(Long id); } diff --git a/spzx-manager/src/main/java/com/atguigu/spzx/manger/mapper/ProductSkuMapper.java b/spzx-manager/src/main/java/com/atguigu/spzx/manger/mapper/ProductSkuMapper.java index c19116b..ff57537 100644 --- a/spzx-manager/src/main/java/com/atguigu/spzx/manger/mapper/ProductSkuMapper.java +++ b/spzx-manager/src/main/java/com/atguigu/spzx/manger/mapper/ProductSkuMapper.java @@ -28,4 +28,11 @@ public interface ProductSkuMapper { * @param productSku 商品实体类 */ void updateById(ProductSku productSku); + + /** + * 根据商品id删除商品的sku数据 + * + * @param id 删除ID + */ + void deleteByProductId(Long id); } diff --git a/spzx-manager/src/main/java/com/atguigu/spzx/manger/service/ProductService.java b/spzx-manager/src/main/java/com/atguigu/spzx/manger/service/ProductService.java index d4786fe..de20878 100644 --- a/spzx-manager/src/main/java/com/atguigu/spzx/manger/service/ProductService.java +++ b/spzx-manager/src/main/java/com/atguigu/spzx/manger/service/ProductService.java @@ -36,4 +36,11 @@ public interface ProductService { * @param product 商品实体类 */ void updateById(Product product); + + /** + * 删除商品 + * + * @param id 删除ID + */ + void deleteById(Long id); } diff --git a/spzx-manager/src/main/java/com/atguigu/spzx/manger/service/impl/ProductServiceImpl.java b/spzx-manager/src/main/java/com/atguigu/spzx/manger/service/impl/ProductServiceImpl.java index 33d2ac3..dcae7d2 100644 --- a/spzx-manager/src/main/java/com/atguigu/spzx/manger/service/impl/ProductServiceImpl.java +++ b/spzx-manager/src/main/java/com/atguigu/spzx/manger/service/impl/ProductServiceImpl.java @@ -122,4 +122,16 @@ public class ProductServiceImpl implements ProductService { productDetails.setImageUrls(product.getDetailsImageUrls()); productDetailsMapper.updateById(productDetails); } + + /** + * 删除商品 + * + * @param id 删除ID + */ + @Override + public void deleteById(Long id) { + productMapper.deleteById(id); // 根据id删除商品基本数据 + productSkuMapper.deleteByProductId(id); // 根据商品id删除商品的sku数据 + productDetailsMapper.deleteByProductId(id); // 根据商品的id删除商品的详情数据 + } } diff --git a/spzx-manager/src/main/resources/mapper/ProductDetailsMapper.xml b/spzx-manager/src/main/resources/mapper/ProductDetailsMapper.xml index 895c444..a62fb07 100644 --- a/spzx-manager/src/main/resources/mapper/ProductDetailsMapper.xml +++ b/spzx-manager/src/main/resources/mapper/ProductDetailsMapper.xml @@ -26,6 +26,14 @@ id = #{id} + + + update product_details + set update_time = now(), + is_deleted = 1 + where product_id = #{productId} + + select diff --git a/spzx-manager/src/main/resources/mapper/ProductSkuMapper.xml b/spzx-manager/src/main/resources/mapper/ProductSkuMapper.xml index 3466204..fca8c2d 100644 --- a/spzx-manager/src/main/resources/mapper/ProductSkuMapper.xml +++ b/spzx-manager/src/main/resources/mapper/ProductSkuMapper.xml @@ -59,6 +59,14 @@ id = #{id} + + + update product_sku + set update_time = now(), + is_deleted = 1 + where product_id = #{productId} + +