From 87db42b5db3f4ca84f40154506fc0d82d733537f Mon Sep 17 00:00:00 2001 From: Sam <315859133@qq.com> Date: Fri, 6 Feb 2026 00:30:00 +0800 Subject: [PATCH] feat(fengling): add routes and pages for Fengling Console management --- .../src/router/routes/modules/fengling.ts | 72 +++++ .../src/views/fengling/dashboard/index.vue | 66 +++++ .../src/views/fengling/oauth/index.vue | 245 ++++++++++++++++++ .../src/views/fengling/roles/index.vue | 175 +++++++++++++ .../src/views/fengling/tenants/index.vue | 209 +++++++++++++++ .../src/views/fengling/users/index.vue | 185 +++++++++++++ 6 files changed, 952 insertions(+) create mode 100644 apps/web-ele/src/router/routes/modules/fengling.ts create mode 100644 apps/web-ele/src/views/fengling/dashboard/index.vue create mode 100644 apps/web-ele/src/views/fengling/oauth/index.vue create mode 100644 apps/web-ele/src/views/fengling/roles/index.vue create mode 100644 apps/web-ele/src/views/fengling/tenants/index.vue create mode 100644 apps/web-ele/src/views/fengling/users/index.vue diff --git a/apps/web-ele/src/router/routes/modules/fengling.ts b/apps/web-ele/src/router/routes/modules/fengling.ts new file mode 100644 index 0000000..c5fdfcc --- /dev/null +++ b/apps/web-ele/src/router/routes/modules/fengling.ts @@ -0,0 +1,72 @@ +import type { RouteRecordRaw } from 'vue-router'; + +const routes: RouteRecordRaw[] = [ + { + meta: { + icon: 'lucide:building-2', + order: 1, + title: 'Fengling Console', + }, + name: 'Fengling', + path: '/fengling', + children: [ + { + name: 'FenglingDashboard', + path: '/fengling/dashboard', + component: () => import('#/views/fengling/dashboard/index.vue'), + meta: { + affixTab: true, + icon: 'lucide:layout-dashboard', + title: 'Dashboard', + }, + }, + { + name: 'TenantManagement', + path: '/fengling/tenants', + component: () => import('#/views/fengling/tenants/index.vue'), + meta: { + icon: 'lucide:building', + title: 'Tenant Management', + }, + }, + { + name: 'UserManagement', + path: '/fengling/users', + component: () => import('#/views/fengling/users/index.vue'), + meta: { + icon: 'lucide:users', + title: 'User Management', + }, + }, + { + name: 'RoleManagement', + path: '/fengling/roles', + component: () => import('#/views/fengling/roles/index.vue'), + meta: { + icon: 'lucide:shield', + title: 'Role Management', + }, + }, + { + name: 'OAuthClientManagement', + path: '/fengling/oauth', + component: () => import('#/views/fengling/oauth/index.vue'), + meta: { + icon: 'lucide:key', + title: 'OAuth Clients', + }, + }, + { + name: 'Logs', + path: '/fengling/logs', + component: () => import('#/views/fengling/logs/index.vue'), + meta: { + icon: 'lucide:scroll-text', + title: 'Logs', + }, + }, + ], + }, +]; + +export default routes; diff --git a/apps/web-ele/src/views/fengling/dashboard/index.vue b/apps/web-ele/src/views/fengling/dashboard/index.vue new file mode 100644 index 0000000..dc7260f --- /dev/null +++ b/apps/web-ele/src/views/fengling/dashboard/index.vue @@ -0,0 +1,66 @@ + + + diff --git a/apps/web-ele/src/views/fengling/oauth/index.vue b/apps/web-ele/src/views/fengling/oauth/index.vue new file mode 100644 index 0000000..caa4962 --- /dev/null +++ b/apps/web-ele/src/views/fengling/oauth/index.vue @@ -0,0 +1,245 @@ + + + diff --git a/apps/web-ele/src/views/fengling/roles/index.vue b/apps/web-ele/src/views/fengling/roles/index.vue new file mode 100644 index 0000000..5792665 --- /dev/null +++ b/apps/web-ele/src/views/fengling/roles/index.vue @@ -0,0 +1,175 @@ + + + diff --git a/apps/web-ele/src/views/fengling/tenants/index.vue b/apps/web-ele/src/views/fengling/tenants/index.vue new file mode 100644 index 0000000..c52a8ca --- /dev/null +++ b/apps/web-ele/src/views/fengling/tenants/index.vue @@ -0,0 +1,209 @@ + + + diff --git a/apps/web-ele/src/views/fengling/users/index.vue b/apps/web-ele/src/views/fengling/users/index.vue new file mode 100644 index 0000000..5eca1da --- /dev/null +++ b/apps/web-ele/src/views/fengling/users/index.vue @@ -0,0 +1,185 @@ + + +