diff --git a/src/locales/langs/en-us.ts b/src/locales/langs/en-us.ts index 9abaeb95..b9f0e8ab 100644 --- a/src/locales/langs/en-us.ts +++ b/src/locales/langs/en-us.ts @@ -225,7 +225,12 @@ const local: App.I18n.Schema = { 404: 'Page Not Found', 500: 'Server Error', 'iframe-page': 'Iframe', - home: 'Home' + home: 'Home', + system: 'System', + system_conf: 'Configuration', + system_conf_dictionary: 'Dictionary', + system_rbac: 'Organization', + system_rbac_region: 'Region' }, page: { login: { @@ -302,6 +307,18 @@ const local: App.I18n.Schema = { desc5: 'Soybean just wrote some of the workbench pages casually, and it was enough to see!' }, creativity: 'Creativity' + }, + system: { + conf: { + dictionary: { + title: 'Dictionary' + } + }, + rbac: { + region: { + title: 'Region' + } + } } }, form: { diff --git a/src/locales/langs/zh-cn.ts b/src/locales/langs/zh-cn.ts index dee3b2ad..b27356c3 100644 --- a/src/locales/langs/zh-cn.ts +++ b/src/locales/langs/zh-cn.ts @@ -222,7 +222,12 @@ const local: App.I18n.Schema = { 404: '页面不存在', 500: '服务器错误', 'iframe-page': '外链页面', - home: '首页' + home: '首页', + system: '系统管理', + system_conf: '系统配置', + system_conf_dictionary: '数据字典', + system_rbac: '组织架构', + system_rbac_region: '行政区划' }, page: { login: { @@ -299,6 +304,18 @@ const local: App.I18n.Schema = { desc5: 'Soybean 刚才把工作台页面随便写了一些,凑合能看了!' }, creativity: '创意' + }, + system: { + conf: { + dictionary: { + title: '数据字典' + } + }, + rbac: { + region: { + title: '行政区划' + } + } } }, form: { diff --git a/src/router/elegant/imports.ts b/src/router/elegant/imports.ts index ce1b9d7d..fc1e69ea 100644 --- a/src/router/elegant/imports.ts +++ b/src/router/elegant/imports.ts @@ -21,4 +21,6 @@ export const views: Record Promise import("@/views/_builtin/iframe-page/[url].vue"), login: () => import("@/views/_builtin/login/index.vue"), home: () => import("@/views/home/index.vue"), + system_conf_dictionary: () => import("@/views/system/conf/dictionary/index.vue"), + system_rbac_region: () => import("@/views/system/rbac/region/index.vue"), }; diff --git a/src/router/elegant/routes.ts b/src/router/elegant/routes.ts index 9566e125..69360ad4 100644 --- a/src/router/elegant/routes.ts +++ b/src/router/elegant/routes.ts @@ -47,7 +47,7 @@ export const generatedRoutes: GeneratedRoute[] = [ title: 'home', i18nKey: 'route.home', icon: 'mdi:monitor-dashboard', - order: 1 + order: 10 } }, { @@ -74,5 +74,60 @@ export const generatedRoutes: GeneratedRoute[] = [ constant: true, hideInMenu: true } + }, + { + name: 'system', + path: '/system', + component: 'layout.base', + meta: { + title: 'system', + i18nKey: 'route.system', + icon: 'mdi:laptop-windows', + order: 20 + }, + children: [ + { + name: 'system_conf', + path: '/system/conf', + meta: { + title: 'system_conf', + i18nKey: 'route.system_conf', + icon: 'ic:round-construction' + }, + children: [ + { + name: 'system_conf_dictionary', + path: '/system/conf/dictionary', + component: 'view.system_conf_dictionary', + meta: { + title: 'system_conf_dictionary', + i18nKey: 'route.system_conf_dictionary', + icon: 'ic:round-list-alt' + } + } + ] + }, + { + name: 'system_rbac', + path: '/system/rbac', + meta: { + title: 'system_rbac', + i18nKey: 'route.system_rbac', + icon: 'ic:outline-account-tree' + }, + children: [ + { + name: 'system_rbac_region', + path: '/system/rbac/region', + component: 'view.system_rbac_region', + meta: { + title: 'system_rbac_region', + i18nKey: 'route.system_rbac_region', + icon: 'mdi:home-city-outline' + } + } + ] + } + ] } ]; diff --git a/src/router/elegant/transform.ts b/src/router/elegant/transform.ts index ba892572..8fbdb928 100644 --- a/src/router/elegant/transform.ts +++ b/src/router/elegant/transform.ts @@ -168,7 +168,12 @@ const routeMap: RouteMap = { "500": "/500", "home": "/home", "iframe-page": "/iframe-page/:url", - "login": "/login/:module(pwd-login|code-login|register|reset-pwd|bind-wechat)?" + "login": "/login/:module(pwd-login|code-login|register|reset-pwd|bind-wechat)?", + "system": "/system", + "system_conf": "/system/conf", + "system_conf_dictionary": "/system/conf/dictionary", + "system_rbac": "/system/rbac", + "system_rbac_region": "/system/rbac/region" }; /** diff --git a/src/typings/app.d.ts b/src/typings/app.d.ts index 7068de6f..08de509b 100644 --- a/src/typings/app.d.ts +++ b/src/typings/app.d.ts @@ -546,6 +546,18 @@ declare namespace App { }; creativity: string; }; + system: { + conf: { + dictionary: { + title: string; + }; + }; + rbac: { + region: { + title: string; + }; + }; + }; }; form: { required: string; diff --git a/src/typings/elegant-router.d.ts b/src/typings/elegant-router.d.ts index 63025132..546cd0e9 100644 --- a/src/typings/elegant-router.d.ts +++ b/src/typings/elegant-router.d.ts @@ -23,6 +23,11 @@ declare module "@elegant-router/types" { "home": "/home"; "iframe-page": "/iframe-page/:url"; "login": "/login/:module(pwd-login|code-login|register|reset-pwd|bind-wechat)?"; + "system": "/system"; + "system_conf": "/system/conf"; + "system_conf_dictionary": "/system/conf/dictionary"; + "system_rbac": "/system/rbac"; + "system_rbac_region": "/system/rbac/region"; }; /** @@ -60,6 +65,7 @@ declare module "@elegant-router/types" { | "home" | "iframe-page" | "login" + | "system" >; /** @@ -82,6 +88,8 @@ declare module "@elegant-router/types" { | "iframe-page" | "login" | "home" + | "system_conf_dictionary" + | "system_rbac_region" >; /** diff --git a/src/views/system/conf/dictionary/index.vue b/src/views/system/conf/dictionary/index.vue new file mode 100644 index 00000000..8f4896b8 --- /dev/null +++ b/src/views/system/conf/dictionary/index.vue @@ -0,0 +1,16 @@ + + + + + diff --git a/src/views/system/rbac/region/index.vue b/src/views/system/rbac/region/index.vue new file mode 100644 index 00000000..085f5b19 --- /dev/null +++ b/src/views/system/rbac/region/index.vue @@ -0,0 +1,16 @@ + + + + +