|
|
@@ -1918,6 +1918,13 @@ CREATE TABLE IF NOT EXISTS coupon (
|
|
|
valid_until DATETIME,
|
|
|
total_count INT DEFAULT 0,
|
|
|
used_count INT DEFAULT 0,
|
|
|
+ discount_rate INT COMMENT '折扣券折扣率(千分比,9000=9折)',
|
|
|
+ product_id BIGINT COMMENT '绑定商品ID,NULL=全场通用',
|
|
|
+ points_price INT DEFAULT 0 COMMENT '积分兑换价,0=不可积分兑换',
|
|
|
+ grant_type VARCHAR(16) COMMENT '发放规则:JOIN/PERIODIC/POPULATION,NULL=不自动发放',
|
|
|
+ grant_level_code VARCHAR(32) COMMENT '发放规则对应会员等级',
|
|
|
+ grant_period VARCHAR(16) COMMENT 'PERIODIC周期:MONTHLY/QUARTERLY',
|
|
|
+ grant_quantity INT DEFAULT 1 COMMENT '每次发放数量',
|
|
|
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
|
|
|
INDEX idx_valid_period (valid_from, valid_until)
|
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='优惠券配置表';
|
|
|
@@ -3894,3 +3901,21 @@ CREATE TABLE IF NOT EXISTS relationship_questionnaire_responses (
|
|
|
calculated_at DATETIME DEFAULT CURRENT_TIMESTAMP,
|
|
|
INDEX idx_q_resp_snap (snapshot_id)
|
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='关系问卷回答记录';
|
|
|
+
|
|
|
+-- =============================================
|
|
|
+-- 优惠券发放流水表(会员体系重构: 统一价+优惠券发放/积分兑换)
|
|
|
+-- =============================================
|
|
|
+
|
|
|
+CREATE TABLE IF NOT EXISTS coupon_grant_log (
|
|
|
+ id BIGINT AUTO_INCREMENT PRIMARY KEY,
|
|
|
+ user_id BIGINT NOT NULL COMMENT '收券用户ID',
|
|
|
+ coupon_id BIGINT NOT NULL COMMENT '券模板ID',
|
|
|
+ grant_type VARCHAR(16) NOT NULL COMMENT 'JOIN/PERIODIC/POPULATION/EXCHANGE',
|
|
|
+ period VARCHAR(16) COMMENT '周期标识(YYYY-MM或YYYY-Qn),PERIODIC防重用',
|
|
|
+ quantity INT DEFAULT 1 COMMENT '发放数量',
|
|
|
+ source VARCHAR(64) COMMENT '触发来源(订单号/成员ID等)',
|
|
|
+ created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
|
|
|
+ UNIQUE KEY uk_grant (user_id, coupon_id, grant_type, period),
|
|
|
+ INDEX idx_coupon (coupon_id),
|
|
|
+ INDEX idx_user (user_id)
|
|
|
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='优惠券发放流水表';
|