Files
ruoyi-vue-pro/sql/mysql/member-init.sql

175 lines
9.2 KiB
SQL

-- =============================================
-- Member 模块建表 — 从 PostgreSQL 测试 SQL 转换为 MySQL
-- 用于本地开发环境补全 member 表
-- =============================================
-- 1. 会员配置表
CREATE TABLE IF NOT EXISTS member_config (
id bigint NOT NULL AUTO_INCREMENT,
group_id bigint NULL DEFAULT NULL COMMENT '用户分组编号',
level_id bigint NULL DEFAULT NULL COMMENT '等级编号',
tenant_id bigint NOT NULL DEFAULT 0,
creator varchar(64) DEFAULT '' COMMENT '创建者',
create_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
updater varchar(64) DEFAULT '' COMMENT '更新者',
update_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
deleted bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='会员配置表';
-- 2. 会员标签表
CREATE TABLE IF NOT EXISTS member_tag (
id bigint NOT NULL AUTO_INCREMENT,
name varchar(50) NOT NULL COMMENT '标签名称',
creator varchar(64) DEFAULT '' COMMENT '创建者',
create_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
updater varchar(64) DEFAULT '' COMMENT '更新者',
update_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
deleted bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
tenant_id bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='会员标签';
-- 3. 用户分组表
CREATE TABLE IF NOT EXISTS member_group (
id bigint NOT NULL AUTO_INCREMENT,
name varchar(50) NOT NULL COMMENT '分组名称',
remark varchar(255) DEFAULT '' COMMENT '备注',
status tinyint NOT NULL DEFAULT 0 COMMENT '状态',
creator varchar(64) DEFAULT '' COMMENT '创建者',
create_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
updater varchar(64) DEFAULT '' COMMENT '更新者',
update_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
deleted bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
tenant_id bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='会员分组';
-- 4. 会员等级表(完整版,覆盖之前创建的简化版)
CREATE TABLE IF NOT EXISTS member_level (
id bigint NOT NULL AUTO_INCREMENT,
name varchar(50) NOT NULL COMMENT '等级名称',
experience int NOT NULL DEFAULT 0 COMMENT '所需经验',
level int NOT NULL DEFAULT 1 COMMENT '等级',
discount_percent int NOT NULL DEFAULT 100 COMMENT '折扣百分比',
icon varchar(255) DEFAULT '' COMMENT '图标',
background_url varchar(255) DEFAULT '' COMMENT '背景图',
status tinyint NOT NULL DEFAULT 0 COMMENT '状态',
creator varchar(64) DEFAULT '' COMMENT '创建者',
create_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
updater varchar(64) DEFAULT '' COMMENT '更新者',
update_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
deleted bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
tenant_id bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='会员等级';
-- 5. 会员等级记录表
CREATE TABLE IF NOT EXISTS member_level_record (
id bigint NOT NULL AUTO_INCREMENT,
user_id bigint NOT NULL COMMENT '用户编号',
level_id bigint NOT NULL COMMENT '等级编号',
level_name varchar(50) DEFAULT '' COMMENT '等级名称',
experience int NOT NULL DEFAULT 0 COMMENT '当前经验',
remark varchar(255) DEFAULT '' COMMENT '备注',
creator varchar(64) DEFAULT '' COMMENT '创建者',
create_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
updater varchar(64) DEFAULT '' COMMENT '更新者',
update_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
deleted bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
tenant_id bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='会员等级记录';
-- 6. 会员经验记录表
CREATE TABLE IF NOT EXISTS member_experience_record (
id bigint NOT NULL AUTO_INCREMENT,
user_id bigint NOT NULL COMMENT '用户编号',
biz_type varchar(50) NOT NULL COMMENT '业务类型',
biz_id varchar(100) NOT NULL COMMENT '业务编号',
title varchar(100) NOT NULL COMMENT '标题',
experience int NOT NULL COMMENT '经验',
total_experience int NOT NULL DEFAULT 0 COMMENT '累计经验',
description varchar(255) DEFAULT '' COMMENT '描述',
creator varchar(64) DEFAULT '' COMMENT '创建者',
create_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
updater varchar(64) DEFAULT '' COMMENT '更新者',
update_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
deleted bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
tenant_id bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='会员经验记录';
-- 7. 会员积分记录表
CREATE TABLE IF NOT EXISTS member_point_record (
id bigint NOT NULL AUTO_INCREMENT,
user_id bigint NOT NULL COMMENT '用户编号',
biz_type varchar(50) NOT NULL COMMENT '业务类型',
biz_id varchar(100) NOT NULL COMMENT '业务编号',
title varchar(100) NOT NULL COMMENT '标题',
point int NOT NULL COMMENT '积分',
total_point int NOT NULL DEFAULT 0 COMMENT '累计积分',
description varchar(255) DEFAULT '' COMMENT '描述',
creator varchar(64) DEFAULT '' COMMENT '创建者',
create_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
updater varchar(64) DEFAULT '' COMMENT '更新者',
update_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
deleted bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
tenant_id bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='会员积分记录';
-- 8. 会员签到配置表
CREATE TABLE IF NOT EXISTS member_sign_in_config (
id bigint NOT NULL AUTO_INCREMENT,
day int NOT NULL COMMENT '签到天数',
point int NOT NULL DEFAULT 0 COMMENT '奖励积分',
experience int NOT NULL DEFAULT 0 COMMENT '奖励经验',
status tinyint NOT NULL DEFAULT 0 COMMENT '状态',
creator varchar(64) DEFAULT '' COMMENT '创建者',
create_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
updater varchar(64) DEFAULT '' COMMENT '更新者',
update_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
deleted bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
tenant_id bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='会员签到配置';
-- 9. 会员签到记录表
CREATE TABLE IF NOT EXISTS member_sign_in_record (
id bigint NOT NULL AUTO_INCREMENT,
user_id bigint NOT NULL COMMENT '用户编号',
day int NOT NULL COMMENT '签到天数',
point int NOT NULL DEFAULT 0 COMMENT '获得积分',
experience int NOT NULL DEFAULT 0 COMMENT '获得经验',
creator varchar(64) DEFAULT '' COMMENT '创建者',
create_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
updater varchar(64) DEFAULT '' COMMENT '更新者',
update_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
deleted bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
tenant_id bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='会员签到记录';
-- 10. 会员地址表
CREATE TABLE IF NOT EXISTS member_address (
id bigint NOT NULL AUTO_INCREMENT,
user_id bigint NOT NULL COMMENT '用户编号',
name varchar(20) NOT NULL COMMENT '收件人姓名',
mobile varchar(20) NOT NULL COMMENT '手机号',
area_id bigint NOT NULL COMMENT '地区编号',
detail_address varchar(250) NOT NULL COMMENT '详细地址',
default_status bit(1) NOT NULL DEFAULT b'0' COMMENT '是否默认',
creator varchar(64) DEFAULT '' COMMENT '创建者',
create_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
updater varchar(64) DEFAULT '' COMMENT '更新者',
update_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
deleted bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='会员地址';
-- =============================================
-- 种子数据
-- =============================================
INSERT IGNORE INTO member_level (id, name, level, experience, status, tenant_id) VALUES (1, '普通会员', 1, 0, 0, 1);