diff --git a/spzx-service/service-cart/src/main/java/com/atguigu/cart/controller/CartController.java b/spzx-service/service-cart/src/main/java/com/atguigu/cart/controller/CartController.java index 45c0c98..fc84453 100644 --- a/spzx-service/service-cart/src/main/java/com/atguigu/cart/controller/CartController.java +++ b/spzx-service/service-cart/src/main/java/com/atguigu/cart/controller/CartController.java @@ -55,4 +55,11 @@ public class CartController { cartService.allCheckCart(isChecked); return Result.success(); } + + @Operation(summary = "清空购物车") + @GetMapping("/auth/clearCart") + public Result clearCart() { + cartService.clearCart(); + return Result.success(); + } } \ No newline at end of file diff --git a/spzx-service/service-cart/src/main/java/com/atguigu/cart/service/CartService.java b/spzx-service/service-cart/src/main/java/com/atguigu/cart/service/CartService.java index 4c1288e..a49cefc 100644 --- a/spzx-service/service-cart/src/main/java/com/atguigu/cart/service/CartService.java +++ b/spzx-service/service-cart/src/main/java/com/atguigu/cart/service/CartService.java @@ -41,4 +41,9 @@ public interface CartService { * @param isChecked 是否选中 */ void allCheckCart(Integer isChecked); + + /** + * 清空购物车 + */ + void clearCart(); } diff --git a/spzx-service/service-cart/src/main/java/com/atguigu/cart/service/impl/CartServiceImpl.java b/spzx-service/service-cart/src/main/java/com/atguigu/cart/service/impl/CartServiceImpl.java index 614dfda..d9814e6 100644 --- a/spzx-service/service-cart/src/main/java/com/atguigu/cart/service/impl/CartServiceImpl.java +++ b/spzx-service/service-cart/src/main/java/com/atguigu/cart/service/impl/CartServiceImpl.java @@ -147,4 +147,14 @@ public class CartServiceImpl implements CartService { }).forEach(cartInfo -> redisTemplate.opsForHash().put(cartKey, String.valueOf(cartInfo.getSkuId()), JSON.toJSONString(cartInfo))); } } + + /** + * 清空购物车 + */ + @Override + public void clearCart() { + Long userId = BaseContext.getUserInfo().getId(); + String cartKey = userId.toString(); + redisTemplate.delete(cartKey); + } }