diff --git a/frontend/.env.development b/frontend/.env.development index ac6b0dd..44a6eff 100644 --- a/frontend/.env.development +++ b/frontend/.env.development @@ -1 +1,2 @@ VITE_BASE_URL = /api +VITE_WEBSOCKET = /socket diff --git a/frontend/.env.production b/frontend/.env.production index d19fb38..0b0b74d 100644 --- a/frontend/.env.production +++ b/frontend/.env.production @@ -1 +1,2 @@ -VITE_BASE_URL = http://127.0.0.1:8000/api/ \ No newline at end of file +VITE_BASE_URL = http://127.0.0.1:8000/api +VITE_WEBSOCKET = ws://localhost:8000/ws diff --git a/frontend/package-lock.json b/frontend/package-lock.json index 1c1569d..869623b 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -10,6 +10,7 @@ "dependencies": { "ant-design-vue": "^3.2.12", "axios": "^0.27.2", + "echarts": "^5.3.3", "moment": "^2.29.4", "normalize.css": "^8.0.1", "pinia": "^2.0.21", @@ -807,6 +808,15 @@ "resolved": "https://registry.npmjs.org/dom-scroll-into-view/-/dom-scroll-into-view-2.0.1.tgz", "integrity": "sha512-bvVTQe1lfaUr1oFzZX80ce9KLDlZ3iU+XGNE/bz9HnGdklTieqsbmsLHe+rT2XWqopvL0PckkYqN7ksmm5pe3w==" }, + "node_modules/echarts": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/echarts/-/echarts-5.3.3.tgz", + "integrity": "sha512-BRw2serInRwO5SIwRviZ6Xgm5Lb7irgz+sLiFMmy/HOaf4SQ+7oYqxKzRHAKp4xHQ05AuHw1xvoQWJjDQq/FGw==", + "dependencies": { + "tslib": "2.3.0", + "zrender": "5.3.2" + } + }, "node_modules/esbuild": { "version": "0.15.7", "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.15.7.tgz", @@ -2628,6 +2638,11 @@ "node": ">=8.0" } }, + "node_modules/tslib": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", + "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" + }, "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", @@ -2928,6 +2943,14 @@ "funding": { "url": "https://github.com/sponsors/sindresorhus" } + }, + "node_modules/zrender": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/zrender/-/zrender-5.3.2.tgz", + "integrity": "sha512-8IiYdfwHj2rx0UeIGZGGU4WEVSDEdeVCaIg/fomejg1Xu6OifAL1GVzIPHg2D+MyUkbNgPWji90t0a8IDk+39w==", + "dependencies": { + "tslib": "2.3.0" + } } }, "dependencies": { @@ -3536,6 +3559,15 @@ "resolved": "https://registry.npmjs.org/dom-scroll-into-view/-/dom-scroll-into-view-2.0.1.tgz", "integrity": "sha512-bvVTQe1lfaUr1oFzZX80ce9KLDlZ3iU+XGNE/bz9HnGdklTieqsbmsLHe+rT2XWqopvL0PckkYqN7ksmm5pe3w==" }, + "echarts": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/echarts/-/echarts-5.3.3.tgz", + "integrity": "sha512-BRw2serInRwO5SIwRviZ6Xgm5Lb7irgz+sLiFMmy/HOaf4SQ+7oYqxKzRHAKp4xHQ05AuHw1xvoQWJjDQq/FGw==", + "requires": { + "tslib": "2.3.0", + "zrender": "5.3.2" + } + }, "esbuild": { "version": "0.15.7", "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.15.7.tgz", @@ -4726,6 +4758,11 @@ "is-number": "^7.0.0" } }, + "tslib": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", + "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" + }, "type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", @@ -4911,6 +4948,14 @@ "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "dev": true + }, + "zrender": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/zrender/-/zrender-5.3.2.tgz", + "integrity": "sha512-8IiYdfwHj2rx0UeIGZGGU4WEVSDEdeVCaIg/fomejg1Xu6OifAL1GVzIPHg2D+MyUkbNgPWji90t0a8IDk+39w==", + "requires": { + "tslib": "2.3.0" + } } } } diff --git a/frontend/package.json b/frontend/package.json index b25a20b..349d711 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -11,6 +11,7 @@ "dependencies": { "ant-design-vue": "^3.2.12", "axios": "^0.27.2", + "echarts": "^5.3.3", "moment": "^2.29.4", "normalize.css": "^8.0.1", "pinia": "^2.0.21", diff --git a/frontend/src/components/echart/echart-system-info.vue b/frontend/src/components/echart/echart-system-info.vue new file mode 100644 index 0000000..fe5537a --- /dev/null +++ b/frontend/src/components/echart/echart-system-info.vue @@ -0,0 +1,107 @@ + + + + + diff --git a/frontend/src/components/echart/echart.vue b/frontend/src/components/echart/echart.vue new file mode 100644 index 0000000..2c1af5d --- /dev/null +++ b/frontend/src/components/echart/echart.vue @@ -0,0 +1,38 @@ + + + + + diff --git a/frontend/src/views/main/setting/about/about.vue b/frontend/src/views/main/setting/about/about.vue index 2d246c7..445f7b4 100644 --- a/frontend/src/views/main/setting/about/about.vue +++ b/frontend/src/views/main/setting/about/about.vue @@ -1,7 +1,46 @@ - + - + diff --git a/frontend/src/views/main/system/role/role.vue b/frontend/src/views/main/system/role/role.vue index f82bd41..2794bad 100644 --- a/frontend/src/views/main/system/role/role.vue +++ b/frontend/src/views/main/system/role/role.vue @@ -6,7 +6,6 @@ import { PlusOutlined } from '@ant-design/icons-vue' import { getRoles, queryRole, delRole, putRole, addRole } from '@/service/role' import { getMenus } from '@/service/menu' import { columns, rules, treeFieldNames } from './conf' -import { formatTime } from '@/utils/format' import { message } from 'ant-design-vue' import { getMenus as getRoleMenu } from '@/service/user' @@ -239,10 +238,10 @@ watch(