2026-06-24 46a31eb418eba03911fce1c19530a8deaa917d05
初始化项目
已修改1个文件
1726 ■■■■ 文件已修改
docs/database_schema.sql 1726 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
docs/database_schema.sql
@@ -19,869 +19,869 @@
-- =====================================================
-- 1.1 管理后台用户表
CREATE TABLE `system_users` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '用户ID',
  `username` varchar(100) DEFAULT NULL COMMENT '用户账号',
  `password` varchar(100) DEFAULT NULL COMMENT '加密后的密码',
  `nickname` varchar(100) DEFAULT NULL COMMENT '用户昵称',
  `remark` varchar(500) DEFAULT NULL COMMENT '备注',
  `dept_id` bigint DEFAULT NULL COMMENT '部门ID',
  `post_ids` json DEFAULT NULL COMMENT '岗位编号数组',
  `email` varchar(100) DEFAULT NULL COMMENT '用户邮箱',
  `mobile` varchar(100) DEFAULT NULL COMMENT '手机号码',
  `sex` tinyint DEFAULT NULL COMMENT '用户性别',
  `avatar` varchar(255) DEFAULT NULL COMMENT '用户头像',
  `status` tinyint NOT NULL DEFAULT '0' COMMENT '帐号状态(0正常 1停用)',
  `login_ip` varchar(50) DEFAULT NULL COMMENT '最后登录IP',
  `login_date` datetime DEFAULT NULL COMMENT '最后登录时间',
  `tenant_id` bigint NOT NULL DEFAULT '0' COMMENT '多租户编号',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='管理后台用户表';
-- 1.2 部门表
CREATE TABLE `system_dept` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '部门ID',
  `name` varchar(100) DEFAULT NULL COMMENT '部门名称',
  `parent_id` bigint NOT NULL DEFAULT '0' COMMENT '父部门ID',
  `sort` int NOT NULL DEFAULT '0' COMMENT '显示顺序',
  `leader_user_id` bigint DEFAULT NULL COMMENT '负责人',
  `phone` varchar(50) DEFAULT NULL COMMENT '联系电话',
  `email` varchar(100) DEFAULT NULL COMMENT '邮箱',
  `status` tinyint NOT NULL DEFAULT '0' COMMENT '部门状态(0正常 1停用)',
  `tenant_id` bigint NOT NULL DEFAULT '0' COMMENT '多租户编号',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='部门表';
-- 1.3 岗位表
CREATE TABLE `system_post` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '岗位序号',
  `name` varchar(100) DEFAULT NULL COMMENT '岗位名称',
  `code` varchar(100) DEFAULT NULL COMMENT '岗位编码',
  `sort` int NOT NULL DEFAULT '0' COMMENT '岗位排序',
  `status` tinyint NOT NULL DEFAULT '0' COMMENT '状态(0正常 1停用)',
  `remark` varchar(500) DEFAULT NULL COMMENT '备注',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='岗位表';
-- 1.4 用户岗位关联表
CREATE TABLE `system_user_post` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增主键',
  `user_id` bigint NOT NULL COMMENT '用户ID',
  `post_id` bigint NOT NULL COMMENT '岗位ID',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='用户岗位关联表';
-- 1.5 字典类型表
CREATE TABLE `system_dict_type` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '字典主键',
  `name` varchar(100) DEFAULT NULL COMMENT '字典名称',
  `type` varchar(100) DEFAULT NULL COMMENT '字典类型',
  `status` tinyint NOT NULL DEFAULT '0' COMMENT '状态(0正常 1停用)',
  `remark` varchar(500) DEFAULT NULL COMMENT '备注',
  `deleted_time` datetime DEFAULT NULL COMMENT '删除时间',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='字典类型表';
-- 1.6 字典数据表
CREATE TABLE `system_dict_data` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '字典数据编号',
  `sort` int NOT NULL DEFAULT '0' COMMENT '字典排序',
  `label` varchar(100) DEFAULT NULL COMMENT '字典标签',
  `value` varchar(100) DEFAULT NULL COMMENT '字典值',
  `dict_type` varchar(100) DEFAULT NULL COMMENT '字典类型',
  `status` tinyint NOT NULL DEFAULT '0' COMMENT '状态(0正常 1停用)',
  `color_type` varchar(50) DEFAULT NULL COMMENT '颜色类型',
  `css_class` varchar(100) DEFAULT NULL COMMENT 'css样式',
  `remark` varchar(500) DEFAULT NULL COMMENT '备注',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='字典数据表';
-- 1.7 登录日志表
CREATE TABLE `system_login_log` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '日志主键',
  `log_type` tinyint NOT NULL COMMENT '日志类型',
  `trace_id` varchar(64) DEFAULT NULL COMMENT '链路追踪编号',
  `user_id` bigint NOT NULL COMMENT '用户编号',
  `user_type` tinyint NOT NULL COMMENT '用户类型',
  `username` varchar(100) DEFAULT NULL COMMENT '用户账号',
  `result` tinyint NOT NULL COMMENT '登录结果',
  `user_ip` varchar(50) DEFAULT NULL COMMENT '用户IP',
  `user_agent` varchar(512) DEFAULT NULL COMMENT '浏览器UA',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='登录日志表';
-- 1.8 操作日志表
CREATE TABLE `system_operate_log` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '日志主键',
  `trace_id` varchar(64) DEFAULT NULL COMMENT '链路追踪编号',
  `user_id` bigint NOT NULL COMMENT '用户编号',
  `user_type` tinyint NOT NULL COMMENT '用户类型',
  `type` varchar(100) DEFAULT NULL COMMENT '操作模块类型',
  `sub_type` varchar(100) DEFAULT NULL COMMENT '操作名',
  `biz_id` bigint DEFAULT NULL COMMENT '操作模块业务编号',
  `action` varchar(2000) DEFAULT NULL COMMENT '日志内容',
  `extra` varchar(2000) DEFAULT NULL COMMENT '拓展字段',
  `request_method` varchar(50) DEFAULT NULL COMMENT '请求方法名',
  `request_url` varchar(255) DEFAULT NULL COMMENT '请求地址',
  `user_ip` varchar(50) DEFAULT NULL COMMENT '用户IP',
  `user_agent` varchar(512) DEFAULT NULL COMMENT '浏览器UA',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='操作日志表';
-- 1.9 通知公告表
CREATE TABLE `system_notice` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '公告ID',
  `title` varchar(200) DEFAULT NULL COMMENT '公告标题',
  `type` tinyint NOT NULL COMMENT '公告类型',
  `content` text COMMENT '公告内容',
  `status` tinyint NOT NULL DEFAULT '0' COMMENT '公告状态(0正常 1关闭)',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='通知公告表';
-- 1.10 菜单表
CREATE TABLE `system_menu` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '菜单编号',
  `name` varchar(100) DEFAULT NULL COMMENT '菜单名称',
  `permission` varchar(100) DEFAULT NULL COMMENT '权限标识',
  `type` tinyint NOT NULL COMMENT '菜单类型',
  `sort` int NOT NULL DEFAULT '0' COMMENT '显示顺序',
  `parent_id` bigint NOT NULL DEFAULT '0' COMMENT '父菜单ID',
  `path` varchar(255) DEFAULT NULL COMMENT '路由地址',
  `icon` varchar(100) DEFAULT NULL COMMENT '菜单图标',
  `component` varchar(255) DEFAULT NULL COMMENT '组件路径',
  `component_name` varchar(100) DEFAULT NULL COMMENT '组件名',
  `status` tinyint NOT NULL DEFAULT '0' COMMENT '状态(0正常 1停用)',
  `visible` bit(1) DEFAULT b'1' COMMENT '是否可见',
  `keep_alive` bit(1) DEFAULT b'1' COMMENT '是否缓存',
  `always_show` bit(1) DEFAULT b'1' COMMENT '是否总是显示',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='菜单表';
-- 1.11 角色表
CREATE TABLE `system_role` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '角色ID',
  `name` varchar(100) DEFAULT NULL COMMENT '角色名称',
  `code` varchar(100) DEFAULT NULL COMMENT '角色标识',
  `sort` int NOT NULL DEFAULT '0' COMMENT '角色排序',
  `status` tinyint NOT NULL DEFAULT '0' COMMENT '角色状态(0正常 1停用)',
  `type` tinyint NOT NULL COMMENT '角色类型',
  `remark` varchar(500) DEFAULT NULL COMMENT '备注',
  `data_scope` tinyint DEFAULT NULL COMMENT '数据范围',
  `data_scope_dept_ids` json DEFAULT NULL COMMENT '数据范围(指定部门数组)',
  `tenant_id` bigint NOT NULL DEFAULT '0' COMMENT '多租户编号',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='角色表';
-- 1.12 角色菜单关联表
CREATE TABLE `system_role_menu` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增主键',
  `role_id` bigint NOT NULL COMMENT '角色ID',
  `menu_id` bigint NOT NULL COMMENT '菜单ID',
  `tenant_id` bigint NOT NULL DEFAULT '0' COMMENT '多租户编号',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='角色菜单关联表';
-- 1.13 用户角色关联表
CREATE TABLE `system_user_role` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增主键',
  `user_id` bigint NOT NULL COMMENT '用户ID',
  `role_id` bigint NOT NULL COMMENT '角色ID',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='用户角色关联表';
