商城:product:完善 ProductSpuDO 表

pull/2/head
YunaiV 2023-04-19 10:55:43 +08:00
parent 38d7d75f7f
commit b30fc28021
9 changed files with 110 additions and 286 deletions

View File

@ -20,7 +20,7 @@
<!-- <module>yudao-module-bpm</module>--> <!-- <module>yudao-module-bpm</module>-->
<!-- <module>yudao-module-report</module>--> <!-- <module>yudao-module-report</module>-->
<!-- <module>yudao-module-mp</module>--> <!-- <module>yudao-module-mp</module>-->
<!-- <module>yudao-module-mall</module>--> <module>yudao-module-mall</module>
<!-- 示例项目 --> <!-- 示例项目 -->
<module>yudao-example</module> <module>yudao-example</module>
</modules> </modules>

View File

@ -13,6 +13,7 @@ import java.util.Arrays;
*/ */
@Getter @Getter
@AllArgsConstructor @AllArgsConstructor
@Deprecated
public enum ProductSpuSpecTypeEnum implements IntArrayValuable { public enum ProductSpuSpecTypeEnum implements IntArrayValuable {
RECYCLE(1, "统一规格"), RECYCLE(1, "统一规格"),

View File

@ -1,43 +0,0 @@
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.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_group_bind")
@KeySequence("product_group_bind_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ProductGroupBindDO extends BaseDO {
/**
*
*/
@TableId
private Long id;
/**
*
*
* {@link ProductGroupDO#getId()}
*/
private Long groupId;
/**
* SPU
*
* {@link ProductSpuDO#getId()}
*/
private Long spuId;
}

View File

@ -1,63 +0,0 @@
package cn.iocoder.yudao.module.product.dal.dataobject.group;
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import cn.iocoder.yudao.module.product.enums.group.ProductGroupStyleEnum;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
/**
* DO
*
* @author
*/
@TableName("product_group")
@KeySequence("product_group_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ProductGroupDO extends BaseDO {
/**
*
*/
@TableId
private Long id;
/**
*
*/
private String name;
/**
*
*
* {@link CommonStatusEnum}
*/
private Integer status;
/**
*
*/
private Integer count;
/**
*
*/
private Integer sort;
/**
* APP
*
* {@link ProductGroupStyleEnum}
*/
private Integer style;
/**
*
*
* true -
* false -
*/
private Boolean defaulted;
}

View File

@ -1,38 +0,0 @@
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;
}

View File

@ -1,26 +0,0 @@
package cn.iocoder.yudao.module.product.dal.dataobject.shop;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
// TODO 芋艿:待设计
/**
* DO
*
* @author
*/
@TableName("shop")
@KeySequence("shop_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ShopDO extends BaseDO {
private Long id;
}

View File

@ -3,6 +3,7 @@ package cn.iocoder.yudao.module.product.dal.dataobject.spu;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; 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.brand.ProductBrandDO;
import cn.iocoder.yudao.module.product.dal.dataobject.category.ProductCategoryDO; 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.sku.ProductSkuDO; import cn.iocoder.yudao.module.product.dal.dataobject.sku.ProductSkuDO;
import cn.iocoder.yudao.module.product.enums.spu.ProductSpuSpecTypeEnum; import cn.iocoder.yudao.module.product.enums.spu.ProductSpuSpecTypeEnum;
import cn.iocoder.yudao.module.product.enums.spu.ProductSpuStatusEnum; import cn.iocoder.yudao.module.product.enums.spu.ProductSpuStatusEnum;
@ -43,17 +44,22 @@ public class ProductSpuDO extends BaseDO {
*/ */
private String name; private String name;
/** /**
* *
*/ */
private String code; private String keyword;
/** /**
* *
*/ */
private String sellPoint; private String introduction;
/** /**
* *
*/ */
private String description; private String description;
/**
*
*/
private String barCode;
/** /**
* *
* *
@ -67,19 +73,23 @@ public class ProductSpuDO extends BaseDO {
*/ */
private Long brandId; private Long brandId;
/** /**
* *
* */
* 1. private String picUrl;
* 2. 使 800x800 1M /**
* 3. 1 10 *
*/ */
@TableField(typeHandler = JacksonTypeHandler.class) @TableField(typeHandler = JacksonTypeHandler.class)
private List<String> picUrls; private List<String> sliderPicUrls;
/** /**
* *
*/ */
private String videoUrl; private String videoUrl;
/**
*
*/
private String unitName;
/** /**
* *
*/ */
@ -96,37 +106,86 @@ public class ProductSpuDO extends BaseDO {
/** /**
* *
* *
* {@link ProductSpuSpecTypeEnum} * false -
* true -
*/ */
private Integer specType; private Boolean specType;
/** /**
* 使 * 使
* *
* {@link ProductSkuDO#getPrice()} * {@link ProductSkuDO#getPrice()}
*/ */
private Integer minPrice; private Integer price;
/**
* 使
*
* {@link ProductSkuDO#getPrice()}
*/
private Integer maxPrice;
/** /**
* 使 * 使
* *
* {@link ProductSkuDO#getMarketPrice()} * {@link ProductSkuDO#getMarketPrice()} TODO
*/ */
private Integer marketPrice; private Integer marketPrice;
/** /**
* * 使
*
* {@link ProductSkuDO#getCostPrice()} TODO
*/
private Integer costPrice;
/**
*
* *
* {@link ProductSkuDO#getStock()} * {@link ProductSkuDO#getStock()}
*/ */
private Integer totalStock; private Integer stock;
// ========== 物流相关字段 =========
/** /**
* *
*
* {@link DeliveryTemplateDO#getId()}
*/ */
private Boolean showStock; private Long deliveryTemplateId;
// ========== 营销相关字段 =========
/**
*
*/
private Boolean recommendHot;
/**
*
*/
private Boolean recommendBenefit;
/**
*
*/
private Boolean recommendBest;
/**
*
*/
private Boolean recommendNew;
/**
*
*/
private Boolean recommendGood;
/**
*
*/
private Integer giveIntegral;
/**
*
*
* false -
* true -
*/
private Boolean subCommissionType;
/**
*
*
* PromotionTypeEnum
*/
@TableField(typeHandler = JacksonTypeHandler.class)
private List<Integer> activityOrders;
// ========== 统计相关字段 ========= // ========== 统计相关字段 =========
@ -139,74 +198,8 @@ public class ProductSpuDO extends BaseDO {
*/ */
private Integer virtualSalesCount; private Integer virtualSalesCount;
/** /**
* *
*/ */
private Integer clickCount; private Integer browseCount;
// ========== 物流相关字段 =========
// TODO 芋艿:稍后完善物流的字段
// /**
// * 配送方式
// *
// * 枚举 {@link DeliveryModeEnum}
// */
// private Integer deliveryMode;
// /**
// * 配置模板编号
// *
// * 关联 {@link DeliveryTemplateDO#getId()}
// */
// private Long deliveryTemplateId;
// TODO ========== 待定字段yv =========
// TODO vip_price 会员价格
// TODO postage 邮费
// TODO is_postage 是否包邮
// TODO unit_name 单位
// TODO is_new 商户是否代理
// TODO give_integral 获得积分
// TODO is_integral 是开启积分兑换
// TODO integral 所需积分
// TODO is_seckill 秒杀状态
// TODO is_bargain 砍价状态
// TODO code_path 产品二维码地址
// TODO is_sub 是否分佣
// TODO ↓↓ 芋艿 ↓↓ 看起来走分组更合适?
// TODO is_hot 是否热卖
// TODO is_benefit 是否优惠
// TODO is_best 是否精品
// TODO is_new 是否新品
// TODO is_good 是否优品推荐
// TODO ========== 待定字段cf =========
// TODO source_link 淘宝京东1688类型
// TODO activity 活动显示排序 0=默认 1=秒 2=砍价 3=拼团
// TODO ========== 待定字段lf =========
// TODO free_shipping_type运费类型1-包邮2-统一运费3-运费模板
// TODO free_shipping统一运费金额
// TODO free_shipping_template_id运费模板
// TODO is_commission分销佣金1-开启0-不开启first_ratio second_ratio three_ratio
// TODO is_share_bouns区域股东分红1-开启0-不开启region_ratioshareholder_ratio
// TODO is_new新品推荐1-是0-否
// TODO is_best好物优选1-是0-否
// TODO is_like猜你喜欢1-是0-否
// TODO is_team是否开启拼团[0=否, 1=是]
// TODO is_integral积分抵扣1-开启0-不开启
// TODO is_member会员价1-开启0-不开启
// TODO give_integral_type赠送积分类型0-不赠送1-赠送固定积分2-按比例赠送积分
// TODO give_integral赠送积分
// TODO poster商品自定义海报
// TODO ========== 待定字段laoji =========
// TODO productType 1 - 普通商品 2 - 预售商品;可能和 type 合并不错
// TODO productUnit 商品单位
// TODO extJson 扩展信息;例如说,预售商品的信息
} }

View File

@ -203,7 +203,7 @@ public class ProductSpuServiceImplTest extends BaseDbUnitTest {
o.setClickCount(100); o.setClickCount(100);
o.setCode(code); o.setCode(code);
o.setDescription("测试商品"); o.setDescription("测试商品");
o.setPicUrls(new ArrayList<>()); o.setSliderPicUrls(new ArrayList<>());
o.setName("测试"); o.setName("测试");
o.setSalesCount(100); o.setSalesCount(100);
o.setSellPoint("超级加倍"); o.setSellPoint("超级加倍");
@ -251,7 +251,7 @@ public class ProductSpuServiceImplTest extends BaseDbUnitTest {
o.setClickCount(1); o.setClickCount(1);
o.setCode(generateNo()); o.setCode(generateNo());
o.setDescription("测试商品"); o.setDescription("测试商品");
o.setPicUrls(new ArrayList<>()); o.setSliderPicUrls(new ArrayList<>());
o.setName("测试"); o.setName("测试");
o.setSalesCount(1); o.setSalesCount(1);
o.setSellPoint("卖点"); o.setSellPoint("卖点");

View File

@ -54,11 +54,11 @@
<!-- <version>${revision}</version>--> <!-- <version>${revision}</version>-->
<!-- </dependency>--> <!-- </dependency>-->
<!-- 支付服务 --> <!-- 支付服务 -->
<!-- <dependency>--> <dependency>
<!-- <groupId>cn.iocoder.boot</groupId>--> <groupId>cn.iocoder.boot</groupId>
<!-- <artifactId>yudao-module-pay-biz</artifactId>--> <artifactId>yudao-module-pay-biz</artifactId>
<!-- <version>${revision}</version>--> <version>${revision}</version>
<!-- </dependency>--> </dependency>
<!-- 微信公众号模块。默认注释,保证编译速度 --> <!-- 微信公众号模块。默认注释,保证编译速度 -->
<!-- <dependency>--> <!-- <dependency>-->
@ -68,21 +68,21 @@
<!-- </dependency>--> <!-- </dependency>-->
<!-- 商城相关模块。默认注释,保证编译速度 --> <!-- 商城相关模块。默认注释,保证编译速度 -->
<!-- <dependency>--> <dependency>
<!-- <groupId>cn.iocoder.boot</groupId>--> <groupId>cn.iocoder.boot</groupId>
<!-- <artifactId>yudao-module-promotion-biz</artifactId>--> <artifactId>yudao-module-promotion-biz</artifactId>
<!-- <version>${revision}</version>--> <version>${revision}</version>
<!-- </dependency>--> </dependency>
<!-- <dependency>--> <dependency>
<!-- <groupId>cn.iocoder.boot</groupId>--> <groupId>cn.iocoder.boot</groupId>
<!-- <artifactId>yudao-module-product-biz</artifactId>--> <artifactId>yudao-module-product-biz</artifactId>
<!-- <version>${revision}</version>--> <version>${revision}</version>
<!-- </dependency>--> </dependency>
<!-- <dependency>--> <dependency>
<!-- <groupId>cn.iocoder.boot</groupId>--> <groupId>cn.iocoder.boot</groupId>
<!-- <artifactId>yudao-module-trade-biz</artifactId>--> <artifactId>yudao-module-trade-biz</artifactId>
<!-- <version>${revision}</version>--> <version>${revision}</version>
<!-- </dependency>--> </dependency>
<!-- spring boot 配置所需依赖 --> <!-- spring boot 配置所需依赖 -->
<dependency> <dependency>