From 62a35f5f45122ff977641f5f900bb3349286b35c Mon Sep 17 00:00:00 2001 From: DongZeLiang <2746733890@qq.com> Date: Sun, 7 Apr 2024 15:30:12 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B4=AD=E7=89=A9=E8=BD=A6=E8=AF=A6=E6=83=85?= =?UTF-8?q?=EF=BC=8C=E7=B1=BB=E5=88=9D=E5=A7=8B=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../shop/cart/domain/model/CartSkuModel.java | 61 +++++++++++++++++++ .../shop/cart/domain/model/SkuRuleModel.java | 28 +++++++++ .../domain/model/StatisticsCartModel.java | 37 +++++++++++ .../shop/cart/domain/resp/CartDetailResp.java | 31 ++++++++++ .../cart/controller/CartInfoController.java | 7 +++ .../shop/cart/service/CartInfoService.java | 7 +++ .../service/impl/CartInfoServiceImpl.java | 11 ++++ 7 files changed, 182 insertions(+) create mode 100644 muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/model/CartSkuModel.java create mode 100644 muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/model/SkuRuleModel.java create mode 100644 muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/model/StatisticsCartModel.java create mode 100644 muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/resp/CartDetailResp.java diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/model/CartSkuModel.java b/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/model/CartSkuModel.java new file mode 100644 index 0000000..9532a4b --- /dev/null +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/model/CartSkuModel.java @@ -0,0 +1,61 @@ +package com.muyu.shop.cart.domain.model; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.math.BigDecimal; +import java.util.List; + +/** + * @author DongZl + * @description: 购物车品类信息 + * @Date 2024/4/7 下午3:22 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class CartSkuModel { + + /** + * 购物车ID + */ + private Long cartInfoId; + + /** + * 图片 + */ + private String image; + + /** + * 商品名称 + */ + private String name; + + /** + * 商品SKU价格 + */ + private BigDecimal price; + + /** + * Sku规格集合 + */ + private List skuRuleList; + + /** + * 购物车数量 + */ + private Long num; + + /** + * 购物车小计 + */ + private BigDecimal subtotal; + + /** + * 是否选中 + */ + private String isSelected; +} diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/model/SkuRuleModel.java b/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/model/SkuRuleModel.java new file mode 100644 index 0000000..5dde6d1 --- /dev/null +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/model/SkuRuleModel.java @@ -0,0 +1,28 @@ +package com.muyu.shop.cart.domain.model; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author DongZl + * @description: Sku规格 + * @Date 2024/4/7 下午3:19 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class SkuRuleModel { + + /** + * 规格名称 + */ + private String ruleName; + + /** + * 规格属性 + */ + private String ruleValue; +} diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/model/StatisticsCartModel.java b/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/model/StatisticsCartModel.java new file mode 100644 index 0000000..2d1cc1f --- /dev/null +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/model/StatisticsCartModel.java @@ -0,0 +1,37 @@ +package com.muyu.shop.cart.domain.model; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.math.BigDecimal; + +/** + * @author DongZl + * @description: 购物车统计 + * @Date 2024/4/7 下午3:25 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class StatisticsCartModel { + + /** + * 商品总数 + */ + private Long total; + /** + * 选择总数 + */ + private Long selectTotal; + /** + * 商品总价 + */ + private BigDecimal priceTotal; + /** + * 实际总价 + */ + private BigDecimal actualTotal; +} diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/resp/CartDetailResp.java b/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/resp/CartDetailResp.java new file mode 100644 index 0000000..78961c9 --- /dev/null +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-common/src/main/java/com/muyu/shop/cart/domain/resp/CartDetailResp.java @@ -0,0 +1,31 @@ +package com.muyu.shop.cart.domain.resp; + +import com.muyu.shop.cart.domain.model.CartSkuModel; +import com.muyu.shop.cart.domain.model.StatisticsCartModel; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +/** + * @author DongZl + * @description: 商品详情返回结果集 + * @Date 2024/4/7 下午3:27 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class CartDetailResp { + /** + * 购物车商品集合 + */ + private List cartSkuList; + + /** + * 购物车统计 + */ + private StatisticsCartModel statisticsCart; +} diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-server/src/main/java/com/muyu/shop/cart/controller/CartInfoController.java b/muyu-modules/muyu-shop-cart/muyu-shop-cart-server/src/main/java/com/muyu/shop/cart/controller/CartInfoController.java index 9a0f9e4..704506f 100644 --- a/muyu-modules/muyu-shop-cart/muyu-shop-cart-server/src/main/java/com/muyu/shop/cart/controller/CartInfoController.java +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-server/src/main/java/com/muyu/shop/cart/controller/CartInfoController.java @@ -3,6 +3,7 @@ package com.muyu.shop.cart.controller; import java.util.List; import javax.servlet.http.HttpServletResponse; +import com.muyu.shop.cart.domain.resp.CartDetailResp; import io.swagger.annotations.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; @@ -75,6 +76,12 @@ public class CartInfoController extends BaseController { return Result.success(cartInfoService.getById(id)); } + + @GetMapping("/detail") + public Result detail(){ + return Result.success(cartInfoService.detail()); + } + /** * 新增购物车 */ diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-server/src/main/java/com/muyu/shop/cart/service/CartInfoService.java b/muyu-modules/muyu-shop-cart/muyu-shop-cart-server/src/main/java/com/muyu/shop/cart/service/CartInfoService.java index 624de13..f62d256 100644 --- a/muyu-modules/muyu-shop-cart/muyu-shop-cart-server/src/main/java/com/muyu/shop/cart/service/CartInfoService.java +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-server/src/main/java/com/muyu/shop/cart/service/CartInfoService.java @@ -3,6 +3,7 @@ package com.muyu.shop.cart.service; import java.util.List; import com.muyu.shop.cart.domain.CartInfo; import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.shop.cart.domain.resp.CartDetailResp; /** * 购物车Service接口 @@ -25,4 +26,10 @@ public interface CartInfoService extends IService { * @return 是否添加成功 */ boolean add (CartInfo cartInfo); + + /** + * 获取购物车详情 + * @return 购物车详情 + */ + CartDetailResp detail (); } diff --git a/muyu-modules/muyu-shop-cart/muyu-shop-cart-server/src/main/java/com/muyu/shop/cart/service/impl/CartInfoServiceImpl.java b/muyu-modules/muyu-shop-cart/muyu-shop-cart-server/src/main/java/com/muyu/shop/cart/service/impl/CartInfoServiceImpl.java index 7a60747..b2c8c82 100644 --- a/muyu-modules/muyu-shop-cart/muyu-shop-cart-server/src/main/java/com/muyu/shop/cart/service/impl/CartInfoServiceImpl.java +++ b/muyu-modules/muyu-shop-cart/muyu-shop-cart-server/src/main/java/com/muyu/shop/cart/service/impl/CartInfoServiceImpl.java @@ -12,6 +12,7 @@ import com.muyu.product.cache.ProjectSkuStockCache; import com.muyu.product.cache.key.SkuStockKey; import com.muyu.shop.cart.cache.CartCache; import com.muyu.shop.cart.cache.key.CartHashKey; +import com.muyu.shop.cart.domain.resp.CartDetailResp; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -117,4 +118,14 @@ public class CartInfoServiceImpl extends ServiceImpl return true; } + /** + * 获取购物车详情 + * + * @return 购物车详情 + */ + @Override + public CartDetailResp detail () { + return null; + } + }