diff --git a/pangu-ui/src/layout/components/Sidebar.vue b/pangu-ui/src/layout/components/Sidebar.vue index 9fb6797..30dc8e0 100644 --- a/pangu-ui/src/layout/components/Sidebar.vue +++ b/pangu-ui/src/layout/components/Sidebar.vue @@ -54,6 +54,48 @@ 学科管理 区域管理 + + + + + 用户管理 + 角色管理 + 菜单管理 + 部门管理 + 岗位管理 + 字典管理 + 参数设置 + 通知公告 + 日志管理 + + + + + + 在线用户 + 定时任务 + 数据监控 + 服务监控 + 缓存监控 + 缓存列表 + + + + + + 表单构建 + 代码生成 + 系统接口 + @@ -64,7 +106,7 @@ * 侧边栏组件 * @author pangu */ -import { Grid, HomeFilled, School, Setting, User, UserFilled } from '@element-plus/icons-vue' +import { Grid, HomeFilled, Monitor, Operation, School, Setting, Tools, User, UserFilled } from '@element-plus/icons-vue' import { computed } from 'vue' import { useRoute } from 'vue-router' diff --git a/pangu-ui/src/router/index.js b/pangu-ui/src/router/index.js index 3a95f8c..b3e729e 100644 --- a/pangu-ui/src/router/index.js +++ b/pangu-ui/src/router/index.js @@ -65,6 +65,117 @@ const routes = [ name: 'Region', component: () => import('@/views/base/region/index.vue'), meta: { title: '区域管理', icon: 'Location' } + }, + // 系统管理路由 + { + path: 'system/user', + name: 'SystemUser', + component: () => import('@/views/system/user/index.vue'), + meta: { title: '用户管理', icon: 'User' } + }, + { + path: 'system/role', + name: 'SystemRole', + component: () => import('@/views/system/role/index.vue'), + meta: { title: '角色管理', icon: 'UserFilled' } + }, + { + path: 'system/menu', + name: 'SystemMenu', + component: () => import('@/views/system/menu/index.vue'), + meta: { title: '菜单管理', icon: 'Menu' } + }, + { + path: 'system/dept', + name: 'SystemDept', + component: () => import('@/views/system/dept/index.vue'), + meta: { title: '部门管理', icon: 'OfficeBuilding' } + }, + { + path: 'system/post', + name: 'SystemPost', + component: () => import('@/views/system/post/index.vue'), + meta: { title: '岗位管理', icon: 'Briefcase' } + }, + { + path: 'system/dict', + name: 'SystemDict', + component: () => import('@/views/system/dict/index.vue'), + meta: { title: '字典管理', icon: 'Reading' } + }, + { + path: 'system/config', + name: 'SystemConfig', + component: () => import('@/views/system/config/index.vue'), + meta: { title: '参数设置', icon: 'Setting' } + }, + { + path: 'system/notice', + name: 'SystemNotice', + component: () => import('@/views/system/notice/index.vue'), + meta: { title: '通知公告', icon: 'Bell' } + }, + { + path: 'system/log', + name: 'SystemLog', + component: () => import('@/views/system/log/index.vue'), + meta: { title: '日志管理', icon: 'Document' } + }, + // 系统监控路由 + { + path: 'monitor/online', + name: 'MonitorOnline', + component: () => import('@/views/monitor/online/index.vue'), + meta: { title: '在线用户', icon: 'Connection' } + }, + { + path: 'monitor/job', + name: 'MonitorJob', + component: () => import('@/views/monitor/job/index.vue'), + meta: { title: '定时任务', icon: 'Timer' } + }, + { + path: 'monitor/druid', + name: 'MonitorDruid', + component: () => import('@/views/monitor/druid/index.vue'), + meta: { title: '数据监控', icon: 'DataAnalysis' } + }, + { + path: 'monitor/server', + name: 'MonitorServer', + component: () => import('@/views/monitor/server/index.vue'), + meta: { title: '服务监控', icon: 'Monitor' } + }, + { + path: 'monitor/cache', + name: 'MonitorCache', + component: () => import('@/views/monitor/cache/index.vue'), + meta: { title: '缓存监控', icon: 'Histogram' } + }, + { + path: 'monitor/cacheList', + name: 'MonitorCacheList', + component: () => import('@/views/monitor/cacheList/index.vue'), + meta: { title: '缓存列表', icon: 'List' } + }, + // 系统工具路由 + { + path: 'tool/build', + name: 'ToolBuild', + component: () => import('@/views/tool/build/index.vue'), + meta: { title: '表单构建', icon: 'Edit' } + }, + { + path: 'tool/gen', + name: 'ToolGen', + component: () => import('@/views/tool/gen/index.vue'), + meta: { title: '代码生成', icon: 'DocumentAdd' } + }, + { + path: 'tool/swagger', + name: 'ToolSwagger', + component: () => import('@/views/tool/swagger/index.vue'), + meta: { title: '系统接口', icon: 'Link' } } ] } diff --git a/pangu-ui/src/views/monitor/cache/index.vue b/pangu-ui/src/views/monitor/cache/index.vue new file mode 100644 index 0000000..2e8c43f --- /dev/null +++ b/pangu-ui/src/views/monitor/cache/index.vue @@ -0,0 +1,74 @@ + + + + + diff --git a/pangu-ui/src/views/monitor/cacheList/index.vue b/pangu-ui/src/views/monitor/cacheList/index.vue new file mode 100644 index 0000000..be81da6 --- /dev/null +++ b/pangu-ui/src/views/monitor/cacheList/index.vue @@ -0,0 +1,74 @@ + + + + + diff --git a/pangu-ui/src/views/monitor/druid/index.vue b/pangu-ui/src/views/monitor/druid/index.vue new file mode 100644 index 0000000..1cfee7b --- /dev/null +++ b/pangu-ui/src/views/monitor/druid/index.vue @@ -0,0 +1,74 @@ + + + + + diff --git a/pangu-ui/src/views/monitor/job/index.vue b/pangu-ui/src/views/monitor/job/index.vue new file mode 100644 index 0000000..a6392b8 --- /dev/null +++ b/pangu-ui/src/views/monitor/job/index.vue @@ -0,0 +1,75 @@ + + + + + diff --git a/pangu-ui/src/views/monitor/online/index.vue b/pangu-ui/src/views/monitor/online/index.vue new file mode 100644 index 0000000..4068106 --- /dev/null +++ b/pangu-ui/src/views/monitor/online/index.vue @@ -0,0 +1,74 @@ + + + + + diff --git a/pangu-ui/src/views/monitor/server/index.vue b/pangu-ui/src/views/monitor/server/index.vue new file mode 100644 index 0000000..9d10000 --- /dev/null +++ b/pangu-ui/src/views/monitor/server/index.vue @@ -0,0 +1,74 @@ + + + + + diff --git a/pangu-ui/src/views/system/config/index.vue b/pangu-ui/src/views/system/config/index.vue new file mode 100644 index 0000000..29704ef --- /dev/null +++ b/pangu-ui/src/views/system/config/index.vue @@ -0,0 +1,74 @@ + + + + + diff --git a/pangu-ui/src/views/system/dept/index.vue b/pangu-ui/src/views/system/dept/index.vue new file mode 100644 index 0000000..1a4a260 --- /dev/null +++ b/pangu-ui/src/views/system/dept/index.vue @@ -0,0 +1,75 @@ + + + + + diff --git a/pangu-ui/src/views/system/dict/index.vue b/pangu-ui/src/views/system/dict/index.vue new file mode 100644 index 0000000..4b6a769 --- /dev/null +++ b/pangu-ui/src/views/system/dict/index.vue @@ -0,0 +1,74 @@ + + + + + diff --git a/pangu-ui/src/views/system/log/index.vue b/pangu-ui/src/views/system/log/index.vue new file mode 100644 index 0000000..51e47ca --- /dev/null +++ b/pangu-ui/src/views/system/log/index.vue @@ -0,0 +1,75 @@ + + + + + diff --git a/pangu-ui/src/views/system/menu/index.vue b/pangu-ui/src/views/system/menu/index.vue new file mode 100644 index 0000000..8e6a03d --- /dev/null +++ b/pangu-ui/src/views/system/menu/index.vue @@ -0,0 +1,76 @@ + + + + + diff --git a/pangu-ui/src/views/system/notice/index.vue b/pangu-ui/src/views/system/notice/index.vue new file mode 100644 index 0000000..8ffa142 --- /dev/null +++ b/pangu-ui/src/views/system/notice/index.vue @@ -0,0 +1,74 @@ + + + + + diff --git a/pangu-ui/src/views/system/post/index.vue b/pangu-ui/src/views/system/post/index.vue new file mode 100644 index 0000000..6c3c99d --- /dev/null +++ b/pangu-ui/src/views/system/post/index.vue @@ -0,0 +1,75 @@ + + + + + diff --git a/pangu-ui/src/views/system/role/index.vue b/pangu-ui/src/views/system/role/index.vue new file mode 100644 index 0000000..6fd4667 --- /dev/null +++ b/pangu-ui/src/views/system/role/index.vue @@ -0,0 +1,76 @@ + + + + + diff --git a/pangu-ui/src/views/system/user/index.vue b/pangu-ui/src/views/system/user/index.vue new file mode 100644 index 0000000..81160ff --- /dev/null +++ b/pangu-ui/src/views/system/user/index.vue @@ -0,0 +1,72 @@ + + + + + diff --git a/pangu-ui/src/views/tool/gen/index.vue b/pangu-ui/src/views/tool/gen/index.vue new file mode 100644 index 0000000..1ff1114 --- /dev/null +++ b/pangu-ui/src/views/tool/gen/index.vue @@ -0,0 +1,75 @@ + + + + + diff --git a/pangu-ui/src/views/tool/swagger/index.vue b/pangu-ui/src/views/tool/swagger/index.vue new file mode 100644 index 0000000..4ff4a94 --- /dev/null +++ b/pangu-ui/src/views/tool/swagger/index.vue @@ -0,0 +1,74 @@ + + + + + diff --git a/scripts/create_placeholder_pages.sh b/scripts/create_placeholder_pages.sh new file mode 100755 index 0000000..a94c5cc --- /dev/null +++ b/scripts/create_placeholder_pages.sh @@ -0,0 +1,138 @@ +#!/bin/bash +# ============================================================ +# 脚本名称:create_placeholder_pages.sh +# 功能说明:批量创建RuoYi系统功能占位页面 +# 作 者:pangu +# 创建时间:2026-02-01 +# ============================================================ +set -e + +UI_DIR="/Users/felix/hbxhWorkSpace/pangu-user-platform/pangu-ui/src/views" + +# 定义页面配置:路径|标题|功能列表 +declare -a PAGES=( + "system/role|角色管理|角色列表查询,新增/编辑/删除角色,角色权限分配,数据权限配置,角色状态管理" + "system/menu|菜单管理|菜单树查询,新增/编辑/删除菜单,菜单排序,菜单图标设置,权限标识管理" + "system/dept|部门管理|部门树查询,新增/编辑/删除部门,部门排序,负责人设置" + "system/post|岗位管理|岗位列表查询,新增/编辑/删除岗位,岗位排序,岗位状态管理" + "system/dict|字典管理|字典类型管理,字典数据管理,字典缓存刷新" + "system/config|参数设置|参数列表查询,新增/编辑/删除参数,参数缓存刷新" + "system/notice|通知公告|公告列表查询,新增/编辑/删除公告,公告发布" + "system/log|日志管理|操作日志查询,登录日志查询,日志详情查看,日志导出" + "monitor/online|在线用户|在线用户列表,强制踢出,会话管理" + "monitor/job|定时任务|任务列表查询,新增/编辑/删除任务,任务启动/停止,执行记录查看" + "monitor/druid|数据监控|数据源监控,SQL监控,SQL防火墙" + "monitor/server|服务监控|服务器信息,CPU/内存/磁盘监控,JVM监控" + "monitor/cache|缓存监控|缓存信息查看,缓存统计,命中率分析" + "monitor/cacheList|缓存列表|缓存列表查看,缓存清理,缓存刷新" + "tool/build|表单构建|拖拽式表单设计,表单配置,代码生成" + "tool/gen|代码生成|表结构导入,代码生成配置,模板定制,代码预览/下载" + "tool/swagger|系统接口|API文档查看,在线调试,接口测试" +) + +echo "======================================================" +echo " 批量创建RuoYi系统功能占位页面" +echo "======================================================" +echo "" + +for page_config in "${PAGES[@]}"; do + IFS='|' read -r path title features <<< "$page_config" + + file_path="$UI_DIR/$path/index.vue" + + # 如果文件已存在,跳过 + if [ -f "$file_path" ]; then + echo "⏭️ 跳过:$title ($path) - 文件已存在" + continue + fi + + # 转换功能列表为HTML + feature_html="" + IFS=',' read -ra FEATURE_ARRAY <<< "$features" + for feature in "${FEATURE_ARRAY[@]}"; do + feature_html="$feature_html +
  • $feature
  • " + done + + # 创建Vue文件 + cat > "$file_path" << EOF + + + + + +EOF + + echo "✅ 创建:$title ($path)" +done + +echo "" +echo "======================================================" +echo " ✅ 所有占位页面创建完成" +echo "======================================================"