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

This commit is contained in:
YunaiV 2022-07-31 22:26:26 +08:00
parent 9577f9b17d
commit 022e5b8519
14 changed files with 319 additions and 75 deletions

View File

@ -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;
}
}

View File

@ -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;
}
}

View File

@ -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;
/**
* 分类名称
*/

View File

@ -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") // 用于 OraclePostgreSQLKingbaseDB2H2 数据库的主键自增如果是 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;
}

View File

@ -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") // 用于 OraclePostgreSQLKingbaseDB2H2 数据库的主键自增如果是 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;
}

View File

@ -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;
/**
* 商品分组编号
*

View File

@ -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;
/**
* 分组名称
*/

View File

@ -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;
/**
* 规格名称
*/

View File

@ -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") // 用于 OraclePostgreSQLKingbaseDB2H2 数据库的主键自增如果是 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;
}

View File

@ -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;
// ========== 基本信息 =========

View File

@ -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;
}

View File

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

View File

@ -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;
}
}

View File

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