promote
This commit is contained in:
@@ -10,10 +10,12 @@ CREATE TABLE `admin_user` (
|
||||
/* 业务字段开始 */
|
||||
`username` varchar(50) NOT NULL DEFAULT '' COMMENT '用户名',
|
||||
`password` varchar(255) NOT NULL DEFAULT '' COMMENT '密码',
|
||||
`real_name` varchar(50) NOT NULL DEFAULT '' COMMENT '真实姓名',
|
||||
`status` tinyint NOT NULL DEFAULT '1' COMMENT '状态:0-禁用,1-启用',
|
||||
/* 业务字段结束 */
|
||||
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_real_name` (`real_name`),
|
||||
UNIQUE KEY `uk_username` (`username`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='管理员用户表';
|
||||
|
||||
@@ -48,21 +50,24 @@ CREATE TABLE `admin_menu` (
|
||||
`version` bigint NOT NULL DEFAULT '0' COMMENT '版本号',
|
||||
|
||||
/* 业务字段开始 */
|
||||
`parent_id` bigint NOT NULL DEFAULT '0' COMMENT '父菜单ID',
|
||||
`menu_name` varchar(50) NOT NULL DEFAULT '' COMMENT '菜单名称',
|
||||
`menu_code` varchar(100) NOT NULL DEFAULT '' COMMENT '菜单编码',
|
||||
`pid` bigint NOT NULL DEFAULT '0' COMMENT '父菜单ID',
|
||||
`name` varchar(100) NOT NULL DEFAULT '' COMMENT '路由名称',
|
||||
`path` varchar(255) NOT NULL DEFAULT '' COMMENT '路由路径',
|
||||
`component` varchar(255) NOT NULL DEFAULT '' COMMENT '组件路径',
|
||||
`icon` varchar(100) NOT NULL DEFAULT '' COMMENT '图标',
|
||||
`sort` int NOT NULL DEFAULT '0' COMMENT '排序',
|
||||
`visible` tinyint NOT NULL DEFAULT '1' COMMENT '是否可见:0-隐藏,1-显示',
|
||||
`status` tinyint NOT NULL DEFAULT '1' COMMENT '状态:0-禁用,1-启用',
|
||||
`is_cache` tinyint NOT NULL DEFAULT '0' COMMENT '是否缓存:0-不缓存,1-缓存',
|
||||
`redirect` varchar(255) DEFAULT NULL COMMENT '重定向路径',
|
||||
|
||||
/* Meta配置JSON字段 */
|
||||
`meta` json NOT NULL COMMENT '路由元数据配置',
|
||||
|
||||
/* 附加信息 */
|
||||
`status` tinyint NOT NULL DEFAULT '1' COMMENT '状态: 0-禁用, 1-启用',
|
||||
`type` tinyint NOT NULL DEFAULT '0' COMMENT '类型: 0-目录, 1-菜单, 2-按钮',
|
||||
`sort` int NOT NULL DEFAULT '0' COMMENT '排序号',
|
||||
/* 业务字段结束 */
|
||||
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_menu_code` (`menu_code`),
|
||||
KEY `idx_parent_id` (`parent_id`) COMMENT '优化层级查询'
|
||||
UNIQUE KEY `uk_name_path` (`name`, `path`),
|
||||
KEY `idx_pid` (`pid`) COMMENT '优化层级查询'
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='菜单表';
|
||||
|
||||
-- 接口表
|
||||
@@ -149,4 +154,43 @@ CREATE TABLE `admin_role_api` (
|
||||
UNIQUE KEY `uk_role_api` (`role_id`, `api_id`),
|
||||
KEY `idx_role_id` (`role_id`) COMMENT '优化角色查询',
|
||||
KEY `idx_api_id` (`api_id`) COMMENT '优化接口查询'
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='角色接口关联表';
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='角色接口关联表';
|
||||
-- 字典类型表
|
||||
CREATE TABLE `admin_dict_type` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT,
|
||||
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`delete_time` datetime DEFAULT NULL COMMENT '删除时间',
|
||||
`del_state` tinyint NOT NULL DEFAULT '0',
|
||||
`version` bigint NOT NULL DEFAULT '0' COMMENT '版本号',
|
||||
|
||||
`dict_type` varchar(50) NOT NULL COMMENT '字典类型编码',
|
||||
`dict_name` varchar(100) NOT NULL COMMENT '字典类型名称',
|
||||
`status` tinyint NOT NULL DEFAULT '1' COMMENT '状态:0-禁用,1-启用',
|
||||
`remark` varchar(255) DEFAULT NULL COMMENT '备注',
|
||||
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_dict_type` (`dict_type`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='字典类型表';
|
||||
|
||||
-- 字典数据表
|
||||
CREATE TABLE `admin_dict_data` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT,
|
||||
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`delete_time` datetime DEFAULT NULL COMMENT '删除时间',
|
||||
`del_state` tinyint NOT NULL DEFAULT '0',
|
||||
`version` bigint NOT NULL DEFAULT '0' COMMENT '版本号',
|
||||
|
||||
`dict_type` varchar(50) NOT NULL COMMENT '字典类型编码',
|
||||
`dict_label` varchar(100) NOT NULL COMMENT '字典标签',
|
||||
`dict_value` tinyint NOT NULL COMMENT '字典键值',
|
||||
`dict_sort` int NOT NULL DEFAULT '0' COMMENT '字典排序',
|
||||
`status` tinyint NOT NULL DEFAULT '1' COMMENT '状态:0-禁用,1-启用',
|
||||
`remark` varchar(255) DEFAULT NULL COMMENT '备注',
|
||||
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_type_value` (`dict_type`, `dict_value`),
|
||||
UNIQUE KEY `uk_type_label` (`dict_type`, `dict_label`),
|
||||
KEY `idx_dict_type` (`dict_type`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='字典数据表';
|
||||
92
deploy/sql/promotion.sql
Normal file
92
deploy/sql/promotion.sql
Normal file
@@ -0,0 +1,92 @@
|
||||
CREATE TABLE `admin_promotion_link` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT,
|
||||
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`delete_time` datetime DEFAULT NULL COMMENT '删除时间',
|
||||
`del_state` tinyint NOT NULL DEFAULT '0',
|
||||
`version` bigint NOT NULL DEFAULT '0' COMMENT '版本号',
|
||||
|
||||
/* 业务字段开始 */
|
||||
`url` varchar(1024) NOT NULL COMMENT '推广链接URL',
|
||||
`name` varchar(100) NOT NULL COMMENT '推广链接名称',
|
||||
`admin_user_id` bigint NOT NULL DEFAULT '0' COMMENT '推广者账号ID',
|
||||
/* 业务字段结束 */
|
||||
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_url` (`url`(255)) COMMENT '确保URL唯一',
|
||||
KEY `idx_name` (`name`) COMMENT '优化名称查询',
|
||||
KEY `idx_admin_user_id` (`admin_user_id`) COMMENT '优化推广者查询'
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='推广链接表';
|
||||
|
||||
-- 总统计表(缓存汇总数据,提升查询性能)
|
||||
CREATE TABLE `admin_promotion_link_stats_total` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT,
|
||||
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`delete_time` datetime DEFAULT NULL COMMENT '删除时间',
|
||||
`del_state` tinyint NOT NULL DEFAULT '0',
|
||||
`version` bigint NOT NULL DEFAULT '0' COMMENT '版本号',
|
||||
|
||||
/* 业务字段开始 */
|
||||
`link_id` bigint NOT NULL COMMENT '推广链接ID',
|
||||
`click_count` bigint NOT NULL DEFAULT '0' COMMENT '总点击数',
|
||||
`pay_count` bigint NOT NULL DEFAULT '0' COMMENT '总付费次数',
|
||||
`pay_amount` decimal(20,2) NOT NULL DEFAULT '0.00' COMMENT '总付费金额',
|
||||
`last_click_time` datetime DEFAULT NULL COMMENT '最后点击时间',
|
||||
`last_pay_time` datetime DEFAULT NULL COMMENT '最后付费时间',
|
||||
/* 业务字段结束 */
|
||||
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_link_id` (`link_id`) COMMENT '确保每个链接只有一条总统计记录'
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='推广链接总统计表(缓存汇总数据,提升查询性能)';
|
||||
|
||||
-- 历史统计表(按天统计,包含当天实时统计)
|
||||
CREATE TABLE `admin_promotion_link_stats_history` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT,
|
||||
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`delete_time` datetime DEFAULT NULL COMMENT '删除时间',
|
||||
`del_state` tinyint NOT NULL DEFAULT '0',
|
||||
`version` bigint NOT NULL DEFAULT '0' COMMENT '版本号',
|
||||
|
||||
/* 业务字段开始 */
|
||||
`link_id` bigint NOT NULL COMMENT '推广链接ID',
|
||||
`stats_date` date NOT NULL COMMENT '统计日期',
|
||||
`click_count` bigint NOT NULL DEFAULT '0' COMMENT '点击数',
|
||||
`pay_count` bigint NOT NULL DEFAULT '0' COMMENT '付费次数',
|
||||
`pay_amount` decimal(20,2) NOT NULL DEFAULT '0.00' COMMENT '付费金额',
|
||||
`last_click_time` datetime DEFAULT NULL COMMENT '最后点击时间',
|
||||
`last_pay_time` datetime DEFAULT NULL COMMENT '最后付费时间',
|
||||
/* 业务字段结束 */
|
||||
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_link_date` (`link_id`, `stats_date`) COMMENT '确保每个链接每天只有一条统计记录',
|
||||
KEY `idx_stats_date` (`stats_date`) COMMENT '优化日期查询',
|
||||
KEY `idx_link_id` (`link_id`) COMMENT '优化链接查询',
|
||||
KEY `idx_link_date` (`link_id`, `stats_date`) COMMENT '优化链接日期查询'
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='推广链接历史统计表';
|
||||
|
||||
-- 推广订单表
|
||||
CREATE TABLE `admin_promotion_order` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT,
|
||||
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`delete_time` datetime DEFAULT NULL COMMENT '删除时间',
|
||||
`del_state` tinyint NOT NULL DEFAULT '0',
|
||||
`version` bigint NOT NULL DEFAULT '0' COMMENT '版本号',
|
||||
|
||||
/* 业务字段开始 */
|
||||
`link_id` bigint NOT NULL COMMENT '推广链接ID',
|
||||
`order_id` bigint NOT NULL COMMENT '订单ID',
|
||||
`user_id` bigint NOT NULL COMMENT '下单用户ID',
|
||||
`admin_user_id` bigint NOT NULL COMMENT '推广者账号ID',
|
||||
/* 业务字段结束 */
|
||||
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_order_id` (`order_id`) COMMENT '确保每个订单只有一条推广记录',
|
||||
UNIQUE KEY `uk_url` (`url`(255)) COMMENT '确保URL唯一',
|
||||
KEY `idx_link_id` (`link_id`) COMMENT '优化链接查询',
|
||||
KEY `idx_user_id` (`user_id`) COMMENT '优化用户查询',
|
||||
KEY `idx_admin_user_id` (`admin_user_id`) COMMENT '优化推广者查询'
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='推广订单表';
|
||||
|
||||
Reference in New Issue
Block a user