Commit 022e5b8519fbbd10ba39e6765f48baf0f85c577b

Authored by YunaiV
1 parent 9577f9b1

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

Showing 14 changed files with 319 additions and 75 deletions
yudao-module-mall/yudao-module-product-api/src/main/java/cn/iocoder/yudao/module/product/enums/comment/ProductCommentAuditStatusEnum.java 0 → 100644
  1 +package cn.iocoder.yudao.module.product.enums.comment;
  2 +
  3 +import cn.iocoder.yudao.framework.common.core.IntArrayValuable;
  4 +import lombok.AllArgsConstructor;
  5 +import lombok.Getter;
  6 +
  7 +import java.util.Arrays;
  8 +
  9 +/**
  10 + * 商品评论的审批状态枚举
  11 + *
  12 + * @author 芋道源码
  13 + */
  14 +@Getter
  15 +@AllArgsConstructor
  16 +public enum ProductCommentAuditStatusEnum implements IntArrayValuable {
  17 +
  18 + NONE(1, "待审核"),
  19 + APPROVE(2, "审批通过"),
  20 + REJECT(2, "审批不通过"),;
  21 +
  22 + public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(ProductCommentAuditStatusEnum::getStatus).toArray();
  23 +
  24 + /**
  25 + * 审批状态
  26 + */
  27 + private final Integer status;
  28 + /**
  29 + * 状态名
  30 + */
  31 + private final String name;
  32 +
  33 + @Override
  34 + public int[] array() {
  35 + return ARRAYS;
  36 + }
  37 +
  38 +}