-- 1.14 短信渠道表
CREATE TABLE `system_sms_channel` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '渠道编号',
  `signature` varchar(100) DEFAULT NULL COMMENT '短信签名',
  `code` varchar(100) DEFAULT NULL COMMENT '渠道编码',
  `status` tinyint NOT NULL DEFAULT '0' COMMENT '启用状态(0正常 1停用)',
  `remark` varchar(500) DEFAULT NULL COMMENT '备注',
  `api_key` varchar(255) DEFAULT NULL COMMENT '短信API的账号',
  `api_secret` varchar(255) DEFAULT NULL COMMENT '短信API的密钥',
  `callback_url` varchar(255) DEFAULT NULL COMMENT '短信发送回调URL',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='短信渠道表';
-- 1.15 手机验证码表
CREATE TABLE `system_sms_code` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号',
  `mobile` varchar(20) DEFAULT NULL COMMENT '手机号',
  `code` varchar(20) DEFAULT NULL COMMENT '验证码',
  `scene` tinyint NOT NULL COMMENT '发送场景',
  `create_ip` varchar(50) DEFAULT NULL COMMENT '创建IP',
  `today_index` int DEFAULT NULL COMMENT '今日发送的第几条',
  `used` bit(1) DEFAULT b'0' COMMENT '是否使用',
  `used_time` datetime DEFAULT NULL COMMENT '使用时间',
  `used_ip` varchar(50) DEFAULT NULL COMMENT '使用IP',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`),
  KEY `idx_mobile` (`mobile`)
) ENGINE=InnoDB COMMENT='手机验证码表';
-- 1.16 短信模板表
CREATE TABLE `system_sms_template` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增编号',
  `type` tinyint NOT NULL COMMENT '短信类型',
  `status` tinyint NOT NULL DEFAULT '0' COMMENT '启用状态(0正常 1停用)',
  `code` varchar(100) DEFAULT NULL COMMENT '模板编码',
  `name` varchar(100) DEFAULT NULL COMMENT '模板名称',
  `content` varchar(500) DEFAULT NULL COMMENT '模板内容',
  `params` json DEFAULT NULL COMMENT '参数数组',
  `remark` varchar(500) DEFAULT NULL COMMENT '备注',
  `api_template_id` varchar(100) DEFAULT NULL COMMENT '短信API的模板编号',
  `channel_id` bigint DEFAULT NULL COMMENT '短信渠道编号',
  `channel_code` varchar(100) DEFAULT NULL COMMENT '短信渠道编码',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='短信模板表';
-- 1.17 短信日志表
CREATE TABLE `system_sms_log` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增编号',
  `channel_id` bigint DEFAULT NULL COMMENT '短信渠道编号',
  `channel_code` varchar(100) DEFAULT NULL COMMENT '短信渠道编码',
  `template_id` bigint DEFAULT NULL COMMENT '模板编号',
  `template_code` varchar(100) DEFAULT NULL COMMENT '模板编码',
  `template_type` tinyint DEFAULT NULL COMMENT '短信类型',
  `template_content` varchar(500) DEFAULT NULL COMMENT '模板内容',
  `template_params` json DEFAULT NULL COMMENT '模板参数',
  `api_template_id` varchar(100) DEFAULT NULL COMMENT '短信API的模板编号',
  `mobile` varchar(20) DEFAULT NULL COMMENT '手机号',
  `user_id` bigint DEFAULT NULL COMMENT '用户编号',
  `user_type` tinyint DEFAULT NULL COMMENT '用户类型',
  `send_status` tinyint NOT NULL DEFAULT '0' COMMENT '发送状态',
  `send_time` datetime DEFAULT NULL COMMENT '发送时间',
  `api_send_code` varchar(100) DEFAULT NULL COMMENT '短信API发送结果的编码',
  `api_send_msg` varchar(500) DEFAULT NULL COMMENT '短信API发送失败的提示',
  `api_request_id` varchar(100) DEFAULT NULL COMMENT '短信API发送返回的唯一请求ID',
  `api_serial_no` varchar(100) DEFAULT NULL COMMENT '短信API发送返回的序号',
  `receive_status` tinyint NOT NULL DEFAULT '0' COMMENT '接收状态',
  `receive_time` datetime DEFAULT NULL COMMENT '接收时间',
  `api_receive_code` varchar(100) DEFAULT NULL COMMENT '短信API接收结果的编码',
  `api_receive_msg` varchar(500) DEFAULT NULL COMMENT '短信API接收结果的提示',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='短信日志表';
-- 1.18 社交客户端表
CREATE TABLE `system_social_client` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号',
  `name` varchar(100) DEFAULT NULL COMMENT '应用名',
  `social_type` tinyint NOT NULL COMMENT '社交类型',
  `user_type` tinyint NOT NULL COMMENT '用户类型',
  `status` tinyint NOT NULL DEFAULT '0' COMMENT '状态(0正常 1停用)',
  `client_id` varchar(255) DEFAULT NULL COMMENT '客户端id',
  `client_secret` varchar(255) DEFAULT NULL COMMENT '客户端Secret',
  `agent_id` varchar(100) DEFAULT NULL COMMENT '代理编号',
  `public_key` varchar(512) DEFAULT NULL COMMENT 'publicKey公钥',
  `tenant_id` bigint NOT NULL DEFAULT '0' COMMENT '多租户编号',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='社交客户端表';
-- 1.19 社交用户表
CREATE TABLE `system_social_user` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增主键',
  `type` tinyint NOT NULL COMMENT '社交平台的类型',
  `openid` varchar(100) DEFAULT NULL COMMENT '社交openid',
  `token` varchar(255) DEFAULT NULL COMMENT '社交token',
  `raw_token_info` text COMMENT '原始Token数据',
  `nickname` varchar(100) DEFAULT NULL COMMENT '用户昵称',
  `avatar` varchar(255) DEFAULT NULL COMMENT '用户头像',
  `raw_user_info` text COMMENT '原始用户数据',
  `code` varchar(100) DEFAULT NULL COMMENT '最后一次的认证code',
  `state` varchar(100) DEFAULT NULL COMMENT '最后一次的认证state',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='社交用户表';
-- 1.20 社交用户绑定表
CREATE TABLE `system_social_user_bind` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号',
  `user_id` bigint NOT NULL COMMENT '关联的用户编号',
  `user_type` tinyint NOT NULL COMMENT '用户类型',
  `social_user_id` bigint NOT NULL COMMENT '社交平台的用户编号',
  `social_type` tinyint NOT NULL COMMENT '社交平台的类型',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='社交用户绑定表';
-- 1.21 租户表
CREATE TABLE `system_tenant` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '租户编号',
  `name` varchar(100) DEFAULT NULL COMMENT '租户名',
  `contact_user_id` bigint DEFAULT NULL COMMENT '联系人的用户编号',
  `contact_name` varchar(100) DEFAULT NULL COMMENT '联系人',
  `contact_mobile` varchar(50) DEFAULT NULL COMMENT '联系手机',
  `status` tinyint NOT NULL DEFAULT '0' COMMENT '租户状态(0正常 1停用)',
  `websites` json DEFAULT NULL COMMENT '绑定域名列表',
  `package_id` bigint DEFAULT NULL COMMENT '租户套餐编号',
  `expire_time` datetime DEFAULT NULL COMMENT '过期时间',
  `account_count` int DEFAULT NULL COMMENT '账号数量',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='租户表';
-- 1.22 租户套餐表
CREATE TABLE `system_tenant_package` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '套餐编号',
  `name` varchar(100) DEFAULT NULL COMMENT '套餐名',
  `status` tinyint NOT NULL DEFAULT '0' COMMENT '租户套餐状态(0正常 1停用)',
  `remark` varchar(500) DEFAULT NULL COMMENT '备注',
  `menu_ids` json DEFAULT NULL COMMENT '关联的菜单编号',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='租户套餐表';
-- 1.23 邮箱账号表
CREATE TABLE `system_mail_account` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键',
  `mail` varchar(100) DEFAULT NULL COMMENT '邮箱',
  `username` varchar(100) DEFAULT NULL COMMENT '用户名',
  `password` varchar(100) DEFAULT NULL COMMENT '密码',
  `host` varchar(100) DEFAULT NULL COMMENT 'SMTP服务器域名',
  `port` int DEFAULT NULL COMMENT 'SMTP服务器端口',
  `ssl_enable` bit(1) DEFAULT b'0' COMMENT '是否开启SSL',
  `starttls_enable` bit(1) DEFAULT b'0' COMMENT '是否开启STARTTLS',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='邮箱账号表';
-- 1.24 邮件模版表
CREATE TABLE `system_mail_template` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键',
  `name` varchar(100) DEFAULT NULL COMMENT '模版名称',
  `code` varchar(100) DEFAULT NULL COMMENT '模版编号',
  `account_id` bigint DEFAULT NULL COMMENT '发送的邮箱账号编号',
  `nickname` varchar(100) DEFAULT NULL COMMENT '发送人名称',
  `title` varchar(255) DEFAULT NULL COMMENT '标题',
  `content` text COMMENT '内容',
  `params` json DEFAULT NULL COMMENT '参数数组',
  `status` tinyint NOT NULL DEFAULT '0' COMMENT '状态(0正常 1停用)',
  `remark` varchar(500) DEFAULT NULL COMMENT '备注',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='邮件模版表';
-- 1.25 邮箱日志表
CREATE TABLE `system_mail_log` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '日志编号',
  `user_id` bigint DEFAULT NULL COMMENT '用户编码',
  `user_type` tinyint DEFAULT NULL COMMENT '用户类型',
  `to_mails` json DEFAULT NULL COMMENT '接收邮箱地址',
  `cc_mails` json DEFAULT NULL COMMENT '抄送邮箱地址',
  `bcc_mails` json DEFAULT NULL COMMENT '密送邮箱地址',
  `account_id` bigint DEFAULT NULL COMMENT '邮箱账号编号',
  `from_mail` varchar(100) DEFAULT NULL COMMENT '发送邮箱地址',
  `template_id` bigint DEFAULT NULL COMMENT '模版编号',
  `template_code` varchar(100) DEFAULT NULL COMMENT '模版编码',
  `template_nickname` varchar(100) DEFAULT NULL COMMENT '模版发送人名称',
  `template_title` varchar(255) DEFAULT NULL COMMENT '模版标题',
  `template_content` text COMMENT '模版内容',
  `template_params` json DEFAULT NULL COMMENT '模版参数',
  `send_status` tinyint NOT NULL DEFAULT '0' COMMENT '发送状态',
  `send_time` datetime DEFAULT NULL COMMENT '发送时间',
  `send_message_id` varchar(255) DEFAULT NULL COMMENT '发送返回的消息ID',
  `send_exception` varchar(500) DEFAULT NULL COMMENT '发送异常',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='邮箱日志表';
-- 1.26 站内信模版表
CREATE TABLE `system_notify_template` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'ID',
  `name` varchar(100) DEFAULT NULL COMMENT '模版名称',
  `code` varchar(100) DEFAULT NULL COMMENT '模版编码',
  `type` tinyint NOT NULL COMMENT '模版类型',
  `nickname` varchar(100) DEFAULT NULL COMMENT '发送人名称',
  `content` varchar(500) DEFAULT NULL COMMENT '模版内容',
  `params` json DEFAULT NULL COMMENT '参数数组',
  `status` tinyint NOT NULL DEFAULT '0' COMMENT '状态(0正常 1停用)',
  `remark` varchar(500) DEFAULT NULL COMMENT '备注',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='站内信模版表';
-- 1.27 站内信表
CREATE TABLE `system_notify_message` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '站内信编号',
  `user_id` bigint NOT NULL COMMENT '用户编号',
  `user_type` tinyint NOT NULL COMMENT '用户类型',
  `template_id` bigint DEFAULT NULL COMMENT '模版编号',
  `template_code` varchar(100) DEFAULT NULL COMMENT '模版编码',
  `template_type` tinyint DEFAULT NULL COMMENT '模版类型',
  `template_nickname` varchar(100) DEFAULT NULL COMMENT '模版发送人名称',
  `template_content` varchar(500) DEFAULT NULL COMMENT '模版内容',
  `template_params` json DEFAULT NULL COMMENT '模版参数',
  `read_status` bit(1) DEFAULT b'0' COMMENT '是否已读',
  `read_time` datetime DEFAULT NULL COMMENT '阅读时间',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='站内信表';
-- 1.28 OAuth2客户端表
CREATE TABLE `system_oauth2_client` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号',
  `client_id` varchar(100) DEFAULT NULL COMMENT '客户端编号',
  `secret` varchar(255) DEFAULT NULL COMMENT '客户端密钥',
  `name` varchar(100) DEFAULT NULL COMMENT '应用名',
  `logo` varchar(255) DEFAULT NULL COMMENT '应用图标',
  `description` varchar(500) DEFAULT NULL COMMENT '应用描述',
  `status` tinyint NOT NULL DEFAULT '0' COMMENT '状态(0正常 1停用)',
  `access_token_validity_seconds` int DEFAULT NULL COMMENT '访问令牌的有效期',
  `refresh_token_validity_seconds` int DEFAULT NULL COMMENT '刷新令牌的有效期',
  `redirect_uris` json DEFAULT NULL COMMENT '可重定向的URI地址',
  `authorized_grant_types` json DEFAULT NULL COMMENT '授权类型',
  `scopes` json DEFAULT NULL COMMENT '授权范围',
  `auto_approve_scopes` json DEFAULT NULL COMMENT '自动授权的Scope',
  `authorities` json DEFAULT NULL COMMENT '权限',
  `resource_ids` json DEFAULT NULL COMMENT '资源',
  `additional_information` varchar(2000) DEFAULT NULL COMMENT '附加信息',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='OAuth2客户端表';
-- 1.29 OAuth2授权码表
CREATE TABLE `system_oauth2_code` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号',
  `code` varchar(255) DEFAULT NULL COMMENT '授权码',
  `user_id` bigint NOT NULL COMMENT '用户编号',
  `user_type` tinyint NOT NULL COMMENT '用户类型',
  `client_id` varchar(100) DEFAULT NULL COMMENT '客户端编号',
  `scopes` json DEFAULT NULL COMMENT '授权范围',
  `redirect_uri` varchar(255) DEFAULT NULL COMMENT '重定向地址',
  `state` varchar(100) DEFAULT NULL COMMENT '状态',
  `expires_time` datetime DEFAULT NULL COMMENT '过期时间',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='OAuth2授权码表';
-- 1.30 OAuth2访问令牌表
CREATE TABLE `system_oauth2_access_token` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号',
  `access_token` varchar(255) DEFAULT NULL COMMENT '访问令牌',
  `refresh_token` varchar(255) DEFAULT NULL COMMENT '刷新令牌',
  `user_id` bigint NOT NULL COMMENT '用户编号',
  `user_type` tinyint NOT NULL COMMENT '用户类型',
  `user_info` json DEFAULT NULL COMMENT '用户信息',
  `client_id` varchar(100) DEFAULT NULL COMMENT '客户端编号',
  `scopes` json DEFAULT NULL COMMENT '授权范围',
  `expires_time` datetime DEFAULT NULL COMMENT '过期时间',
  `tenant_id` bigint NOT NULL DEFAULT '0' COMMENT '多租户编号',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='OAuth2访问令牌表';
-- 1.31 OAuth2刷新令牌表
CREATE TABLE `system_oauth2_refresh_token` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号',
  `refresh_token` varchar(255) DEFAULT NULL COMMENT '刷新令牌',
  `user_id` bigint NOT NULL COMMENT '用户编号',
  `user_type` tinyint NOT NULL COMMENT '用户类型',
  `client_id` varchar(100) DEFAULT NULL COMMENT '客户端编号',
  `scopes` json DEFAULT NULL COMMENT '授权范围',
  `expires_time` datetime DEFAULT NULL COMMENT '过期时间',
  `tenant_id` bigint NOT NULL DEFAULT '0' COMMENT '多租户编号',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='OAuth2刷新令牌表';
-- 1.32 OAuth2批准表
CREATE TABLE `system_oauth2_approve` (
  `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号',
  `user_id` bigint NOT NULL COMMENT '用户编号',
  `user_type` tinyint NOT NULL COMMENT '用户类型',
  `client_id` varchar(100) DEFAULT NULL COMMENT '客户端编号',
  `scope` varchar(255) DEFAULT NULL COMMENT '授权范围',
  `approved` bit(1) DEFAULT b'0' COMMENT '是否接受',
  `expires_time` datetime DEFAULT NULL COMMENT '过期时间',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
  `creator` varchar(64) DEFAULT '' COMMENT '创建者',
  `updater` varchar(64) DEFAULT '' COMMENT '更新者',
  `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB COMMENT='OAuth2批准表';
-- =====================================================
-- 第二部分: yudao-module-infra 基础设施模块 (11 张表)
-- =====================================================
-- 2.1 代码生成字段定义表
CREATE TABLE `infra_codegen_column` (
    `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT 'ID 编号',
    `table_id` BIGINT NOT NULL COMMENT '表编号',
    `column_name` VARCHAR(200) NOT NULL COMMENT '字段名',
    `data_type` VARCHAR(200) NOT NULL COMMENT '数据库字段类型',
    `column_comment` VARCHAR(500) DEFAULT NULL COMMENT '字段描述',
    `nullable` TINYINT(1) NOT NULL COMMENT '是否允许为空',
    `primary_key` TINYINT(1) NOT NULL COMMENT '是否主键',
    `ordinal_position` INT NOT NULL COMMENT '排序',
    `java_type` VARCHAR(200) NOT NULL COMMENT 'Java 属性类型',
    `java_field` VARCHAR(200) NOT NULL COMMENT 'Java 属性名',
    `dict_type` VARCHAR(200) DEFAULT NULL COMMENT '字典类型',
    `example` VARCHAR(500) DEFAULT NULL COMMENT '数据示例',
    `create_operation` TINYINT(1) NOT NULL COMMENT '是否为 Create 创建操作的字段',
    `update_operation` TINYINT(1) NOT NULL COMMENT '是否为 Update 更新操作的字段',
    `list_operation` TINYINT(1) NOT NULL COMMENT '是否为 List 查询操作的字段',
    `list_operation_condition` VARCHAR(200) NOT NULL COMMENT 'List 查询操作的条件类型',
    `list_operation_result` TINYINT(1) NOT NULL COMMENT '是否为 List 查询操作的返回字段',
    `html_type` VARCHAR(200) 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` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
    PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='代码生成字段定义表';
-- 2.2 代码生成表定义表
CREATE TABLE `infra_codegen_table` (
    `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT 'ID 编号',
    `data_source_config_id` BIGINT NOT NULL COMMENT '数据源编号',
    `scene` INT NOT NULL COMMENT '生成场景',
    `table_name` VARCHAR(200) NOT NULL COMMENT '表名称',
    `table_comment` VARCHAR(500) DEFAULT NULL COMMENT '表描述',
    `remark` VARCHAR(500) DEFAULT NULL COMMENT '备注',
    `module_name` VARCHAR(100) NOT NULL COMMENT '模块名,即一级目录',
    `business_name` VARCHAR(100) NOT NULL COMMENT '业务名,即二级目录',
    `class_name` VARCHAR(100) NOT NULL COMMENT '类名称(首字母大写)',
    `class_comment` VARCHAR(500) DEFAULT NULL COMMENT '类描述',
    `author` VARCHAR(100) DEFAULT NULL COMMENT '作者',
    `template_type` INT NOT NULL COMMENT '模板类型',
    `front_type` INT NOT NULL COMMENT '代码生成的前端类型',
    `parent_menu_id` BIGINT DEFAULT NULL COMMENT '父菜单编号',
    `master_table_id` BIGINT DEFAULT NULL COMMENT '主表的编号',
    `sub_join_column_id` BIGINT DEFAULT NULL COMMENT '子表关联主表的字段编号',
    `sub_join_many` TINYINT(1) DEFAULT NULL COMMENT '主表与子表是否一对多',
    `tree_parent_column_id` BIGINT DEFAULT NULL COMMENT '树表的父字段编号',
    `tree_name_column_id` BIGINT DEFAULT 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` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
    PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='代码生成表定义表';
-- 2.3 参数配置表
CREATE TABLE `infra_config` (
    `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '参数主键',
    `category` VARCHAR(100) NOT NULL COMMENT '参数分类',
    `name` VARCHAR(100) NOT NULL COMMENT '参数名称',
    `config_key` VARCHAR(100) NOT NULL COMMENT '参数键名',
    `value` VARCHAR(500) NOT NULL COMMENT '参数键值',
    `type` INT NOT NULL COMMENT '参数类型',
    `visible` TINYINT(1) NOT NULL COMMENT '是否可见',
    `remark` VARCHAR(500) DEFAULT 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` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
    PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='参数配置表';
-- 2.4 数据源配置表
CREATE TABLE `infra_data_source_config` (
    `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键编号',
    `name` VARCHAR(100) NOT NULL COMMENT '连接名',
    `url` VARCHAR(1024) NOT NULL COMMENT '数据源连接',
    `username` VARCHAR(255) NOT NULL COMMENT '用户名',
    `password` VARCHAR(255) 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` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
    PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='数据源配置表';
-- 2.5 文件内容表
CREATE TABLE `infra_file_content` (
    `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号,数据库自增',
    `config_id` BIGINT NOT NULL COMMENT '配置编号',
    `path` VARCHAR(512) NOT NULL COMMENT '路径,即文件名',
    `content` LONGBLOB 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` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
    PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='文件内容表';
-- 2.6 文件表
CREATE TABLE `infra_file` (
    `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号,数据库自增',
    `config_id` BIGINT NOT NULL COMMENT '配置编号',
    `name` VARCHAR(256) DEFAULT NULL COMMENT '原文件名',
    `path` VARCHAR(512) NOT NULL COMMENT '路径,即文件名',
    `url` VARCHAR(1024) NOT NULL COMMENT '访问地址',
    `type` VARCHAR(128) DEFAULT NULL COMMENT '文件的 MIME 类型',
    `size` BIGINT 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` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
    PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='文件表';
-- 2.7 文件配置表
CREATE TABLE `infra_file_config` (
    `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '配置编号,数据库自增',
    `name` VARCHAR(100) NOT NULL COMMENT '配置名',
    `storage` INT NOT NULL COMMENT '存储器',
    `remark` VARCHAR(500) DEFAULT NULL COMMENT '备注',
    `master` TINYINT(1) NOT NULL COMMENT '是否为主配置',
    `config` VARCHAR(4000) 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` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
    PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='文件配置表';
-- 2.8 定时任务表
CREATE TABLE `infra_job` (
    `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '任务编号',
    `name` VARCHAR(100) NOT NULL COMMENT '任务名称',
    `status` INT NOT NULL COMMENT '任务状态',
    `handler_name` VARCHAR(100) NOT NULL COMMENT '处理器的名字',
    `handler_param` VARCHAR(500) DEFAULT NULL COMMENT '处理器的参数',
    `cron_expression` VARCHAR(100) NOT NULL COMMENT 'CRON 表达式',
    `retry_count` INT NOT NULL DEFAULT 0 COMMENT '重试次数',
    `retry_interval` INT NOT NULL DEFAULT 0 COMMENT '重试间隔,单位:毫秒',
    `monitor_timeout` INT DEFAULT 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` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
    PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='定时任务表';
-- 2.9 定时任务执行日志表
CREATE TABLE `infra_job_log` (
    `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '日志编号',
    `job_id` BIGINT NOT NULL COMMENT '任务编号',
    `handler_name` VARCHAR(100) NOT NULL COMMENT '处理器的名字',
    `handler_param` VARCHAR(500) DEFAULT NULL COMMENT '处理器的参数',
    `execute_index` INT NOT NULL COMMENT '第几次执行',
    `begin_time` DATETIME NOT NULL COMMENT '开始执行时间',
    `end_time` DATETIME DEFAULT NULL COMMENT '结束执行时间',
    `duration` INT DEFAULT NULL COMMENT '执行时长,单位:毫秒',
    `status` INT NOT NULL COMMENT '状态',
    `result` VARCHAR(4000) DEFAULT 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` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
    PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='定时任务执行日志表';
-- 2.10 API 访问日志表
CREATE TABLE `infra_api_access_log` (
    `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号',
    `trace_id` VARCHAR(64) DEFAULT NULL COMMENT '链路追踪编号',
    `user_id` BIGINT DEFAULT NULL COMMENT '用户编号',
    `user_type` INT DEFAULT NULL COMMENT '用户类型',
    `application_name` VARCHAR(100) NOT NULL COMMENT '应用名',
    `request_method` VARCHAR(16) NOT NULL COMMENT '请求方法名',
    `request_url` VARCHAR(512) NOT NULL COMMENT '访问地址',
    `request_params` TEXT COMMENT '请求参数',
    `response_body` TEXT COMMENT '响应结果',
    `user_ip` VARCHAR(64) NOT NULL COMMENT '用户 IP',
    `user_agent` VARCHAR(512) DEFAULT NULL COMMENT '浏览器 UA',
    `operate_module` VARCHAR(100) DEFAULT NULL COMMENT '操作模块',
    `operate_name` VARCHAR(100) DEFAULT NULL COMMENT '操作名',
    `operate_type` INT DEFAULT NULL COMMENT '操作分类',
    `begin_time` DATETIME NOT NULL COMMENT '开始请求时间',
    `end_time` DATETIME NOT NULL COMMENT '结束请求时间',
    `duration` INT NOT NULL COMMENT '执行时长,单位:毫秒',
    `result_code` INT NOT NULL COMMENT '结果码',
    `result_msg` VARCHAR(512) DEFAULT 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` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
    PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='API 访问日志表';
-- 2.11 API 异常日志表
CREATE TABLE `infra_api_error_log` (
    `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号',
    `user_id` BIGINT DEFAULT NULL COMMENT '用户编号',
    `trace_id` VARCHAR(64) DEFAULT NULL COMMENT '链路追踪编号',
    `user_type` INT DEFAULT NULL COMMENT '用户类型',
    `application_name` VARCHAR(100) NOT NULL COMMENT '应用名',
    `request_method` VARCHAR(16) NOT NULL COMMENT '请求方法名',
    `request_url` VARCHAR(512) NOT NULL COMMENT '访问地址',
    `request_params` TEXT COMMENT '请求参数',
    `user_ip` VARCHAR(64) NOT NULL COMMENT '用户 IP',
    `user_agent` VARCHAR(512) DEFAULT NULL COMMENT '浏览器 UA',
    `exception_time` DATETIME NOT NULL COMMENT '异常发生时间',
    `exception_name` VARCHAR(256) DEFAULT NULL COMMENT '异常名',
    `exception_message` TEXT COMMENT '异常导致的消息',
    `exception_root_cause_message` TEXT COMMENT '异常导致的根消息',
    `exception_stack_trace` TEXT COMMENT '异常的栈轨迹',
    `exception_class_name` VARCHAR(512) DEFAULT NULL COMMENT '异常发生的类全名',
    `exception_file_name` VARCHAR(256) DEFAULT NULL COMMENT '异常发生的类文件',
    `exception_method_name` VARCHAR(128) DEFAULT NULL COMMENT '异常发生的方法名',
    `exception_line_number` INT DEFAULT NULL COMMENT '异常发生的方法所在行',
    `process_status` INT NOT NULL COMMENT '处理状态',
    `process_time` DATETIME DEFAULT NULL COMMENT '处理时间',
    `process_user_id` BIGINT DEFAULT 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` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
    PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='API 异常日志表';
-- CREATE TABLE `system_users` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '用户ID',
--   `username` varchar(100) DEFAULT NULL COMMENT '用户账号',
--   `password` varchar(100) DEFAULT NULL COMMENT '加密后的密码',
--   `nickname` varchar(100) DEFAULT NULL COMMENT '用户昵称',
--   `remark` varchar(500) DEFAULT NULL COMMENT '备注',
--   `dept_id` bigint DEFAULT NULL COMMENT '部门ID',
--   `post_ids` json DEFAULT NULL COMMENT '岗位编号数组',
--   `email` varchar(100) DEFAULT NULL COMMENT '用户邮箱',
--   `mobile` varchar(100) DEFAULT NULL COMMENT '手机号码',
--   `sex` tinyint DEFAULT NULL COMMENT '用户性别',
--   `avatar` varchar(255) DEFAULT NULL COMMENT '用户头像',
--   `status` tinyint NOT NULL DEFAULT '0' COMMENT '帐号状态(0正常 1停用)',
--   `login_ip` varchar(50) DEFAULT NULL COMMENT '最后登录IP',
--   `login_date` datetime DEFAULT NULL COMMENT '最后登录时间',
--   `tenant_id` bigint NOT NULL DEFAULT '0' COMMENT '多租户编号',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='管理后台用户表';
--
-- -- 1.2 部门表
-- CREATE TABLE `system_dept` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '部门ID',
--   `name` varchar(100) DEFAULT NULL COMMENT '部门名称',
--   `parent_id` bigint NOT NULL DEFAULT '0' COMMENT '父部门ID',
--   `sort` int NOT NULL DEFAULT '0' COMMENT '显示顺序',
--   `leader_user_id` bigint DEFAULT NULL COMMENT '负责人',
--   `phone` varchar(50) DEFAULT NULL COMMENT '联系电话',
--   `email` varchar(100) DEFAULT NULL COMMENT '邮箱',
--   `status` tinyint NOT NULL DEFAULT '0' COMMENT '部门状态(0正常 1停用)',
--   `tenant_id` bigint NOT NULL DEFAULT '0' COMMENT '多租户编号',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='部门表';
--
-- -- 1.3 岗位表
-- CREATE TABLE `system_post` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '岗位序号',
--   `name` varchar(100) DEFAULT NULL COMMENT '岗位名称',
--   `code` varchar(100) DEFAULT NULL COMMENT '岗位编码',
--   `sort` int NOT NULL DEFAULT '0' COMMENT '岗位排序',
--   `status` tinyint NOT NULL DEFAULT '0' COMMENT '状态(0正常 1停用)',
--   `remark` varchar(500) DEFAULT NULL COMMENT '备注',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='岗位表';
--
-- -- 1.4 用户岗位关联表
-- CREATE TABLE `system_user_post` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增主键',
--   `user_id` bigint NOT NULL COMMENT '用户ID',
--   `post_id` bigint NOT NULL COMMENT '岗位ID',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='用户岗位关联表';
--
-- -- 1.5 字典类型表
-- CREATE TABLE `system_dict_type` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '字典主键',
--   `name` varchar(100) DEFAULT NULL COMMENT '字典名称',
--   `type` varchar(100) DEFAULT NULL COMMENT '字典类型',
--   `status` tinyint NOT NULL DEFAULT '0' COMMENT '状态(0正常 1停用)',
--   `remark` varchar(500) DEFAULT NULL COMMENT '备注',
--   `deleted_time` datetime DEFAULT NULL COMMENT '删除时间',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='字典类型表';
--
-- -- 1.6 字典数据表
-- CREATE TABLE `system_dict_data` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '字典数据编号',
--   `sort` int NOT NULL DEFAULT '0' COMMENT '字典排序',
--   `label` varchar(100) DEFAULT NULL COMMENT '字典标签',
--   `value` varchar(100) DEFAULT NULL COMMENT '字典值',
--   `dict_type` varchar(100) DEFAULT NULL COMMENT '字典类型',
--   `status` tinyint NOT NULL DEFAULT '0' COMMENT '状态(0正常 1停用)',
--   `color_type` varchar(50) DEFAULT NULL COMMENT '颜色类型',
--   `css_class` varchar(100) DEFAULT NULL COMMENT 'css样式',
--   `remark` varchar(500) DEFAULT NULL COMMENT '备注',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='字典数据表';
--
-- -- 1.7 登录日志表
-- CREATE TABLE `system_login_log` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '日志主键',
--   `log_type` tinyint NOT NULL COMMENT '日志类型',
--   `trace_id` varchar(64) DEFAULT NULL COMMENT '链路追踪编号',
--   `user_id` bigint NOT NULL COMMENT '用户编号',
--   `user_type` tinyint NOT NULL COMMENT '用户类型',
--   `username` varchar(100) DEFAULT NULL COMMENT '用户账号',
--   `result` tinyint NOT NULL COMMENT '登录结果',
--   `user_ip` varchar(50) DEFAULT NULL COMMENT '用户IP',
--   `user_agent` varchar(512) DEFAULT NULL COMMENT '浏览器UA',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='登录日志表';
--
-- -- 1.8 操作日志表
-- CREATE TABLE `system_operate_log` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '日志主键',
--   `trace_id` varchar(64) DEFAULT NULL COMMENT '链路追踪编号',
--   `user_id` bigint NOT NULL COMMENT '用户编号',
--   `user_type` tinyint NOT NULL COMMENT '用户类型',
--   `type` varchar(100) DEFAULT NULL COMMENT '操作模块类型',
--   `sub_type` varchar(100) DEFAULT NULL COMMENT '操作名',
--   `biz_id` bigint DEFAULT NULL COMMENT '操作模块业务编号',
--   `action` varchar(2000) DEFAULT NULL COMMENT '日志内容',
--   `extra` varchar(2000) DEFAULT NULL COMMENT '拓展字段',
--   `request_method` varchar(50) DEFAULT NULL COMMENT '请求方法名',
--   `request_url` varchar(255) DEFAULT NULL COMMENT '请求地址',
--   `user_ip` varchar(50) DEFAULT NULL COMMENT '用户IP',
--   `user_agent` varchar(512) DEFAULT NULL COMMENT '浏览器UA',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='操作日志表';
--
-- -- 1.9 通知公告表
-- CREATE TABLE `system_notice` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '公告ID',
--   `title` varchar(200) DEFAULT NULL COMMENT '公告标题',
--   `type` tinyint NOT NULL COMMENT '公告类型',
--   `content` text COMMENT '公告内容',
--   `status` tinyint NOT NULL DEFAULT '0' COMMENT '公告状态(0正常 1关闭)',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='通知公告表';
--
-- -- 1.10 菜单表
-- CREATE TABLE `system_menu` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '菜单编号',
--   `name` varchar(100) DEFAULT NULL COMMENT '菜单名称',
--   `permission` varchar(100) DEFAULT NULL COMMENT '权限标识',
--   `type` tinyint NOT NULL COMMENT '菜单类型',
--   `sort` int NOT NULL DEFAULT '0' COMMENT '显示顺序',
--   `parent_id` bigint NOT NULL DEFAULT '0' COMMENT '父菜单ID',
--   `path` varchar(255) DEFAULT NULL COMMENT '路由地址',
--   `icon` varchar(100) DEFAULT NULL COMMENT '菜单图标',
--   `component` varchar(255) DEFAULT NULL COMMENT '组件路径',
--   `component_name` varchar(100) DEFAULT NULL COMMENT '组件名',
--   `status` tinyint NOT NULL DEFAULT '0' COMMENT '状态(0正常 1停用)',
--   `visible` bit(1) DEFAULT b'1' COMMENT '是否可见',
--   `keep_alive` bit(1) DEFAULT b'1' COMMENT '是否缓存',
--   `always_show` bit(1) DEFAULT b'1' COMMENT '是否总是显示',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='菜单表';
--
-- -- 1.11 角色表
-- CREATE TABLE `system_role` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '角色ID',
--   `name` varchar(100) DEFAULT NULL COMMENT '角色名称',
--   `code` varchar(100) DEFAULT NULL COMMENT '角色标识',
--   `sort` int NOT NULL DEFAULT '0' COMMENT '角色排序',
--   `status` tinyint NOT NULL DEFAULT '0' COMMENT '角色状态(0正常 1停用)',
--   `type` tinyint NOT NULL COMMENT '角色类型',
--   `remark` varchar(500) DEFAULT NULL COMMENT '备注',
--   `data_scope` tinyint DEFAULT NULL COMMENT '数据范围',
--   `data_scope_dept_ids` json DEFAULT NULL COMMENT '数据范围(指定部门数组)',
--   `tenant_id` bigint NOT NULL DEFAULT '0' COMMENT '多租户编号',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='角色表';
--
-- -- 1.12 角色菜单关联表
-- CREATE TABLE `system_role_menu` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增主键',
--   `role_id` bigint NOT NULL COMMENT '角色ID',
--   `menu_id` bigint NOT NULL COMMENT '菜单ID',
--   `tenant_id` bigint NOT NULL DEFAULT '0' COMMENT '多租户编号',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='角色菜单关联表';
--
-- -- 1.13 用户角色关联表
-- CREATE TABLE `system_user_role` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增主键',
--   `user_id` bigint NOT NULL COMMENT '用户ID',
--   `role_id` bigint NOT NULL COMMENT '角色ID',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='用户角色关联表';
--
-- -- 1.14 短信渠道表
-- CREATE TABLE `system_sms_channel` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '渠道编号',
--   `signature` varchar(100) DEFAULT NULL COMMENT '短信签名',
--   `code` varchar(100) DEFAULT NULL COMMENT '渠道编码',
--   `status` tinyint NOT NULL DEFAULT '0' COMMENT '启用状态(0正常 1停用)',
--   `remark` varchar(500) DEFAULT NULL COMMENT '备注',
--   `api_key` varchar(255) DEFAULT NULL COMMENT '短信API的账号',
--   `api_secret` varchar(255) DEFAULT NULL COMMENT '短信API的密钥',
--   `callback_url` varchar(255) DEFAULT NULL COMMENT '短信发送回调URL',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='短信渠道表';
--
-- -- 1.15 手机验证码表
-- CREATE TABLE `system_sms_code` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号',
--   `mobile` varchar(20) DEFAULT NULL COMMENT '手机号',
--   `code` varchar(20) DEFAULT NULL COMMENT '验证码',
--   `scene` tinyint NOT NULL COMMENT '发送场景',
--   `create_ip` varchar(50) DEFAULT NULL COMMENT '创建IP',
--   `today_index` int DEFAULT NULL COMMENT '今日发送的第几条',
--   `used` bit(1) DEFAULT b'0' COMMENT '是否使用',
--   `used_time` datetime DEFAULT NULL COMMENT '使用时间',
--   `used_ip` varchar(50) DEFAULT NULL COMMENT '使用IP',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`),
--   KEY `idx_mobile` (`mobile`)
-- ) ENGINE=InnoDB COMMENT='手机验证码表';
--
-- -- 1.16 短信模板表
-- CREATE TABLE `system_sms_template` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增编号',
--   `type` tinyint NOT NULL COMMENT '短信类型',
--   `status` tinyint NOT NULL DEFAULT '0' COMMENT '启用状态(0正常 1停用)',
--   `code` varchar(100) DEFAULT NULL COMMENT '模板编码',
--   `name` varchar(100) DEFAULT NULL COMMENT '模板名称',
--   `content` varchar(500) DEFAULT NULL COMMENT '模板内容',
--   `params` json DEFAULT NULL COMMENT '参数数组',
--   `remark` varchar(500) DEFAULT NULL COMMENT '备注',
--   `api_template_id` varchar(100) DEFAULT NULL COMMENT '短信API的模板编号',
--   `channel_id` bigint DEFAULT NULL COMMENT '短信渠道编号',
--   `channel_code` varchar(100) DEFAULT NULL COMMENT '短信渠道编码',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='短信模板表';
--
-- -- 1.17 短信日志表
-- CREATE TABLE `system_sms_log` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增编号',
--   `channel_id` bigint DEFAULT NULL COMMENT '短信渠道编号',
--   `channel_code` varchar(100) DEFAULT NULL COMMENT '短信渠道编码',
--   `template_id` bigint DEFAULT NULL COMMENT '模板编号',
--   `template_code` varchar(100) DEFAULT NULL COMMENT '模板编码',
--   `template_type` tinyint DEFAULT NULL COMMENT '短信类型',
--   `template_content` varchar(500) DEFAULT NULL COMMENT '模板内容',
--   `template_params` json DEFAULT NULL COMMENT '模板参数',
--   `api_template_id` varchar(100) DEFAULT NULL COMMENT '短信API的模板编号',
--   `mobile` varchar(20) DEFAULT NULL COMMENT '手机号',
--   `user_id` bigint DEFAULT NULL COMMENT '用户编号',
--   `user_type` tinyint DEFAULT NULL COMMENT '用户类型',
--   `send_status` tinyint NOT NULL DEFAULT '0' COMMENT '发送状态',
--   `send_time` datetime DEFAULT NULL COMMENT '发送时间',
--   `api_send_code` varchar(100) DEFAULT NULL COMMENT '短信API发送结果的编码',
--   `api_send_msg` varchar(500) DEFAULT NULL COMMENT '短信API发送失败的提示',
--   `api_request_id` varchar(100) DEFAULT NULL COMMENT '短信API发送返回的唯一请求ID',
--   `api_serial_no` varchar(100) DEFAULT NULL COMMENT '短信API发送返回的序号',
--   `receive_status` tinyint NOT NULL DEFAULT '0' COMMENT '接收状态',
--   `receive_time` datetime DEFAULT NULL COMMENT '接收时间',
--   `api_receive_code` varchar(100) DEFAULT NULL COMMENT '短信API接收结果的编码',
--   `api_receive_msg` varchar(500) DEFAULT NULL COMMENT '短信API接收结果的提示',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='短信日志表';
--
-- -- 1.18 社交客户端表
-- CREATE TABLE `system_social_client` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号',
--   `name` varchar(100) DEFAULT NULL COMMENT '应用名',
--   `social_type` tinyint NOT NULL COMMENT '社交类型',
--   `user_type` tinyint NOT NULL COMMENT '用户类型',
--   `status` tinyint NOT NULL DEFAULT '0' COMMENT '状态(0正常 1停用)',
--   `client_id` varchar(255) DEFAULT NULL COMMENT '客户端id',
--   `client_secret` varchar(255) DEFAULT NULL COMMENT '客户端Secret',
--   `agent_id` varchar(100) DEFAULT NULL COMMENT '代理编号',
--   `public_key` varchar(512) DEFAULT NULL COMMENT 'publicKey公钥',
--   `tenant_id` bigint NOT NULL DEFAULT '0' COMMENT '多租户编号',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='社交客户端表';
--
-- -- 1.19 社交用户表
-- CREATE TABLE `system_social_user` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '自增主键',
--   `type` tinyint NOT NULL COMMENT '社交平台的类型',
--   `openid` varchar(100) DEFAULT NULL COMMENT '社交openid',
--   `token` varchar(255) DEFAULT NULL COMMENT '社交token',
--   `raw_token_info` text COMMENT '原始Token数据',
--   `nickname` varchar(100) DEFAULT NULL COMMENT '用户昵称',
--   `avatar` varchar(255) DEFAULT NULL COMMENT '用户头像',
--   `raw_user_info` text COMMENT '原始用户数据',
--   `code` varchar(100) DEFAULT NULL COMMENT '最后一次的认证code',
--   `state` varchar(100) DEFAULT NULL COMMENT '最后一次的认证state',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='社交用户表';
--
-- -- 1.20 社交用户绑定表
-- CREATE TABLE `system_social_user_bind` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号',
--   `user_id` bigint NOT NULL COMMENT '关联的用户编号',
--   `user_type` tinyint NOT NULL COMMENT '用户类型',
--   `social_user_id` bigint NOT NULL COMMENT '社交平台的用户编号',
--   `social_type` tinyint NOT NULL COMMENT '社交平台的类型',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='社交用户绑定表';
--
-- -- 1.21 租户表
-- CREATE TABLE `system_tenant` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '租户编号',
--   `name` varchar(100) DEFAULT NULL COMMENT '租户名',
--   `contact_user_id` bigint DEFAULT NULL COMMENT '联系人的用户编号',
--   `contact_name` varchar(100) DEFAULT NULL COMMENT '联系人',
--   `contact_mobile` varchar(50) DEFAULT NULL COMMENT '联系手机',
--   `status` tinyint NOT NULL DEFAULT '0' COMMENT '租户状态(0正常 1停用)',
--   `websites` json DEFAULT NULL COMMENT '绑定域名列表',
--   `package_id` bigint DEFAULT NULL COMMENT '租户套餐编号',
--   `expire_time` datetime DEFAULT NULL COMMENT '过期时间',
--   `account_count` int DEFAULT NULL COMMENT '账号数量',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='租户表';
--
-- -- 1.22 租户套餐表
-- CREATE TABLE `system_tenant_package` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '套餐编号',
--   `name` varchar(100) DEFAULT NULL COMMENT '套餐名',
--   `status` tinyint NOT NULL DEFAULT '0' COMMENT '租户套餐状态(0正常 1停用)',
--   `remark` varchar(500) DEFAULT NULL COMMENT '备注',
--   `menu_ids` json DEFAULT NULL COMMENT '关联的菜单编号',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='租户套餐表';
--
-- -- 1.23 邮箱账号表
-- CREATE TABLE `system_mail_account` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键',
--   `mail` varchar(100) DEFAULT NULL COMMENT '邮箱',
--   `username` varchar(100) DEFAULT NULL COMMENT '用户名',
--   `password` varchar(100) DEFAULT NULL COMMENT '密码',
--   `host` varchar(100) DEFAULT NULL COMMENT 'SMTP服务器域名',
--   `port` int DEFAULT NULL COMMENT 'SMTP服务器端口',
--   `ssl_enable` bit(1) DEFAULT b'0' COMMENT '是否开启SSL',
--   `starttls_enable` bit(1) DEFAULT b'0' COMMENT '是否开启STARTTLS',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='邮箱账号表';
--
-- -- 1.24 邮件模版表
-- CREATE TABLE `system_mail_template` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键',
--   `name` varchar(100) DEFAULT NULL COMMENT '模版名称',
--   `code` varchar(100) DEFAULT NULL COMMENT '模版编号',
--   `account_id` bigint DEFAULT NULL COMMENT '发送的邮箱账号编号',
--   `nickname` varchar(100) DEFAULT NULL COMMENT '发送人名称',
--   `title` varchar(255) DEFAULT NULL COMMENT '标题',
--   `content` text COMMENT '内容',
--   `params` json DEFAULT NULL COMMENT '参数数组',
--   `status` tinyint NOT NULL DEFAULT '0' COMMENT '状态(0正常 1停用)',
--   `remark` varchar(500) DEFAULT NULL COMMENT '备注',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='邮件模版表';
--
-- -- 1.25 邮箱日志表
-- CREATE TABLE `system_mail_log` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '日志编号',
--   `user_id` bigint DEFAULT NULL COMMENT '用户编码',
--   `user_type` tinyint DEFAULT NULL COMMENT '用户类型',
--   `to_mails` json DEFAULT NULL COMMENT '接收邮箱地址',
--   `cc_mails` json DEFAULT NULL COMMENT '抄送邮箱地址',
--   `bcc_mails` json DEFAULT NULL COMMENT '密送邮箱地址',
--   `account_id` bigint DEFAULT NULL COMMENT '邮箱账号编号',
--   `from_mail` varchar(100) DEFAULT NULL COMMENT '发送邮箱地址',
--   `template_id` bigint DEFAULT NULL COMMENT '模版编号',
--   `template_code` varchar(100) DEFAULT NULL COMMENT '模版编码',
--   `template_nickname` varchar(100) DEFAULT NULL COMMENT '模版发送人名称',
--   `template_title` varchar(255) DEFAULT NULL COMMENT '模版标题',
--   `template_content` text COMMENT '模版内容',
--   `template_params` json DEFAULT NULL COMMENT '模版参数',
--   `send_status` tinyint NOT NULL DEFAULT '0' COMMENT '发送状态',
--   `send_time` datetime DEFAULT NULL COMMENT '发送时间',
--   `send_message_id` varchar(255) DEFAULT NULL COMMENT '发送返回的消息ID',
--   `send_exception` varchar(500) DEFAULT NULL COMMENT '发送异常',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='邮箱日志表';
--
-- -- 1.26 站内信模版表
-- CREATE TABLE `system_notify_template` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT 'ID',
--   `name` varchar(100) DEFAULT NULL COMMENT '模版名称',
--   `code` varchar(100) DEFAULT NULL COMMENT '模版编码',
--   `type` tinyint NOT NULL COMMENT '模版类型',
--   `nickname` varchar(100) DEFAULT NULL COMMENT '发送人名称',
--   `content` varchar(500) DEFAULT NULL COMMENT '模版内容',
--   `params` json DEFAULT NULL COMMENT '参数数组',
--   `status` tinyint NOT NULL DEFAULT '0' COMMENT '状态(0正常 1停用)',
--   `remark` varchar(500) DEFAULT NULL COMMENT '备注',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='站内信模版表';
--
-- -- 1.27 站内信表
-- CREATE TABLE `system_notify_message` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '站内信编号',
--   `user_id` bigint NOT NULL COMMENT '用户编号',
--   `user_type` tinyint NOT NULL COMMENT '用户类型',
--   `template_id` bigint DEFAULT NULL COMMENT '模版编号',
--   `template_code` varchar(100) DEFAULT NULL COMMENT '模版编码',
--   `template_type` tinyint DEFAULT NULL COMMENT '模版类型',
--   `template_nickname` varchar(100) DEFAULT NULL COMMENT '模版发送人名称',
--   `template_content` varchar(500) DEFAULT NULL COMMENT '模版内容',
--   `template_params` json DEFAULT NULL COMMENT '模版参数',
--   `read_status` bit(1) DEFAULT b'0' COMMENT '是否已读',
--   `read_time` datetime DEFAULT NULL COMMENT '阅读时间',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='站内信表';
--
-- -- 1.28 OAuth2客户端表
-- CREATE TABLE `system_oauth2_client` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号',
--   `client_id` varchar(100) DEFAULT NULL COMMENT '客户端编号',
--   `secret` varchar(255) DEFAULT NULL COMMENT '客户端密钥',
--   `name` varchar(100) DEFAULT NULL COMMENT '应用名',
--   `logo` varchar(255) DEFAULT NULL COMMENT '应用图标',
--   `description` varchar(500) DEFAULT NULL COMMENT '应用描述',
--   `status` tinyint NOT NULL DEFAULT '0' COMMENT '状态(0正常 1停用)',
--   `access_token_validity_seconds` int DEFAULT NULL COMMENT '访问令牌的有效期',
--   `refresh_token_validity_seconds` int DEFAULT NULL COMMENT '刷新令牌的有效期',
--   `redirect_uris` json DEFAULT NULL COMMENT '可重定向的URI地址',
--   `authorized_grant_types` json DEFAULT NULL COMMENT '授权类型',
--   `scopes` json DEFAULT NULL COMMENT '授权范围',
--   `auto_approve_scopes` json DEFAULT NULL COMMENT '自动授权的Scope',
--   `authorities` json DEFAULT NULL COMMENT '权限',
--   `resource_ids` json DEFAULT NULL COMMENT '资源',
--   `additional_information` varchar(2000) DEFAULT NULL COMMENT '附加信息',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='OAuth2客户端表';
--
-- -- 1.29 OAuth2授权码表
-- CREATE TABLE `system_oauth2_code` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号',
--   `code` varchar(255) DEFAULT NULL COMMENT '授权码',
--   `user_id` bigint NOT NULL COMMENT '用户编号',
--   `user_type` tinyint NOT NULL COMMENT '用户类型',
--   `client_id` varchar(100) DEFAULT NULL COMMENT '客户端编号',
--   `scopes` json DEFAULT NULL COMMENT '授权范围',
--   `redirect_uri` varchar(255) DEFAULT NULL COMMENT '重定向地址',
--   `state` varchar(100) DEFAULT NULL COMMENT '状态',
--   `expires_time` datetime DEFAULT NULL COMMENT '过期时间',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='OAuth2授权码表';
--
-- -- 1.30 OAuth2访问令牌表
-- CREATE TABLE `system_oauth2_access_token` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号',
--   `access_token` varchar(255) DEFAULT NULL COMMENT '访问令牌',
--   `refresh_token` varchar(255) DEFAULT NULL COMMENT '刷新令牌',
--   `user_id` bigint NOT NULL COMMENT '用户编号',
--   `user_type` tinyint NOT NULL COMMENT '用户类型',
--   `user_info` json DEFAULT NULL COMMENT '用户信息',
--   `client_id` varchar(100) DEFAULT NULL COMMENT '客户端编号',
--   `scopes` json DEFAULT NULL COMMENT '授权范围',
--   `expires_time` datetime DEFAULT NULL COMMENT '过期时间',
--   `tenant_id` bigint NOT NULL DEFAULT '0' COMMENT '多租户编号',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='OAuth2访问令牌表';
--
-- -- 1.31 OAuth2刷新令牌表
-- CREATE TABLE `system_oauth2_refresh_token` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号',
--   `refresh_token` varchar(255) DEFAULT NULL COMMENT '刷新令牌',
--   `user_id` bigint NOT NULL COMMENT '用户编号',
--   `user_type` tinyint NOT NULL COMMENT '用户类型',
--   `client_id` varchar(100) DEFAULT NULL COMMENT '客户端编号',
--   `scopes` json DEFAULT NULL COMMENT '授权范围',
--   `expires_time` datetime DEFAULT NULL COMMENT '过期时间',
--   `tenant_id` bigint NOT NULL DEFAULT '0' COMMENT '多租户编号',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='OAuth2刷新令牌表';
--
-- -- 1.32 OAuth2批准表
-- CREATE TABLE `system_oauth2_approve` (
--   `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号',
--   `user_id` bigint NOT NULL COMMENT '用户编号',
--   `user_type` tinyint NOT NULL COMMENT '用户类型',
--   `client_id` varchar(100) DEFAULT NULL COMMENT '客户端编号',
--   `scope` varchar(255) DEFAULT NULL COMMENT '授权范围',
--   `approved` bit(1) DEFAULT b'0' COMMENT '是否接受',
--   `expires_time` datetime DEFAULT NULL COMMENT '过期时间',
--   `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
--   `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后更新时间',
--   `creator` varchar(64) DEFAULT '' COMMENT '创建者',
--   `updater` varchar(64) DEFAULT '' COMMENT '更新者',
--   `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
--   PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB COMMENT='OAuth2批准表';
--
--
-- -- =====================================================
-- -- 第二部分: yudao-module-infra 基础设施模块 (11 张表)
-- -- =====================================================
--
-- -- 2.1 代码生成字段定义表
-- CREATE TABLE `infra_codegen_column` (
--     `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT 'ID 编号',
--     `table_id` BIGINT NOT NULL COMMENT '表编号',
--     `column_name` VARCHAR(200) NOT NULL COMMENT '字段名',
--     `data_type` VARCHAR(200) NOT NULL COMMENT '数据库字段类型',
--     `column_comment` VARCHAR(500) DEFAULT NULL COMMENT '字段描述',
--     `nullable` TINYINT(1) NOT NULL COMMENT '是否允许为空',
--     `primary_key` TINYINT(1) NOT NULL COMMENT '是否主键',
--     `ordinal_position` INT NOT NULL COMMENT '排序',
--     `java_type` VARCHAR(200) NOT NULL COMMENT 'Java 属性类型',
--     `java_field` VARCHAR(200) NOT NULL COMMENT 'Java 属性名',
--     `dict_type` VARCHAR(200) DEFAULT NULL COMMENT '字典类型',
--     `example` VARCHAR(500) DEFAULT NULL COMMENT '数据示例',
--     `create_operation` TINYINT(1) NOT NULL COMMENT '是否为 Create 创建操作的字段',
--     `update_operation` TINYINT(1) NOT NULL COMMENT '是否为 Update 更新操作的字段',
--     `list_operation` TINYINT(1) NOT NULL COMMENT '是否为 List 查询操作的字段',
--     `list_operation_condition` VARCHAR(200) NOT NULL COMMENT 'List 查询操作的条件类型',
--     `list_operation_result` TINYINT(1) NOT NULL COMMENT '是否为 List 查询操作的返回字段',
--     `html_type` VARCHAR(200) 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` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
--     PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='代码生成字段定义表';
--
-- -- 2.2 代码生成表定义表
-- CREATE TABLE `infra_codegen_table` (
--     `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT 'ID 编号',
--     `data_source_config_id` BIGINT NOT NULL COMMENT '数据源编号',
--     `scene` INT NOT NULL COMMENT '生成场景',
--     `table_name` VARCHAR(200) NOT NULL COMMENT '表名称',
--     `table_comment` VARCHAR(500) DEFAULT NULL COMMENT '表描述',
--     `remark` VARCHAR(500) DEFAULT NULL COMMENT '备注',
--     `module_name` VARCHAR(100) NOT NULL COMMENT '模块名,即一级目录',
--     `business_name` VARCHAR(100) NOT NULL COMMENT '业务名,即二级目录',
--     `class_name` VARCHAR(100) NOT NULL COMMENT '类名称(首字母大写)',
--     `class_comment` VARCHAR(500) DEFAULT NULL COMMENT '类描述',
--     `author` VARCHAR(100) DEFAULT NULL COMMENT '作者',
--     `template_type` INT NOT NULL COMMENT '模板类型',
--     `front_type` INT NOT NULL COMMENT '代码生成的前端类型',
--     `parent_menu_id` BIGINT DEFAULT NULL COMMENT '父菜单编号',
--     `master_table_id` BIGINT DEFAULT NULL COMMENT '主表的编号',
--     `sub_join_column_id` BIGINT DEFAULT NULL COMMENT '子表关联主表的字段编号',
--     `sub_join_many` TINYINT(1) DEFAULT NULL COMMENT '主表与子表是否一对多',
--     `tree_parent_column_id` BIGINT DEFAULT NULL COMMENT '树表的父字段编号',
--     `tree_name_column_id` BIGINT DEFAULT 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` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
--     PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='代码生成表定义表';
--
-- -- 2.3 参数配置表
-- CREATE TABLE `infra_config` (
--     `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '参数主键',
--     `category` VARCHAR(100) NOT NULL COMMENT '参数分类',
--     `name` VARCHAR(100) NOT NULL COMMENT '参数名称',
--     `config_key` VARCHAR(100) NOT NULL COMMENT '参数键名',
--     `value` VARCHAR(500) NOT NULL COMMENT '参数键值',
--     `type` INT NOT NULL COMMENT '参数类型',
--     `visible` TINYINT(1) NOT NULL COMMENT '是否可见',
--     `remark` VARCHAR(500) DEFAULT 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` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
--     PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='参数配置表';
--
-- -- 2.4 数据源配置表
-- CREATE TABLE `infra_data_source_config` (
--     `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键编号',
--     `name` VARCHAR(100) NOT NULL COMMENT '连接名',
--     `url` VARCHAR(1024) NOT NULL COMMENT '数据源连接',
--     `username` VARCHAR(255) NOT NULL COMMENT '用户名',
--     `password` VARCHAR(255) 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` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
--     PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='数据源配置表';
--
-- -- 2.5 文件内容表
-- CREATE TABLE `infra_file_content` (
--     `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号,数据库自增',
--     `config_id` BIGINT NOT NULL COMMENT '配置编号',
--     `path` VARCHAR(512) NOT NULL COMMENT '路径,即文件名',
--     `content` LONGBLOB 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` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
--     PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='文件内容表';
--
-- -- 2.6 文件表
-- CREATE TABLE `infra_file` (
--     `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号,数据库自增',
--     `config_id` BIGINT NOT NULL COMMENT '配置编号',
--     `name` VARCHAR(256) DEFAULT NULL COMMENT '原文件名',
--     `path` VARCHAR(512) NOT NULL COMMENT '路径,即文件名',
--     `url` VARCHAR(1024) NOT NULL COMMENT '访问地址',
--     `type` VARCHAR(128) DEFAULT NULL COMMENT '文件的 MIME 类型',
--     `size` BIGINT 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` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
--     PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='文件表';
--
-- -- 2.7 文件配置表
-- CREATE TABLE `infra_file_config` (
--     `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '配置编号,数据库自增',
--     `name` VARCHAR(100) NOT NULL COMMENT '配置名',
--     `storage` INT NOT NULL COMMENT '存储器',
--     `remark` VARCHAR(500) DEFAULT NULL COMMENT '备注',
--     `master` TINYINT(1) NOT NULL COMMENT '是否为主配置',
--     `config` VARCHAR(4000) 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` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
--     PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='文件配置表';
--
-- -- 2.8 定时任务表
-- CREATE TABLE `infra_job` (
--     `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '任务编号',
--     `name` VARCHAR(100) NOT NULL COMMENT '任务名称',
--     `status` INT NOT NULL COMMENT '任务状态',
--     `handler_name` VARCHAR(100) NOT NULL COMMENT '处理器的名字',
--     `handler_param` VARCHAR(500) DEFAULT NULL COMMENT '处理器的参数',
--     `cron_expression` VARCHAR(100) NOT NULL COMMENT 'CRON 表达式',
--     `retry_count` INT NOT NULL DEFAULT 0 COMMENT '重试次数',
--     `retry_interval` INT NOT NULL DEFAULT 0 COMMENT '重试间隔,单位:毫秒',
--     `monitor_timeout` INT DEFAULT 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` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
--     PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='定时任务表';
--
-- -- 2.9 定时任务执行日志表
-- CREATE TABLE `infra_job_log` (
--     `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '日志编号',
--     `job_id` BIGINT NOT NULL COMMENT '任务编号',
--     `handler_name` VARCHAR(100) NOT NULL COMMENT '处理器的名字',
--     `handler_param` VARCHAR(500) DEFAULT NULL COMMENT '处理器的参数',
--     `execute_index` INT NOT NULL COMMENT '第几次执行',
--     `begin_time` DATETIME NOT NULL COMMENT '开始执行时间',
--     `end_time` DATETIME DEFAULT NULL COMMENT '结束执行时间',
--     `duration` INT DEFAULT NULL COMMENT '执行时长,单位:毫秒',
--     `status` INT NOT NULL COMMENT '状态',
--     `result` VARCHAR(4000) DEFAULT 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` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
--     PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='定时任务执行日志表';
--
-- -- 2.10 API 访问日志表
-- CREATE TABLE `infra_api_access_log` (
--     `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号',
--     `trace_id` VARCHAR(64) DEFAULT NULL COMMENT '链路追踪编号',
--     `user_id` BIGINT DEFAULT NULL COMMENT '用户编号',
--     `user_type` INT DEFAULT NULL COMMENT '用户类型',
--     `application_name` VARCHAR(100) NOT NULL COMMENT '应用名',
--     `request_method` VARCHAR(16) NOT NULL COMMENT '请求方法名',
--     `request_url` VARCHAR(512) NOT NULL COMMENT '访问地址',
--     `request_params` TEXT COMMENT '请求参数',
--     `response_body` TEXT COMMENT '响应结果',
--     `user_ip` VARCHAR(64) NOT NULL COMMENT '用户 IP',
--     `user_agent` VARCHAR(512) DEFAULT NULL COMMENT '浏览器 UA',
--     `operate_module` VARCHAR(100) DEFAULT NULL COMMENT '操作模块',
--     `operate_name` VARCHAR(100) DEFAULT NULL COMMENT '操作名',
--     `operate_type` INT DEFAULT NULL COMMENT '操作分类',
--     `begin_time` DATETIME NOT NULL COMMENT '开始请求时间',
--     `end_time` DATETIME NOT NULL COMMENT '结束请求时间',
--     `duration` INT NOT NULL COMMENT '执行时长,单位:毫秒',
--     `result_code` INT NOT NULL COMMENT '结果码',
--     `result_msg` VARCHAR(512) DEFAULT 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` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
--     PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='API 访问日志表';
--
-- -- 2.11 API 异常日志表
-- CREATE TABLE `infra_api_error_log` (
--     `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '编号',
--     `user_id` BIGINT DEFAULT NULL COMMENT '用户编号',
--     `trace_id` VARCHAR(64) DEFAULT NULL COMMENT '链路追踪编号',
--     `user_type` INT DEFAULT NULL COMMENT '用户类型',
--     `application_name` VARCHAR(100) NOT NULL COMMENT '应用名',
--     `request_method` VARCHAR(16) NOT NULL COMMENT '请求方法名',
--     `request_url` VARCHAR(512) NOT NULL COMMENT '访问地址',
--     `request_params` TEXT COMMENT '请求参数',
--     `user_ip` VARCHAR(64) NOT NULL COMMENT '用户 IP',
--     `user_agent` VARCHAR(512) DEFAULT NULL COMMENT '浏览器 UA',
--     `exception_time` DATETIME NOT NULL COMMENT '异常发生时间',
--     `exception_name` VARCHAR(256) DEFAULT NULL COMMENT '异常名',
--     `exception_message` TEXT COMMENT '异常导致的消息',
--     `exception_root_cause_message` TEXT COMMENT '异常导致的根消息',
--     `exception_stack_trace` TEXT COMMENT '异常的栈轨迹',
--     `exception_class_name` VARCHAR(512) DEFAULT NULL COMMENT '异常发生的类全名',
--     `exception_file_name` VARCHAR(256) DEFAULT NULL COMMENT '异常发生的类文件',
--     `exception_method_name` VARCHAR(128) DEFAULT NULL COMMENT '异常发生的方法名',
--     `exception_line_number` INT DEFAULT NULL COMMENT '异常发生的方法所在行',
--     `process_status` INT NOT NULL COMMENT '处理状态',
--     `process_time` DATETIME DEFAULT NULL COMMENT '处理时间',
--     `process_user_id` BIGINT DEFAULT 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` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '是否删除',
--     PRIMARY KEY (`id`)
-- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='API 异常日志表';
-- =====================================================