From 67ac5176bb4b4af2111598fcd55340587f749e80 Mon Sep 17 00:00:00 2001 From: xuxin <840198532@qq.com> Date: Mon, 24 Nov 2025 17:09:03 +0800 Subject: [PATCH] =?UTF-8?q?=E8=8B=8D=E7=A9=B9=E5=A4=96=E5=8D=96--=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E4=B8=80=E6=9D=A1=E8=B4=AD=E7=89=A9=E8=BD=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../user/ShoppingCartController.java | 9 ++++++++ .../com/sky/mapper/ShoppingCartMapper.java | 3 +++ .../com/sky/service/ShoppingCartService.java | 3 +++ .../service/impl/ShoppingCartServiceImpl.java | 21 +++++++++++++++++++ 4 files changed, 36 insertions(+) diff --git a/sky-server/src/main/java/com/sky/controller/user/ShoppingCartController.java b/sky-server/src/main/java/com/sky/controller/user/ShoppingCartController.java index d57c0fc..b263ddf 100644 --- a/sky-server/src/main/java/com/sky/controller/user/ShoppingCartController.java +++ b/sky-server/src/main/java/com/sky/controller/user/ShoppingCartController.java @@ -45,4 +45,13 @@ public class ShoppingCartController { shoppingCartService.cleanShoppingCart(); return Result.success(); } + + + @PostMapping("/sub") + @ApiOperation("删除购物车中一个商品") + public Result subShoppingCart(@RequestBody ShoppingCartDTO shoppingCartDTO){ + log.info("删除购物车中一个商品"); + shoppingCartService.subShoppingCart(shoppingCartDTO); + return Result.success(); + } } diff --git a/sky-server/src/main/java/com/sky/mapper/ShoppingCartMapper.java b/sky-server/src/main/java/com/sky/mapper/ShoppingCartMapper.java index 41e56e2..a13c6ab 100644 --- a/sky-server/src/main/java/com/sky/mapper/ShoppingCartMapper.java +++ b/sky-server/src/main/java/com/sky/mapper/ShoppingCartMapper.java @@ -26,4 +26,7 @@ public interface ShoppingCartMapper { @Delete("delete from shopping_cart where user_id = #{userId}") void deleteByUserId(Long userId); + + @Delete("delete from shopping_cart where id = #{id}") + void deleteById(Long id); } diff --git a/sky-server/src/main/java/com/sky/service/ShoppingCartService.java b/sky-server/src/main/java/com/sky/service/ShoppingCartService.java index 25bdf92..e5d8197 100644 --- a/sky-server/src/main/java/com/sky/service/ShoppingCartService.java +++ b/sky-server/src/main/java/com/sky/service/ShoppingCartService.java @@ -20,4 +20,7 @@ public interface ShoppingCartService { 清空购物车 */ void cleanShoppingCart(); + + void subShoppingCart(ShoppingCartDTO shoppingCartDTO); + } diff --git a/sky-server/src/main/java/com/sky/service/impl/ShoppingCartServiceImpl.java b/sky-server/src/main/java/com/sky/service/impl/ShoppingCartServiceImpl.java index ec3a08b..f4d6c7a 100644 --- a/sky-server/src/main/java/com/sky/service/impl/ShoppingCartServiceImpl.java +++ b/sky-server/src/main/java/com/sky/service/impl/ShoppingCartServiceImpl.java @@ -113,4 +113,25 @@ public class ShoppingCartServiceImpl implements ShoppingCartService { shoppingCartMapper.deleteByUserId(BaseContext.getCurrentId()); } + + /* + 删除购物车中一个商品 + */ + @Override + public void subShoppingCart(ShoppingCartDTO shoppingCartDTO) { + ShoppingCart cart = new ShoppingCart(); + BeanUtils.copyProperties(shoppingCartDTO,cart); + cart.setUserId(BaseContext.getCurrentId()); + List cartList = shoppingCartMapper.list(cart); + if (cartList != null && cartList.size() > 0) { + cart = cartList.get(0); + + if (cart.getNumber() > 1) { + cart.setNumber(cart.getNumber() - 1); + shoppingCartMapper.updateNumberById(cart); + } else { + shoppingCartMapper.deleteById(cart.getId()); + } + } + } }