yudao-module-mall/yudao-module-product-api/src/main/java/cn/iocoder/yudao/module/product/enums/comment/ProductCommentEvaluateEnum.java 0 → 100644
  1 +package cn.iocoder.yudao.module.product.enums.comment;
  2 +
  3 +import cn.iocoder.yudao.framework.common.core.IntArrayValuable;
  4 +import lombok.AllArgsConstructor;
  5 +import lombok.Getter;
  6 +
  7 +import java.util.Arrays;
  8 +
  9 +/**
  10 + * 商品评论的评价枚举
  11 + *
  12 + * @author 芋道源码
  13 + */
  14 +@Getter
  15 +@AllArgsConstructor
  16 +public enum ProductCommentEvaluateEnum implements IntArrayValuable {
  17 +
  18 + GOOD(1, "好评"),
  19 + BAD(2, "差评"),
  20 + MIDDLE(2, "中评"),;
  21 +
  22 + public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(ProductCommentEvaluateEnum::getEvaluate).toArray();
  23 +
  24 + /**
  25 + * 评价
  26 + */
  27 + private final Integer evaluate;
  28 + /**
  29 + * 评价名
  30 + */
  31 + private final String name;
  32 +
  33 + @Override
  34 + public int[] array() {
  35 + return ARRAYS;
  36 + }
  37 +
  38 +}
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; @@ -2,7 +2,6 @@ package cn.iocoder.yudao.module.product.dal.dataobject.category;
2 2
3 import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; 3 import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
4 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; 4 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
5 -import cn.iocoder.yudao.module.product.dal.dataobject.shop.ShopDO;  
6 import com.baomidou.mybatisplus.annotation.TableId; 5 import com.baomidou.mybatisplus.annotation.TableId;
7 import com.baomidou.mybatisplus.annotation.TableName; 6 import com.baomidou.mybatisplus.annotation.TableName;
8 import lombok.*; 7 import lombok.*;
@@ -39,12 +38,12 @@ public class ProductCategoryDO extends BaseDO { @@ -39,12 +38,12 @@ public class ProductCategoryDO extends BaseDO {
39 * 父分类编号 38 * 父分类编号
40 */ 39 */
41 private Long parentId; 40 private Long parentId;
42 - /**  
43 - * 店铺编号  
44 - *  
45 - * 关联 {@link ShopDO#getId()}  
46 - */  
47 - private Long shopId; 41 +// /**
  42 +// * 店铺编号
  43 +// *
  44 +// * 关联 {@link ShopDO#getId()} TODO 芋艿:多店铺,暂不考虑
  45 +// */
  46 +// private Long shopId;
48 /** 47 /**
49 * 分类名称 48 * 分类名称
50 */ 49 */
yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/comment/ProductCommentDO.java 0 → 100644
  1 +package cn.iocoder.yudao.module.product.dal.dataobject.comment;
  2 +
  3 +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
  4 +import cn.iocoder.yudao.module.product.dal.dataobject.spu.ProductSpuDO;
  5 +import cn.iocoder.yudao.module.product.enums.comment.ProductCommentAuditStatusEnum;
  6 +import cn.iocoder.yudao.module.product.enums.comment.ProductCommentEvaluateEnum;
  7 +import com.baomidou.mybatisplus.annotation.KeySequence;
  8 +import com.baomidou.mybatisplus.annotation.TableField;
  9 +import com.baomidou.mybatisplus.annotation.TableId;
  10 +import com.baomidou.mybatisplus.annotation.TableName;
  11 +import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
  12 +import lombok.*;
  13 +
  14 +import java.util.Date;
  15 +import java.util.List;
  16 +
  17 +/**
  18 + * 商品评论 DO
  19 + *
  20 + * @author 芋道源码
  21 + */
  22 +@TableName("product_comment")
  23 +@KeySequence("product_comment_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
  24 +@Data
  25 +@EqualsAndHashCode(callSuper = true)
  26 +@ToString(callSuper = true)
  27 +@Builder
  28 +@NoArgsConstructor
  29 +@AllArgsConstructor
  30 +public class ProductCommentDO extends BaseDO {
  31 +
  32 + /**
  33 + * 评论编号,主键自增
  34 + */
  35 + @TableId
  36 + private Long id;
  37 + /**
  38 + * 商品 SPU 编号
  39 + *
  40 + * 关联 {@link ProductSpuDO#getId()}
  41 + */
  42 + private Long spuId;
  43 + /**
  44 + * 订单项编号
  45 + *
  46 + * 关联 OrderItemDO 的 id 编号
  47 + */
  48 + private Long orderItemId;
  49 +
  50 + /**
  51 + * 用户编号
  52 + *
  53 + * 关联 MemberUserDO 的 id 编号
  54 + */
  55 + private Long userId;
  56 + /**
  57 + * 用户 IP
  58 + */
  59 + private String userIp;
  60 + /**
  61 + * 是否匿名
  62 + */
  63 + private Boolean anonymous;
  64 + /**
  65 + * 评论内容
  66 + */
  67 + private String content;
  68 + /**
  69 + * 评论图片地址数组
  70 + */
  71 + @TableField(typeHandler = JacksonTypeHandler.class)
  72 + private List<String> picUrls;
  73 + /**
  74 + * 得分,0-5 分
  75 + */
  76 + private Integer score;
  77 + /**
  78 + * 评价
  79 + *
  80 + * 枚举 {@link ProductCommentEvaluateEnum}
  81 + */
  82 + private Integer evaluate;
  83 +
  84 + /**
  85 + * 商家是否回复
  86 + */
  87 + private Boolean replied;
  88 + /**
  89 + * 商家回复内容
  90 + */
  91 + private String replyContent;
  92 + /**
  93 + * 商家回复时间
  94 + */
  95 + private Date replyTime;
  96 + /**
  97 + * 审核状态
  98 + *
  99 + * 枚举 {@link ProductCommentAuditStatusEnum}
  100 + */
  101 + private Integer auditStatus;
  102 +
  103 + /**
  104 + * 有用的计数
  105 + *
  106 + * 其他用户看到评论时,可点击「有用」按钮
  107 + */
  108 + private Integer usefulCount;
  109 +
  110 +}
yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/favorite/ProductFavoriteDO.java 0 → 100644
  1 +package cn.iocoder.yudao.module.product.dal.dataobject.favorite;
  2 +
  3 +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
  4 +import cn.iocoder.yudao.module.product.dal.dataobject.spu.ProductSpuDO;
  5 +import com.baomidou.mybatisplus.annotation.KeySequence;
  6 +import com.baomidou.mybatisplus.annotation.TableId;
  7 +import com.baomidou.mybatisplus.annotation.TableName;
  8 +import lombok.*;
  9 +
  10 +/**
  11 + * 商品收藏 DO
  12 + *
  13 + * @author 芋道源码
  14 + */
  15 +@TableName("product_favorite")
  16 +@KeySequence("product_favorite_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
  17 +@Data
  18 +@EqualsAndHashCode(callSuper = true)
  19 +@ToString(callSuper = true)
  20 +@Builder
  21 +@NoArgsConstructor
  22 +@AllArgsConstructor
  23 +public class ProductFavoriteDO extends BaseDO {
  24 +
  25 + /**
  26 + * 编号,主键自增
  27 + */
  28 + @TableId
  29 + private Long id;
  30 + /**
  31 + * 用户编号
  32 + *
  33 + * 关联 MemberUserDO 的 id 编号
  34 + */
  35 + private Long userId;
  36 + /**
  37 + * 商品 SPU 编号
  38 + *
  39 + * 关联 {@link ProductSpuDO#getId()}
  40 + */
  41 + private Long spuId;
  42 +
  43 +}
yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/group/ProductGroupBindDO.java
1 package cn.iocoder.yudao.module.product.dal.dataobject.group; 1 package cn.iocoder.yudao.module.product.dal.dataobject.group;
2 2
3 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; 3 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
4 -import cn.iocoder.yudao.module.product.dal.dataobject.shop.ShopDO;  
5 import cn.iocoder.yudao.module.product.dal.dataobject.spu.ProductSpuDO; 4 import cn.iocoder.yudao.module.product.dal.dataobject.spu.ProductSpuDO;
6 import com.baomidou.mybatisplus.annotation.KeySequence; 5 import com.baomidou.mybatisplus.annotation.KeySequence;
7 import com.baomidou.mybatisplus.annotation.TableId; 6 import com.baomidou.mybatisplus.annotation.TableId;
@@ -28,12 +27,12 @@ public class ProductGroupBindDO extends BaseDO { @@ -28,12 +27,12 @@ public class ProductGroupBindDO extends BaseDO {
28 */ 27 */
29 @TableId 28 @TableId
30 private Long id; 29 private Long id;
31 - /**  
32 - * 店铺编号  
33 - *  
34 - * 关联 {@link ShopDO#getId()}  
35 - */  
36 - private Long shopId; 30 +// /**
  31 +// * 店铺编号
  32 +// *
  33 +// * 关联 {@link ShopDO#getId()} TODO 芋艿:多店铺,暂不考虑
  34 +// */
  35 +// private Long shopId;
37 /** 36 /**
38 * 商品分组编号 37 * 商品分组编号
39 * 38 *
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 { @@ -29,12 +29,12 @@ public class ProductGroupDO extends BaseDO {
29 */ 29 */
30 @TableId 30 @TableId
31 private Long id; 31 private Long id;
32 - /**  
33 - * 店铺编号  
34 - *  
35 - * 关联 {@link ShopDO#getId()}  
36 - */  
37 - private Long shopId; 32 +// /**
  33 +// * 店铺编号
  34 +// *
  35 +// * 关联 {@link ShopDO#getId()} TODO 芋艿:多店铺,暂不考虑
  36 +// */
  37 +// private Long shopId;
38 /** 38 /**
39 * 分组名称 39 * 分组名称
40 */ 40 */
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; @@ -2,7 +2,6 @@ package cn.iocoder.yudao.module.product.dal.dataobject.property;
2 2
3 import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; 3 import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
4 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; 4 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
5 -import cn.iocoder.yudao.module.product.dal.dataobject.shop.ShopDO;  
6 import com.baomidou.mybatisplus.annotation.KeySequence; 5 import com.baomidou.mybatisplus.annotation.KeySequence;
7 import com.baomidou.mybatisplus.annotation.TableId; 6 import com.baomidou.mybatisplus.annotation.TableId;
8 import com.baomidou.mybatisplus.annotation.TableName; 7 import com.baomidou.mybatisplus.annotation.TableName;
@@ -28,12 +27,12 @@ public class ProductPropertyDO extends BaseDO { @@ -28,12 +27,12 @@ public class ProductPropertyDO extends BaseDO {
28 */ 27 */
29 @TableId 28 @TableId
30 private Long id; 29 private Long id;
31 - /**  
32 - * 店铺编号  
33 - *  
34 - * 关联 {@link ShopDO#getId()}  
35 - */  
36 - private Long shopId; 30 +// /**
  31 +// * 店铺编号
  32 +// *
  33 +// * 关联 {@link ShopDO#getId()} TODO 芋艿:多店铺,暂不考虑
  34 +// */
  35 +// private Long shopId;
37 /** 36 /**
38 * 规格名称 37 * 规格名称
39 */ 38 */
yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/search/ProductHotSearchDO.java 0 → 100644
  1 +package cn.iocoder.yudao.module.product.dal.dataobject.search;
  2 +
  3 +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
  4 +import com.baomidou.mybatisplus.annotation.KeySequence;
  5 +import com.baomidou.mybatisplus.annotation.TableId;
  6 +import com.baomidou.mybatisplus.annotation.TableName;
  7 +import lombok.*;
  8 +
  9 +/**
  10 + * 商品热搜关键字 DO
  11 + *
  12 + * @author 芋道源码
  13 + */
  14 +@TableName("product_hot_search")
  15 +@KeySequence("product_hot_search_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
  16 +@Data
  17 +@EqualsAndHashCode(callSuper = true)
  18 +@ToString(callSuper = true)
  19 +@Builder
  20 +@NoArgsConstructor
  21 +@AllArgsConstructor
  22 +public class ProductHotSearchDO extends BaseDO {
  23 +
  24 + /**
  25 + * 编号,主键自增
  26 + */
  27 + @TableId
  28 + private Long id;
  29 + /**
  30 + * 关键字
  31 + */
  32 + private String name;
  33 + /**
  34 + * 内容
  35 + */
  36 + private String content;
  37 +// /**
  38 +// * 店铺编号
  39 +// *
  40 +// * 关联 {@link ShopDO#getId()} TODO 芋艿:多店铺,暂不考虑
  41 +// */
  42 +// private Long shopId;
  43 +
  44 +}
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; @@ -5,7 +5,6 @@ import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
5 import cn.iocoder.yudao.module.product.dal.dataobject.brand.ProductBrandDO; 5 import cn.iocoder.yudao.module.product.dal.dataobject.brand.ProductBrandDO;
6 import cn.iocoder.yudao.module.product.dal.dataobject.category.ProductCategoryDO; 6 import cn.iocoder.yudao.module.product.dal.dataobject.category.ProductCategoryDO;
7 import cn.iocoder.yudao.module.product.dal.dataobject.delivery.DeliveryTemplateDO; 7 import cn.iocoder.yudao.module.product.dal.dataobject.delivery.DeliveryTemplateDO;
8 -import cn.iocoder.yudao.module.product.dal.dataobject.shop.ShopDO;  
9 import cn.iocoder.yudao.module.product.dal.dataobject.sku.ProductSkuDO; 8 import cn.iocoder.yudao.module.product.dal.dataobject.sku.ProductSkuDO;
10 import cn.iocoder.yudao.module.product.enums.delivery.DeliveryModeEnum; 9 import cn.iocoder.yudao.module.product.enums.delivery.DeliveryModeEnum;
11 import com.baomidou.mybatisplus.annotation.KeySequence; 10 import com.baomidou.mybatisplus.annotation.KeySequence;
@@ -38,12 +37,12 @@ public class ProductSpuDO extends BaseDO { @@ -38,12 +37,12 @@ public class ProductSpuDO extends BaseDO {
38 @TableId 37 @TableId
39 private Long id; 38 private Long id;
40 39
41 - /**  
42 - * 店铺编号  
43 - *  
44 - * 关联 {@link ShopDO#getId()}  
45 - */  
46 - private Long shopId; 40 +// /**
  41 +// * 店铺编号
  42 +// *
  43 +// * 关联 {@link ShopDO#getId()} TODO 芋艿:多店铺,暂不考虑
  44 +// */
  45 +// private Long shopId;
47 46
48 // ========== 基本信息 ========= 47 // ========== 基本信息 =========
49 48
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/address/AddressDO.java
1 package cn.iocoder.yudao.module.member.dal.dataobject.address; 1 package cn.iocoder.yudao.module.member.dal.dataobject.address;
2 2
3 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; 3 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
4 -import cn.iocoder.yudao.module.member.enums.AddressTypeEnum;  
5 import com.baomidou.mybatisplus.annotation.TableId; 4 import com.baomidou.mybatisplus.annotation.TableId;
6 import com.baomidou.mybatisplus.annotation.TableName; 5 import com.baomidou.mybatisplus.annotation.TableName;
7 import lombok.*; 6 import lombok.*;
@@ -32,24 +31,28 @@ public class AddressDO extends BaseDO { @@ -32,24 +31,28 @@ public class AddressDO extends BaseDO {
32 /** 31 /**
33 * 收件人名称 32 * 收件人名称
34 */ 33 */
35 - private String name; 34 + private String receiver;
36 /** 35 /**
37 * 手机号 36 * 手机号
38 */ 37 */
39 private String mobile; 38 private String mobile;
40 /** 39 /**
41 - * 地区编码 40 + * 地区编号
42 */ 41 */
43 - private Integer areaCode; 42 + private Integer areaId;
  43 + /**
  44 + * 邮编
  45 + */
  46 + private String postCode;
44 /** 47 /**
45 * 收件详细地址 48 * 收件详细地址
46 */ 49 */
47 private String detailAddress; 50 private String detailAddress;
48 /** 51 /**
49 - * 地址类型 52 + * 是否默认
50 * 53 *
51 - * 枚举 {@link AddressTypeEnum} 54 + * true - 默认收件地址
52 */ 55 */
53 - private Integer type; 56 + private Boolean defaulted;
54 57
55 } 58 }
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 { @@ -69,4 +69,10 @@ public class MemberUserDO extends TenantBaseDO {
69 */ 69 */
70 private Date loginDate; 70 private Date loginDate;
71 71
  72 + // TODO 芋艿:name 真实名字;
  73 + // TODO 芋艿:email 邮箱;
  74 + // TODO 芋艿:gender 性别;
  75 + // TODO 芋艿:score 积分;
  76 + // TODO 芋艿:payPassword 支付密码;
  77 +
72 } 78 }
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/enums/AddressTypeEnum.java deleted
1 -package cn.iocoder.yudao.module.member.enums;  
2 -  
3 -import cn.iocoder.yudao.framework.common.core.IntArrayValuable;  
4 -import lombok.AllArgsConstructor;  
5 -import lombok.Getter;  
6 -  
7 -import java.util.Arrays;  
8 -  
9 -/**  
10 - * 用户收件地址的类型枚举  
11 - */  
12 -@Getter  
13 -@AllArgsConstructor  
14 -public enum AddressTypeEnum implements IntArrayValuable {  
15 -  
16 - DEFAULT(1, "默认收件地址"),  
17 - NORMAL(2, "普通收件地址"), // 即非默认收件地址  
18 -  
19 - ;  
20 -  
21 - public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(AddressTypeEnum::getType).toArray();  
22 -  
23 - private final Integer type;  
24 - private final String desc;  
25 -  
26 - @Override  
27 - public int[] array() {  
28 - return ARRAYS;  
29 - }  
30 -}  
yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/enums/package-info.java deleted
1 -/**  
2 - * 占位  
3 - */  
4 -package cn.iocoder.yudao.module.member.enums;