Преглед изворни кода

mall:完善商品模块的表设计

YunaiV пре 2 година
родитељ
комит
022e5b8519
14 измењених фајлова са 319 додато и 75 уклоњено
  1. 38 0
      yudao-module-mall/yudao-module-product-api/src/main/java/cn/iocoder/yudao/module/product/enums/comment/ProductCommentAuditStatusEnum.java
  2. 38 0
      yudao-module-mall/yudao-module-product-api/src/main/java/cn/iocoder/yudao/module/product/enums/comment/ProductCommentEvaluateEnum.java
  3. 6 7
      yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/category/ProductCategoryDO.java
  4. 110 0
      yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/comment/ProductCommentDO.java
  5. 43 0
      yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/favorite/ProductFavoriteDO.java
  6. 6 7
      yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/group/ProductGroupBindDO.java
  7. 6 6
      yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/group/ProductGroupDO.java
  8. 6 7
      yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/property/ProductPropertyDO.java
  9. 44 0
      yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/search/ProductHotSearchDO.java
  10. 6 7
      yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/spu/ProductSpuDO.java
  11. 10 7
      yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/address/AddressDO.java
  12. 6 0
      yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/user/MemberUserDO.java
  13. 0 30
      yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/enums/AddressTypeEnum.java
  14. 0 4
      yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/enums/package-info.java

+ 38 - 0
yudao-module-mall/yudao-module-product-api/src/main/java/cn/iocoder/yudao/module/product/enums/comment/ProductCommentAuditStatusEnum.java

@@ -0,0 +1,38 @@
+package cn.iocoder.yudao.module.product.enums.comment;
+
+import cn.iocoder.yudao.framework.common.core.IntArrayValuable;
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+import java.util.Arrays;
+
+/**
+ * 商品评论的审批状态枚举
+ *
+ * @author 芋道源码
+ */
+@Getter
+@AllArgsConstructor
+public enum ProductCommentAuditStatusEnum implements IntArrayValuable {
+
+    NONE(1, "待审核"),
+    APPROVE(2, "审批通过"),
+    REJECT(2, "审批不通过"),;
+
+    public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(ProductCommentAuditStatusEnum::getStatus).toArray();
+
+    /**
+     * 审批状态
+     */
+    private final Integer status;
+    /**
+     * 状态名
+     */
+    private final String name;
+
+    @Override
+    public int[] array() {
+        return ARRAYS;
+    }
+
+}

+ 38 - 0
yudao-module-mall/yudao-module-product-api/src/main/java/cn/iocoder/yudao/module/product/enums/comment/ProductCommentEvaluateEnum.java

@@ -0,0 +1,38 @@
+package cn.iocoder.yudao.module.product.enums.comment;
+
+import cn.iocoder.yudao.framework.common.core.IntArrayValuable;
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+import java.util.Arrays;
+
+/**
+ * 商品评论的评价枚举
+ *
+ * @author 芋道源码
+ */
+@Getter
+@AllArgsConstructor
+public enum ProductCommentEvaluateEnum implements IntArrayValuable {
+
+    GOOD(1, "好评"),
+    BAD(2, "差评"),
+    MIDDLE(2, "中评"),;
+
+    public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(ProductCommentEvaluateEnum::getEvaluate).toArray();
+
+    /**
+     * 评价
+     */
+    private final Integer evaluate;
+    /**
+     * 评价名
+     */
+    private final String name;
+
+    @Override
+    public int[] array() {
+        return ARRAYS;
+    }
+
+}

+ 6 - 7
yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/category/ProductCategoryDO.java

@@ -2,7 +2,6 @@ package cn.iocoder.yudao.module.product.dal.dataobject.category;
 
 import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
