主体平台优惠券、商家优惠券、商品优惠券
create table t_coupon ( coupon_id int null comment '券ID,主键',
user_id int null comment '用户ID',
batch_id int null comment '批次ID',
status int null comment '0-未使用、1-已使用、2-已过期、3-冻结',
order_id varchar(255) null comment '对应订单ID',
received_time datetime null comment '领取时间',
validat_time datetime null comment '有效日期',
used_time datetime null comment '使用时间' );
create table coupon_rule( int threshold: 5.01 // 使用门槛 ,
amount: 5 // 优惠金额 ,
use_range: 3 // 使用范围,0—全场,1—商家,2—类别,3—商品 ,
commodity_id: 10 // 商品 id
receive_count: 1 // 每个用户可以领取的数量
is_mutex: true // 是否互斥,true 表示互斥,false 表示不互斥
receive_started_at: 2020-11-1 00:08:00 // 领取开始时间
receive_ended_at: 2020-11-6 00:08:00 // 领取结束时间
use_started_at: 2020-11-1 00:00:00 // 使用开始时间
use_ended_at: 2020-11-11 11:59:59 // 使用结束时间 );
CREATE TABLE mer_coupon (
`id` varchar(64) NOT NULL COMMENT 'id',
`name` varchar(64) NOT NULL COMMENT '优惠券名称',
`start_time` datetime NOT NULL COMMENT '使用开始时间',
`end_time` datetime NOT NULL COMMENT '使用结束时间',
`amount` int(4) NOT NULL COMMENT '金额',
`limit_num` int(4) NOT NULL DEFAULT '1' COMMENT '领取上限',
`chant_type` int(4) NOT NULL DEFAULT '1' COMMENT '类型:1 本店、2 全网',
`coupon_type` int(4) NOT NULL DEFAULT '1' COMMENT '优惠券类型:1 店铺 2 指定商品 3 指定类目',
`money_limit` int(11) NOT NULL DEFAULT '0' COMMENT '使用门槛金额',
`flag` int(1) NOT NULL DEFAULT '0' COMMENT '是否仅抵扣邮费:0 否、1 是',
`coupon_desc` varchar(200) DEFAULT NULL COMMENT '优惠券描述信息',
`total_num` int(11) NOT NULL COMMENT '发放总数',
`stock_num` int(11) NOT NULL COMMENT '剩余数量',
`creator` varchar(64) NOT NULL COMMENT '创建者ID',
`chant_id` varchar(64) NOT NULL DEFAULT '-1' COMMENT '商户ID,-1表示全网',
`channel_id` varchar(32) NOT NULL DEFAULT '-1' COMMENT '推广渠道ID,-1表示线上全网',
`status` int(2) NOT NULL DEFAULT '1' COMMENT '活动状态:1 可领取、0 已结束、-1 删除',
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
`modify_time` datetime DEFAULT NULL COMMENT '修改时间',
PRIMARY KEY (`coupon_id`) USING BTREE,
KEY `creator` (`creator`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='商户优惠券';
CREATE TABLE user_coupon`(
`id` varchar(64) NOT NULL COMMENT 'id',
`user_id` varchar(64) NOT NULL COMMENT '用户ID',
`coupon_id` varchar(64) NOT NULL COMMENT '关联优惠券ID',
`order_id` varchar(64) DEFAULT NULL COMMENT '关联订单id',
`source` int(2) DEFAULT '1' COMMENT '来源:1商城 2会员模块发放',
`status` int(2) NOT NULL DEFAULT '1' COMMENT '优惠券状态:1 可使用、2 资源预占、3 已使用 4、已过期',
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
`modify_time` datetime DEFAULT NULL COMMENT '修改时间',
PRIMARY KEY (`zid`) USING BTREE,
KEY `user_id` (`user_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户优惠券资产表';
CREATE TABLE coupon_goods_relation (
`id` varchar(64) NOT NULL COMMENT 'id',
`coupon_id` varchar(64) NOT NULL COMMENT '优惠券id',
`goods_id` varchar(64) NOT NULL COMMENT '商品id',
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`modify_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间',
PRIMARY KEY (`zid`) USING BTREE
) ;