-- ============================================= -- MES系统授权续费功能数据库脚本 -- 版本: v2.0.008 -- 作者: 周启威 -- 日期: 2026-03-12 -- 说明: 系统到期提醒和续费管理功能 -- ============================================= -- ============================================= -- 1. 系统授权配置表 -- ============================================= CREATE TABLE `sys_license_config` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `expire_date` datetime NOT NULL COMMENT '系统到期时间', `contact_email` varchar(100) DEFAULT NULL COMMENT '联系邮箱', `contact_phone` varchar(50) DEFAULT NULL COMMENT '联系电话', `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='系统授权配置表'; -- 初始化数据(默认到期时间为1年后) INSERT INTO `sys_license_config` (`expire_date`, `contact_email`, `contact_phone`) VALUES (DATE_ADD(NOW(), INTERVAL 1 YEAR), 'yavyjs@yav123.cn', '15727007467'); -- ============================================= -- 2. 续费记录表 -- ============================================= CREATE TABLE `sys_license_renewal` ( `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID', `company_name` varchar(200) NOT NULL COMMENT '企业名称', `previous_expire_date` datetime DEFAULT NULL COMMENT '续费前到期时间', `expire_date` datetime NOT NULL COMMENT '续费后到期时间', `operator` varchar(100) NOT NULL COMMENT '操作人', `operate_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '操作时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`id`), KEY `idx_operate_time` (`operate_time`) COMMENT '操作时间索引' ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='续费记录表'; -- ============================================= -- 3. 菜单权限配置 -- ============================================= -- 插入续费管理菜单(父菜单为系统管理,parent_id=1) INSERT INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES ('续费管理', 1, 20, 'license', 'system/license/renewal', NULL, 1, 0, 'C', '0', '0', 'system:license:list', 'time-range', 'admin', NOW(), '', NULL, '续费管理菜单'); -- 获取最新插入的菜单ID SET @menu_id = LAST_INSERT_ID(); -- 续费管理查询权限 INSERT INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES ('续费查询', @menu_id, 1, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:license:query', '#', 'admin', NOW(), '', NULL, ''); -- 续费操作权限 INSERT INTO `sys_menu` (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) VALUES ('续费操作', @menu_id, 2, '#', '', NULL, 1, 0, 'F', '0', '0', 'system:license:add', '#', 'admin', NOW(), '', NULL, ''); -- ============================================= -- 说明 -- ============================================= -- 1. sys_license_config 表仅存储一条记录,用于全局配置 -- 2. sys_license_renewal 表记录每次续费操作的历史 -- 3. 续费操作会同时更新 sys_license_config 的 expire_date -- 4. 索引优化:operate_time 用于历史记录查询排序 -- 5. 菜单配置:续费管理菜单添加到系统管理模块下,仅管理员可访问