-import cn.iocoder.yudao.module.product.dal.dataobject.shop.ShopDO;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.*;
@@ -39,12 +38,12 @@ public class ProductCategoryDO extends BaseDO {
      * 父分类编号
      */
     private Long parentId;
-    /**
-     * 店铺编号
-     *
-     * 关联 {@link ShopDO#getId()}
-     */
-    private Long shopId;
+//    /**
+//     * 店铺编号
+//     *
+//     * 关联 {@link ShopDO#getId()} TODO 芋艿:多店铺,暂不考虑
+//     */
+//    private Long shopId;
     /**
      * 分类名称
      */

+ 110 - 0
yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/comment/ProductCommentDO.java

@@ -0,0 +1,110 @@
+package cn.iocoder.yudao.module.product.dal.dataobject.comment;
+
+import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
+import cn.iocoder.yudao.module.product.dal.dataobject.spu.ProductSpuDO;
+import cn.iocoder.yudao.module.product.enums.comment.ProductCommentAuditStatusEnum;
+import cn.iocoder.yudao.module.product.enums.comment.ProductCommentEvaluateEnum;
+import com.baomidou.mybatisplus.annotation.KeySequence;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
+import lombok.*;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 商品评论 DO
+ *
+ * @author 芋道源码
+ */
+@TableName("product_comment")
+@KeySequence("product_comment_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class ProductCommentDO extends BaseDO {
+
+    /**
+     * 评论编号,主键自增
+     */
+    @TableId
+    private Long id;
+    /**
+     * 商品 SPU 编号
+     *
+     * 关联 {@link ProductSpuDO#getId()}
+     */
+    private Long spuId;
+    /**
+     * 订单项编号
+     *
+     * 关联 OrderItemDO 的 id 编号
+     */
+    private Long orderItemId;
+
+    /**
+     * 用户编号
+     *
+     * 关联 MemberUserDO 的 id 编号
+     */
+    private Long userId;
+    /**
+     * 用户 IP
+     */
+    private String userIp;
+    /**
+     * 是否匿名
+     */
+    private Boolean anonymous;
+    /**
+     * 评论内容
+     */
+    private String content;
+    /**
+     * 评论图片地址数组
+     */
+    @TableField(typeHandler = JacksonTypeHandler.class)
+    private List<String> picUrls;
+    /**
+     * 得分,0-5 分
+     */
+    private Integer score;
+    /**
+     * 评价
+     *
+     * 枚举 {@link ProductCommentEvaluateEnum}
+     */
+    private Integer evaluate;
+
+    /**
+     * 商家是否回复
+     */
+    private Boolean replied;
+    /**
+     * 商家回复内容
+     */
+    private String replyContent;
+    /**
+     * 商家回复时间
+     */
+    private Date replyTime;
+    /**
+     * 审核状态
+     *
+     * 枚举 {@link ProductCommentAuditStatusEnum}
+     */
+    private Integer auditStatus;
+
+    /**
+     * 有用的计数
+     *
+     * 其他用户看到评论时,可点击「有用」按钮
+     */
+    private Integer usefulCount;
+
+}

+ 43 - 0
yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/favorite/ProductFavoriteDO.java

@@ -0,0 +1,43 @@
+package cn.iocoder.yudao.module.product.dal.dataobject.favorite;
+
+import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
+import cn.iocoder.yudao.module.product.dal.dataobject.spu.ProductSpuDO;
+import com.baomidou.mybatisplus.annotation.KeySequence;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.*;
+
+/**
+ * 商品收藏 DO
+ *
+ * @author 芋道源码
+ */
+@TableName("product_favorite")
+@KeySequence("product_favorite_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class ProductFavoriteDO extends BaseDO {
+
+    /**
+     * 编号,主键自增
+     */
+    @TableId
+    private Long id;
+    /**
+     * 用户编号
+     *
+     * 关联 MemberUserDO 的 id 编号
+     */
+    private Long userId;
+    /**
+     * 商品 SPU 编号
+     *
+     * 关联 {@link ProductSpuDO#getId()}
+     */
+    private Long spuId;
+
+}

+ 6 - 7
yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/group/ProductGroupBindDO.java

@@ -1,7 +1,6 @@
 package cn.iocoder.yudao.module.product.dal.dataobject.group;
 
 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
-import cn.iocoder.yudao.module.product.dal.dataobject.shop.ShopDO;
 import cn.iocoder.yudao.module.product.dal.dataobject.spu.ProductSpuDO;
 import com.baomidou.mybatisplus.annotation.KeySequence;
 import com.baomidou.mybatisplus.annotation.TableId;
@@ -28,12 +27,12 @@ public class ProductGroupBindDO extends BaseDO {
      */
     @TableId
     private Long id;
-    /**
-     * 店铺编号
-     *
-     * 关联 {@link ShopDO#getId()}
-     */
-    private Long shopId;
+//    /**
+//     * 店铺编号
+//     *
+//     * 关联 {@link ShopDO#getId()} TODO 芋艿:多店铺,暂不考虑
+//     */
+//    private Long shopId;
     /**
      * 商品分组编号
      *

+ 6 - 6
yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/group/ProductGroupDO.java

@@ -29,12 +29,12 @@ public class ProductGroupDO extends BaseDO {
      */
     @TableId
     private Long id;
-    /**
-     * 店铺编号
-     *
-     * 关联 {@link ShopDO#getId()}
-     */
-    private Long shopId;
+//    /**
+//     * 店铺编号
+//     *
+//     * 关联 {@link ShopDO#getId()} TODO 芋艿:多店铺,暂不考虑
+//     */
+//    private Long shopId;
     /**
      * 分组名称
      */

+ 6 - 7
yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/property/ProductPropertyDO.java

@@ -2,7 +2,6 @@ package cn.iocoder.yudao.module.product.dal.dataobject.property;
 
 import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
-import cn.iocoder.yudao.module.product.dal.dataobject.shop.ShopDO;
 import com.baomidou.mybatisplus.annotation.KeySequence;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
@@ -28,12 +27,12 @@ public class ProductPropertyDO extends BaseDO {
      */
     @TableId
     private Long id;
-    /**
-     * 店铺编号
-     *
-     * 关联 {@link ShopDO#getId()}
-     */
-    private Long shopId;
+//    /**
+//     * 店铺编号
+//     *
+//     * 关联 {@link ShopDO#getId()} TODO 芋艿:多店铺,暂不考虑
+//     */
+//    private Long shopId;
     /**
      * 规格名称
      */

+ 44 - 0
yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/search/ProductHotSearchDO.java

@@ -0,0 +1,44 @@
+package cn.iocoder.yudao.module.product.dal.dataobject.search;
+
+import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
+import com.baomidou.mybatisplus.annotation.KeySequence;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.*;
+
+/**
+ * 商品热搜关键字 DO
+ *
+ * @author 芋道源码
+ */
+@TableName("product_hot_search")
+@KeySequence("product_hot_search_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class ProductHotSearchDO extends BaseDO {
+
+    /**
+     * 编号,主键自增
+     */
+    @TableId
+    private Long id;
+    /**
+     * 关键字
+     */
+    private String name;
+    /**
+     * 内容
+     */
+    private String content;
+//    /**
+//     * 店铺编号
+//     *
+//     * 关联 {@link ShopDO#getId()} TODO 芋艿:多店铺,暂不考虑
+//     */
+//    private Long shopId;
+
+}

+ 6 - 7
yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/spu/ProductSpuDO.java

@@ -5,7 +5,6 @@ import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
 import cn.iocoder.yudao.module.product.dal.dataobject.brand.ProductBrandDO;
 import cn.iocoder.yudao.module.product.dal.dataobject.category.ProductCategoryDO;
 import cn.iocoder.yudao.module.product.dal.dataobject.delivery.DeliveryTemplateDO;
-import cn.iocoder.yudao.module.product.dal.dataobject.shop.ShopDO;
 import cn.iocoder.yudao.module.product.dal.dataobject.sku.ProductSkuDO;
 import cn.iocoder.yudao.module.product.enums.delivery.DeliveryModeEnum;
 import com.baomidou.mybatisplus.annotation.KeySequence;
@@ -38,12 +37,12 @@ public class ProductSpuDO extends BaseDO {
     @TableId
     private Long id;
 
-    /**
-     * 店铺编号
-     *
-     * 关联 {@link ShopDO#getId()}
-     */
-    private Long shopId;
+//    /**
+//     * 店铺编号
+//     *
+//     * 关联 {@link ShopDO#getId()} TODO 芋艿:多店铺,暂不考虑
+//     */
+//    private Long shopId;
 
     // ========== 基本信息 =========
 

+ 10 - 7
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/address/AddressDO.java

@@ -1,7 +1,6 @@
 package cn.iocoder.yudao.module.member.dal.dataobject.address;
 
 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
-import cn.iocoder.yudao.module.member.enums.AddressTypeEnum;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.*;
@@ -32,24 +31,28 @@ public class AddressDO extends BaseDO {
     /**
      * 收件人名称
      */
-    private String name;
+    private String receiver;
     /**
      * 手机号
      */
     private String mobile;
     /**
-     * 地区编
+     * 地区编
      */
-    private Integer areaCode;
+    private Integer areaId;
+    /**
+     * 邮编
+     */
+    private String postCode;
     /**
      * 收件详细地址
      */
     private String detailAddress;
     /**
-     * 地址类型
+     * 是否默认
      *
-     * 枚举 {@link AddressTypeEnum}
+     * true - 默认收件地址
      */
-    private Integer type;
+    private Boolean defaulted;
 
 }

+ 6 - 0
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/user/MemberUserDO.java

@@ -69,4 +69,10 @@ public class MemberUserDO extends TenantBaseDO {
      */
     private Date loginDate;
 
+    // TODO 芋艿:name 真实名字;
+    // TODO 芋艿:email 邮箱;
+    // TODO 芋艿:gender 性别;
+    // TODO 芋艿:score 积分;
+    // TODO 芋艿:payPassword 支付密码;
+
 }

+ 0 - 30
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/enums/AddressTypeEnum.java

@@ -1,30 +0,0 @@
-package cn.iocoder.yudao.module.member.enums;
-
-import cn.iocoder.yudao.framework.common.core.IntArrayValuable;
-import lombok.AllArgsConstructor;
-import lombok.Getter;
-
-import java.util.Arrays;
-
-/**
- * 用户收件地址的类型枚举
- */
-@Getter
-@AllArgsConstructor
-public enum AddressTypeEnum implements IntArrayValuable {
-
-    DEFAULT(1, "默认收件地址"),
-    NORMAL(2, "普通收件地址"), // 即非默认收件地址
-
-    ;
-
-    public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(AddressTypeEnum::getType).toArray();
-
-    private final Integer type;
-    private final String desc;
-
-    @Override
-    public int[] array() {
-        return ARRAYS;
-    }
-}

+ 0 - 4
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/enums/package-info.java

@@ -1,4 +0,0 @@
-/**
- * 占位
- */
-package cn.iocoder.yudao.module.member.enums;