feat: 优化web
This commit is contained in:
@@ -0,0 +1,209 @@
|
||||
-- 全量业务菜单种子(与当前后端能力对齐:IAM 租户/部门/角色/用户/菜单 + System 参数)
|
||||
-- 依赖:001_iam.sql;建议在 004_seed_platform_builtin.sql 之后执行(以便角色已存在时可挂接权限)
|
||||
--
|
||||
-- 约定:
|
||||
-- menu_type: 1=目录 2=菜单 3=按钮(本脚本仅录入目录+菜单,便于侧栏 /nav)
|
||||
-- 「概览」(/dashboard) 不入库:全员可进,由前端壳层固定展示,不参与 iam_menu 配置与角色授权
|
||||
-- path 与 Next 管理端路由对齐(可按实际前端调整)
|
||||
--
|
||||
-- 固定菜单 id 前缀 31000000-0000-4000-8000-* 便于识别与文档引用
|
||||
|
||||
BEGIN;
|
||||
|
||||
INSERT INTO iam_menu (
|
||||
id, parent_id, menu_name, menu_type, perms, path, component, icon, sort_order,
|
||||
is_visible, is_builtin, status, created_at, updated_at
|
||||
) VALUES
|
||||
-- 工作台(目录)
|
||||
(
|
||||
'31000000-0000-4000-8000-000000000001',
|
||||
'',
|
||||
'工作台',
|
||||
1,
|
||||
'workspace:root',
|
||||
'',
|
||||
'',
|
||||
'⌂',
|
||||
10,
|
||||
true,
|
||||
true,
|
||||
1,
|
||||
now(),
|
||||
now()
|
||||
),
|
||||
(
|
||||
'31000000-0000-4000-8000-000000000003',
|
||||
'31000000-0000-4000-8000-000000000001',
|
||||
'个人中心',
|
||||
2,
|
||||
'account:profile',
|
||||
'/dashboard/account',
|
||||
'',
|
||||
'👤',
|
||||
20,
|
||||
true,
|
||||
true,
|
||||
1,
|
||||
now(),
|
||||
now()
|
||||
),
|
||||
|
||||
-- 系统:/api/v1/system/param/*
|
||||
(
|
||||
'31000000-0000-4000-8000-000000000010',
|
||||
'',
|
||||
'系统管理',
|
||||
1,
|
||||
'system:module',
|
||||
'',
|
||||
'',
|
||||
'⚙',
|
||||
40,
|
||||
true,
|
||||
true,
|
||||
1,
|
||||
now(),
|
||||
now()
|
||||
),
|
||||
(
|
||||
'31000000-0000-4000-8000-000000000011',
|
||||
'31000000-0000-4000-8000-000000000010',
|
||||
'参数配置',
|
||||
2,
|
||||
'system:param:list',
|
||||
'/dashboard/system/param',
|
||||
'',
|
||||
'🔧',
|
||||
10,
|
||||
true,
|
||||
true,
|
||||
1,
|
||||
now(),
|
||||
now()
|
||||
),
|
||||
|
||||
-- IAM:/api/v1/iam/*
|
||||
(
|
||||
'31000000-0000-4000-8000-000000000020',
|
||||
'',
|
||||
'权限管理',
|
||||
1,
|
||||
'iam:module',
|
||||
'',
|
||||
'',
|
||||
'🛡',
|
||||
50,
|
||||
true,
|
||||
true,
|
||||
1,
|
||||
now(),
|
||||
now()
|
||||
),
|
||||
(
|
||||
'31000000-0000-4000-8000-000000000021',
|
||||
'31000000-0000-4000-8000-000000000020',
|
||||
'租户管理',
|
||||
2,
|
||||
'iam:tenant:list',
|
||||
'/dashboard/iam/tenant',
|
||||
'',
|
||||
'🏢',
|
||||
10,
|
||||
true,
|
||||
true,
|
||||
1,
|
||||
now(),
|
||||
now()
|
||||
),
|
||||
(
|
||||
'31000000-0000-4000-8000-000000000022',
|
||||
'31000000-0000-4000-8000-000000000020',
|
||||
'部门管理',
|
||||
2,
|
||||
'iam:dept:tree',
|
||||
'/dashboard/iam/dept',
|
||||
'',
|
||||
'🌳',
|
||||
20,
|
||||
true,
|
||||
true,
|
||||
1,
|
||||
now(),
|
||||
now()
|
||||
),
|
||||
(
|
||||
'31000000-0000-4000-8000-000000000023',
|
||||
'31000000-0000-4000-8000-000000000020',
|
||||
'角色管理',
|
||||
2,
|
||||
'iam:role:list',
|
||||
'/dashboard/iam/role',
|
||||
'',
|
||||
'👥',
|
||||
30,
|
||||
true,
|
||||
true,
|
||||
1,
|
||||
now(),
|
||||
now()
|
||||
),
|
||||
(
|
||||
'31000000-0000-4000-8000-000000000024',
|
||||
'31000000-0000-4000-8000-000000000020',
|
||||
'用户管理',
|
||||
2,
|
||||
'iam:user:list',
|
||||
'/dashboard/iam/user',
|
||||
'',
|
||||
'👤',
|
||||
40,
|
||||
true,
|
||||
true,
|
||||
1,
|
||||
now(),
|
||||
now()
|
||||
),
|
||||
(
|
||||
'31000000-0000-4000-8000-000000000025',
|
||||
'31000000-0000-4000-8000-000000000020',
|
||||
'资源(菜单)',
|
||||
2,
|
||||
'iam:menu:tree',
|
||||
'/dashboard/iam/resource',
|
||||
'',
|
||||
'📋',
|
||||
50,
|
||||
true,
|
||||
true,
|
||||
1,
|
||||
now(),
|
||||
now()
|
||||
)
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- 将上述菜单授权给平台「超级管理员」角色(与 004 中 role id 一致)
|
||||
INSERT INTO iam_role_menu (id, role_id, menu_id, created_at)
|
||||
SELECT gen_random_uuid()::text,
|
||||
'20000000-0000-4000-8000-000000000002',
|
||||
m.id,
|
||||
now()
|
||||
FROM iam_menu m
|
||||
WHERE m.id IN (
|
||||
'31000000-0000-4000-8000-000000000001',
|
||||
'31000000-0000-4000-8000-000000000003',
|
||||
'31000000-0000-4000-8000-000000000010',
|
||||
'31000000-0000-4000-8000-000000000011',
|
||||
'31000000-0000-4000-8000-000000000020',
|
||||
'31000000-0000-4000-8000-000000000021',
|
||||
'31000000-0000-4000-8000-000000000022',
|
||||
'31000000-0000-4000-8000-000000000023',
|
||||
'31000000-0000-4000-8000-000000000024',
|
||||
'31000000-0000-4000-8000-000000000025'
|
||||
)
|
||||
ON CONFLICT (role_id, menu_id) DO NOTHING;
|
||||
|
||||
-- 若曾执行过含「概览」菜单的旧版脚本,可手工清理(避免侧栏与前端固定入口重复):
|
||||
-- DELETE FROM iam_role_menu WHERE menu_id = '31000000-0000-4000-8000-000000000002';
|
||||
-- DELETE FROM iam_menu WHERE id = '31000000-0000-4000-8000-000000000002';
|
||||
|
||||
COMMIT;
|
||||
Reference in New Issue
Block a user