-- ============================================= -- 报表模块 SQL 初始化脚本 -- 包含 GoView 大屏设计器相关表 -- ============================================= -- ============================================= -- 1. 数据库表结构 -- ============================================= -- 1.1 GoView 项目表(大屏设计器) CREATE TABLE IF NOT EXISTS `report_go_view_project` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号', `name` varchar(100) NOT NULL COMMENT '项目名称', `pic_url` varchar(255) DEFAULT NULL COMMENT '预览图片 URL', `content` longtext COMMENT '报表内容(JSON 配置)', `status` tinyint NOT NULL DEFAULT 0 COMMENT '发布状态:0-已发布,1-未发布', `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` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='GoView 项目表'; -- ============================================= -- 2. 菜单权限(如果主 SQL 中已包含,可跳过) -- ============================================= -- 2.1 报表管理目录 INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (1281, '报表管理', '', 1, 40, 0, '/report', 'ep:pie-chart', NULL, NULL, 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0'); -- 2.2 报表设计器(JimuReport 积木报表) INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (1282, '报表设计器', '', 2, 1, 1281, 'jimu-report', 'ep:trend-charts', 'report/jmreport/index', 'JimuReport', 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0'); -- 2.3 大屏设计器(GoView) INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2153, '大屏设计器', '', 2, 2, 1281, 'go-view', 'fa:area-chart', 'report/goview/index', 'GoView', 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0'); -- 2.4 仪表盘设计器(JimuBI) INSERT INTO `system_menu` (`id`, `name`, `permission`, `type`, `sort`, `parent_id`, `path`, `icon`, `component`, `component_name`, `status`, `visible`, `keep_alive`, `always_show`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (5009, '仪表盘设计器', '', 2, 3, 1281, 'jimu-bi', 'fa:y-combinator', 'report/jmreport/bi', 'JimuBI', 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0'); -- ============================================= -- 3. 角色菜单关联(给管理员角色分配报表权限) -- ============================================= -- 注意:如果主 SQL 中已有这些记录,可能会冲突,可先删除再插入 -- DELETE FROM `system_role_menu` WHERE `menu_id` IN (1281, 1282, 2153, 5009); -- 3.1 给角色 ID=2(假设为管理员)分配报表菜单权限 INSERT INTO `system_role_menu` (`role_id`, `menu_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2, 1281, '1', NOW(), '1', NOW(), b'0'); INSERT INTO `system_role_menu` (`role_id`, `menu_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2, 1282, '1', NOW(), '1', NOW(), b'0'); INSERT INTO `system_role_menu` (`role_id`, `menu_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2, 2153, '1', NOW(), '1', NOW(), b'0'); INSERT INTO `system_role_menu` (`role_id`, `menu_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (2, 5009, '1', NOW(), '1', NOW(), b'0'); -- ============================================= -- 执行完成提示 -- ============================================= SELECT '报表模块 SQL 初始化完成!' AS result; SELECT COUNT(*) AS go_view_project_count FROM report_go_view_project WHERE deleted = 0;