diff --git a/continew-admin-ui/src/api/system/config.ts b/continew-admin-ui/src/api/system/config.ts new file mode 100644 index 00000000..d2014c29 --- /dev/null +++ b/continew-admin-ui/src/api/system/config.ts @@ -0,0 +1,31 @@ +import axios from 'axios'; +import qs from 'query-string'; + +const BASE_URL = '/api/system/option'; + +export interface BasicConfigRecord { + site_title?: string; + site_copyright?: string; + site_logo: { url?: string }; + site_favicon: { url?: string }; +} + +export interface DataRecord { + name: string; + code: string; + value: string; + description?: string; +} + +export interface ListParam { + code?: Array; +} + +export function list(params: ListParam) { + return axios.get(`${BASE_URL}`, { + params, + paramsSerializer: (obj) => { + return qs.stringify(obj); + }, + }); +} diff --git a/continew-admin-ui/src/locale/en-US.ts b/continew-admin-ui/src/locale/en-US.ts index f5fdff45..823f9bd1 100644 --- a/continew-admin-ui/src/locale/en-US.ts +++ b/continew-admin-ui/src/locale/en-US.ts @@ -6,6 +6,7 @@ import localeMenu from '@/views/system/menu/locale/en-US'; import localeDept from '@/views/system/dept/locale/en-US'; import localeAnnouncement from '@/views/system/announcement/locale/en-US'; import localeDict from '@/views/system/dict/locale/en-US'; +import localeConfig from '@/views/system/config/locale/en-US'; import localeGenerator from '@/views/tool/generator/locale/en-US'; @@ -62,6 +63,7 @@ export default { ...localeDept, ...localeAnnouncement, ...localeDict, + ...localeConfig, ...localeGenerator, diff --git a/continew-admin-ui/src/locale/zh-CN.ts b/continew-admin-ui/src/locale/zh-CN.ts index edbbea5d..12b47436 100644 --- a/continew-admin-ui/src/locale/zh-CN.ts +++ b/continew-admin-ui/src/locale/zh-CN.ts @@ -6,6 +6,7 @@ import localeMenu from '@/views/system/menu/locale/zh-CN'; import localeDept from '@/views/system/dept/locale/zh-CN'; import localeAnnouncement from '@/views/system/announcement/locale/zh-CN'; import localeDict from '@/views/system/dict/locale/zh-CN'; +import localeConfig from '@/views/system/config/locale/zh-CN'; import localeGenerator from '@/views/tool/generator/locale/zh-CN'; @@ -62,6 +63,7 @@ export default { ...localeDept, ...localeAnnouncement, ...localeDict, + ...localeConfig, ...localeGenerator, diff --git a/continew-admin-ui/src/mock/index.ts b/continew-admin-ui/src/mock/index.ts index d3aab7ba..d1faeda5 100644 --- a/continew-admin-ui/src/mock/index.ts +++ b/continew-admin-ui/src/mock/index.ts @@ -18,6 +18,7 @@ import '@/views/demo/visualization/data-analysis/mock'; import '@/views/demo/visualization/multi-dimension-data-analysis/mock'; import '@/views/system/user/center/mock'; +import '@/views/system/config/mock'; Mock.setup({ timeout: '15-150', diff --git a/continew-admin-ui/src/router/routes/modules/system.ts b/continew-admin-ui/src/router/routes/modules/system.ts index c366a20e..e6f04a1b 100644 --- a/continew-admin-ui/src/router/routes/modules/system.ts +++ b/continew-admin-ui/src/router/routes/modules/system.ts @@ -66,6 +66,15 @@ const System: AppRouteRecordRaw = { requiresAuth: true, }, }, + { + name: 'Config', + path: '/system/config', + component: () => import('@/views/system/config/index.vue'), + meta: { + locale: 'menu.system.config', + requiresAuth: true, + }, + }, ], }; diff --git a/continew-admin-ui/src/views/system/config/components/basic-setting.vue b/continew-admin-ui/src/views/system/config/components/basic-setting.vue new file mode 100644 index 00000000..ea123bd7 --- /dev/null +++ b/continew-admin-ui/src/views/system/config/components/basic-setting.vue @@ -0,0 +1,359 @@ + + + + + diff --git a/continew-admin-ui/src/views/system/config/index.vue b/continew-admin-ui/src/views/system/config/index.vue new file mode 100644 index 00000000..627cdf1c --- /dev/null +++ b/continew-admin-ui/src/views/system/config/index.vue @@ -0,0 +1,29 @@ + + + + + + + diff --git a/continew-admin-ui/src/views/system/config/locale/en-US.ts b/continew-admin-ui/src/views/system/config/locale/en-US.ts new file mode 100644 index 00000000..d5243f9b --- /dev/null +++ b/continew-admin-ui/src/views/system/config/locale/en-US.ts @@ -0,0 +1,3 @@ +export default { + 'menu.system.config': 'System config', +}; diff --git a/continew-admin-ui/src/views/system/config/locale/zh-CN.ts b/continew-admin-ui/src/views/system/config/locale/zh-CN.ts new file mode 100644 index 00000000..4eae1c25 --- /dev/null +++ b/continew-admin-ui/src/views/system/config/locale/zh-CN.ts @@ -0,0 +1,3 @@ +export default { + 'menu.system.config': '系统配置', +}; diff --git a/continew-admin-ui/src/views/system/config/mock.ts b/continew-admin-ui/src/views/system/config/mock.ts new file mode 100644 index 00000000..1def2812 --- /dev/null +++ b/continew-admin-ui/src/views/system/config/mock.ts @@ -0,0 +1,36 @@ +import Mock from 'mockjs'; +import setupMock, { successResponseWrap } from '@/utils/setup-mock'; + +setupMock({ + setup() { + Mock.mock(new RegExp('/api/system/option'), () => { + return successResponseWrap([ + { + name: '系统标题', + code: 'site_title', + value: 'ContiNew Admin', + description: '用于显示登录页面的系统标题。', + }, + { + name: '版权信息', + code: 'site_copyright', + value: + 'Copyright © 2022-2023 Charles7c ⋅ ContiNew Admin ⋅ 津ICP备2022005864号-2', + description: '用于显示登录页面的底部版权信息。', + }, + { + name: '系统LOGO(16*16)', + code: 'site_favicon', + value: 'https://cnadmin.charles7c.top/favicon.ico', + description: '用于显示浏览器地址栏的系统LOGO。', + }, + { + name: '系统LOGO(48*48)', + code: 'site_logo', + value: 'https://cnadmin.charles7c.top/logo.svg', + description: '用于显示登录页面的系统LOGO。', + }, + ]); + }); + }, +}); diff --git a/continew-admin-webapi/src/main/resources/db/changelog/v1.2.0/continew-admin_data.sql b/continew-admin-webapi/src/main/resources/db/changelog/v1.2.0/continew-admin_data.sql index fb289897..aec5c269 100644 --- a/continew-admin-webapi/src/main/resources/db/changelog/v1.2.0/continew-admin_data.sql +++ b/continew-admin-webapi/src/main/resources/db/changelog/v1.2.0/continew-admin_data.sql @@ -9,7 +9,10 @@ VALUES (1061, '字典新增', 1060, 3, NULL, NULL, NULL, NULL, b'0', b'0', b'0', 'system:dict:add', 1, 1, 1, NOW(), NULL, NULL), (1062, '字典修改', 1060, 3, NULL, NULL, NULL, NULL, b'0', b'0', b'0', 'system:dict:update', 2, 1, 1, NOW(), NULL, NULL), (1063, '字典删除', 1060, 3, NULL, NULL, NULL, NULL, b'0', b'0', b'0', 'system:dict:delete', 3, 1, 1, NOW(), NULL, NULL), -(1064, '字典导出', 1060, 3, NULL, NULL, NULL, NULL, b'0', b'0', b'0', 'system:dict:export', 4, 1, 1, NOW(), NULL, NULL); +(1064, '字典导出', 1060, 3, NULL, NULL, NULL, NULL, b'0', b'0', b'0', 'system:dict:export', 4, 1, 1, NOW(), NULL, NULL), +(1070, '系统配置', 1000, 2, '/system/config', 'Config', 'system/config/index', 'desktop', b'0', b'0', b'0', 'system:config:list', 7, 1, 1, NOW(), NULL, NULL), +(1071, '修改配置', 1070, 3, NULL, NULL, NULL, NULL, b'0', b'0', b'0', 'system:config:update', 1, 1, 1, NOW(), NULL, NULL), +(1072, '恢复默认', 1070, 3, NULL, NULL, NULL, NULL, b'0', b'0', b'0', 'system:config:delete', 2, 1, 1, NOW(), NULL, NULL); -- 初始化默认字典 INSERT IGNORE INTO `sys_dict`