51 lines
3.0 KiB
SQL
51 lines
3.0 KiB
SQL
-- Author: fruit.com.cn
|
|
-- App 版本管理:表 + 后台菜单 + 角色菜单授权
|
|
|
|
CREATE TABLE IF NOT EXISTS app_version (
|
|
id BIGINT PRIMARY KEY,
|
|
platform VARCHAR(16) NOT NULL, -- ANDROID / IOS
|
|
version_code INTEGER NOT NULL, -- 整数版本号(比较用)
|
|
version_name VARCHAR(32) NOT NULL, -- 展示版本号,如 1.2.0
|
|
download_url VARCHAR(512) NOT NULL,
|
|
update_content TEXT, -- 更新说明
|
|
force_update SMALLINT NOT NULL DEFAULT 0, -- 1=强更 0=可选
|
|
min_supported_code INTEGER NOT NULL DEFAULT 0, -- 低于此版本强制升级
|
|
status SMALLINT NOT NULL DEFAULT 1, -- 1=已发布 0=已下架
|
|
released_at TIMESTAMP(3),
|
|
created_by BIGINT,
|
|
created_at TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
updated_at TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
deleted SMALLINT NOT NULL DEFAULT 0
|
|
);
|
|
CREATE INDEX IF NOT EXISTS idx_app_version_platform ON app_version(platform, version_code DESC);
|
|
CREATE INDEX IF NOT EXISTS idx_app_version_status ON app_version(status, platform);
|
|
DROP TRIGGER IF EXISTS trg_app_version_updated_at ON app_version;
|
|
CREATE TRIGGER trg_app_version_updated_at
|
|
BEFORE UPDATE ON app_version
|
|
FOR EACH ROW
|
|
EXECUTE FUNCTION set_updated_at();
|
|
|
|
-- 菜单:后台管理下新增「版本管理」(id=39)
|
|
INSERT INTO sys_menu (id, parent_id, title, route_path, route_name, component, redirect, icon, permission_code, type, always_show, affix, sort, visible, status, created_at, updated_at, super_admin_visible)
|
|
VALUES (39, 6, '版本管理', 'app-versions', 'app-versions', 'views/systemManagement/AppVersionView', '', 'ep:download', 'app-version:list', 'MENU', 0, 0, 9, 1, 1, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 1)
|
|
ON CONFLICT (id) DO NOTHING;
|
|
|
|
-- 权限按钮
|
|
INSERT INTO sys_menu (id, parent_id, title, route_path, route_name, component, permission_code, type, sort, visible, status, created_at, updated_at, super_admin_visible) VALUES
|
|
(40, 39, '查看', '', '', '', 'app-version:list', 'BUTTON', 1, 1, 1, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 1),
|
|
(41, 39, '新增', '', '', '', 'app-version:create', 'BUTTON', 2, 1, 1, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 1),
|
|
(42, 39, '编辑', '', '', '', 'app-version:update', 'BUTTON', 3, 1, 1, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 1),
|
|
(43, 39, '删除', '', '', '', 'app-version:delete', 'BUTTON', 4, 1, 1, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 1),
|
|
(44, 39, '上下架', '', '', '', 'app-version:update', 'BUTTON', 5, 1, 1, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP, 1)
|
|
ON CONFLICT (id) DO NOTHING;
|
|
|
|
-- 超管角色授权(sys_role_menu 需要手动 id,按现有 MAX(id) 顺延)
|
|
INSERT INTO sys_role_menu (id, role_id, menu_id)
|
|
SELECT 5000031, 1, 39 UNION ALL
|
|
SELECT 5000032, 1, 40 UNION ALL
|
|
SELECT 5000033, 1, 41 UNION ALL
|
|
SELECT 5000034, 1, 42 UNION ALL
|
|
SELECT 5000035, 1, 43 UNION ALL
|
|
SELECT 5000036, 1, 44
|
|
ON CONFLICT DO NOTHING;
|