zant-admin 2.0.2 → 2.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/.editorconfig +6 -0
  2. package/.env.development +3 -0
  3. package/.env.production +1 -0
  4. package/.env.test +1 -0
  5. package/.gitignore +36 -0
  6. package/.prettierrc.json +9 -0
  7. package/README.en.md +461 -272
  8. package/README.md +4 -3
  9. package/bin/cli.js +1 -1
  10. package/eslint.config.js +30 -0
  11. package/index.html +13 -0
  12. package/jsconfig.json +8 -0
  13. package/package.json +11 -3
  14. package/src/App.vue +16 -16
  15. package/src/api/methods/logError.js +8 -8
  16. package/src/api/methods/logOperation.js +8 -8
  17. package/src/api/methods/login.js +6 -6
  18. package/src/api/methods/quartz.js +36 -36
  19. package/src/api/methods/region.js +16 -16
  20. package/src/api/methods/sysAccount.js +29 -29
  21. package/src/api/methods/sysDict.js +29 -29
  22. package/src/api/methods/sysDictItem.js +26 -26
  23. package/src/api/methods/sysMenu.js +42 -42
  24. package/src/api/methods/sysRole.js +35 -35
  25. package/src/api/methods/sysUser.js +25 -25
  26. package/src/api/methods/system.js +15 -15
  27. package/src/api/request.js +225 -225
  28. package/src/assets/css/zcui.css +1023 -1023
  29. package/src/components/IconPicker.vue +351 -351
  30. package/src/components/MainPage.vue +838 -838
  31. package/src/components/details/logErrorDetails.vue +58 -58
  32. package/src/components/details/logOperationDetails.vue +76 -76
  33. package/src/components/edit/QuartzEdit.vue +221 -221
  34. package/src/components/edit/SysAccountEdit.vue +185 -185
  35. package/src/components/edit/SysDictEdit.vue +116 -116
  36. package/src/components/edit/SysDictItemEdit.vue +136 -136
  37. package/src/components/edit/SysRoleEdit.vue +111 -111
  38. package/src/config/index.js +74 -74
  39. package/src/directives/permission.js +49 -49
  40. package/src/main.js +37 -37
  41. package/src/stores/config.js +43 -43
  42. package/src/stores/dict.js +33 -33
  43. package/src/stores/menu.js +81 -81
  44. package/src/stores/user.js +21 -21
  45. package/src/utils/baseEcharts.js +661 -661
  46. package/src/utils/dictTemplate.js +26 -26
  47. package/src/utils/regionUtils.js +173 -173
  48. package/src/utils/useFormCRUD.js +59 -59
  49. package/src/views/baiscstatis/center.vue +474 -474
  50. package/src/views/baiscstatis/iframePage.vue +29 -29
  51. package/src/views/baiscstatis/notFound.vue +192 -192
  52. package/src/views/console.vue +821 -821
  53. package/src/views/demo/button.vue +269 -269
  54. package/src/views/demo/importexport.vue +119 -119
  55. package/src/views/demo/region.vue +322 -322
  56. package/src/views/demo/statistics.vue +214 -214
  57. package/src/views/home.vue +6 -6
  58. package/src/views/operations/log/logError.vue +78 -78
  59. package/src/views/operations/log/logLogin.vue +66 -66
  60. package/src/views/operations/log/logOperation.vue +103 -103
  61. package/src/views/operations/log/logQuartz.vue +56 -56
  62. package/src/views/operations/quartz.vue +179 -179
  63. package/src/views/operations/serviceMonitoring.vue +134 -134
  64. package/src/views/system/sysAccount.vue +128 -128
  65. package/src/views/system/sysDict.vue +159 -159
  66. package/src/views/system/sysDictItem.vue +118 -118
  67. package/src/views/system/sysMenu.vue +225 -225
  68. package/src/views/system/sysRole.vue +207 -207
  69. package/vite.config.js +33 -0
package/README.md CHANGED
@@ -245,10 +245,11 @@ zant-admin/
245
245
  ### 安装 CLI 脚手架(推荐)
246
246
 
247
247
  ```bash
248
- # 全局安装脚手架
249
- npm install -g zant-admin
248
+ # 使用 npx 快速创建项目(推荐,无需全局安装)
249
+ npx zant-admin create my-project
250
250
 
251
- # 创建新项目
251
+ # 或者全局安装后使用
252
+ npm install -g zant-admin
252
253
  zant-admin create my-project
253
254
 
254
255
  # 进入项目目录
package/bin/cli.js CHANGED
@@ -16,7 +16,7 @@ const program = new Command();
16
16
  program
17
17
  .name('zant-admin')
18
18
  .description('基于 Vue 3.5 + Vite + Ant Design Vue 的前端管理系统脚手架')
19
- .version('2.0.2');
19
+ .version('2.0.4');
20
20
 
21
21
  // 创建项目命令
22
22
  program
@@ -0,0 +1,30 @@
1
+ import js from '@eslint/js'
2
+ import pluginVue from 'eslint-plugin-vue'
3
+ import skipFormatting from '@vue/eslint-config-prettier/skip-formatting'
4
+
5
+ export default [
6
+ {
7
+ name: 'app/files-to-lint',
8
+ files: ['**/*.{js,mjs,jsx,vue}'],
9
+ },
10
+
11
+ {
12
+ name: 'app/files-to-ignore',
13
+ ignores: ['**/dist/**', '**/dist-ssr/**', '**/coverage/**'],
14
+ },
15
+
16
+ js.configs.recommended,
17
+ ...pluginVue.configs['flat/essential'],
18
+ skipFormatting,
19
+ {
20
+ env: {
21
+ node: true, // 使 ESLint 识别 Node.js 中的全局变量,如 process
22
+ },
23
+ // 自定义的 ESLint 规则
24
+ rules: {
25
+ 'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
26
+ 'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
27
+ 'vue/multi-word-component-names': 'off',
28
+ },
29
+ }
30
+ ]
package/index.html ADDED
@@ -0,0 +1,13 @@
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <link rel="icon" href="/logo.png" />
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
+ <title>ZAntAdmin</title>
8
+ </head>
9
+ <body>
10
+ <div id="app"></div>
11
+ <script type="module" src="/src/main.js"></script>
12
+ </body>
13
+ </html>
package/jsconfig.json ADDED
@@ -0,0 +1,8 @@
1
+ {
2
+ "compilerOptions": {
3
+ "paths": {
4
+ "@/*": ["./src/*"]
5
+ }
6
+ },
7
+ "exclude": ["node_modules", "dist"]
8
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zant-admin",
3
- "version": "2.0.2",
3
+ "version": "2.0.4",
4
4
  "description": "基于 Vue 3.5 + Vite + Ant Design Vue 的前端管理系统脚手架",
5
5
  "main": "bin/cli.js",
6
6
  "bin": {
@@ -65,8 +65,16 @@
65
65
  "templates/",
66
66
  "src/",
67
67
  "public/",
68
- "README.md",
69
- "SCAFFOLD_README.md"
68
+ ".editorconfig",
69
+ ".env.development",
70
+ ".env.test",
71
+ ".env.production",
72
+ "eslint.config.js",
73
+ "index.html",
74
+ "jsconfig.json",
75
+ "vite.config.js",
76
+ ".prettierrc.json",
77
+ ".gitignore"
70
78
  ],
71
79
  "publishConfig": {
72
80
  "access": "public"
package/src/App.vue CHANGED
@@ -1,16 +1,16 @@
1
- <template>
2
- <a-config-provider :locale="localeStore.locale">
3
- <section id="app">
4
- <router-view />
5
- </section>
6
- </a-config-provider>
7
- </template>
8
- <style></style>
9
-
10
- <script setup>
11
- import { configStore } from './stores/config'
12
- import { dictStore } from './stores/dict'
13
- const localeStore = configStore()
14
- const dict = dictStore()
15
- dict.initDictList()
16
- </script>
1
+ <template>
2
+ <a-config-provider :locale="localeStore.locale">
3
+ <section id="app">
4
+ <router-view />
5
+ </section>
6
+ </a-config-provider>
7
+ </template>
8
+ <style></style>
9
+
10
+ <script setup>
11
+ import { configStore } from './stores/config'
12
+ import { dictStore } from './stores/dict'
13
+ const localeStore = configStore()
14
+ const dict = dictStore()
15
+ dict.initDictList()
16
+ </script>
@@ -1,8 +1,8 @@
1
- import { get } from '@/api/request'
2
- const logError = {
3
- //根据id获取信息
4
- detail(params) {
5
- return get('logError/detail', params)
6
- },
7
- }
8
- export default logError
1
+ import { get } from '@/api/request'
2
+ const logError = {
3
+ //根据id获取信息
4
+ detail(params) {
5
+ return get('logError/detail', params)
6
+ },
7
+ }
8
+ export default logError
@@ -1,8 +1,8 @@
1
- import { get } from '@/api/request'
2
- const logOperation = {
3
- //根据id获取信息
4
- detail(params) {
5
- return get('logOperation/detail', params)
6
- },
7
- }
8
- export default logOperation
1
+ import { get } from '@/api/request'
2
+ const logOperation = {
3
+ //根据id获取信息
4
+ detail(params) {
5
+ return get('logOperation/detail', params)
6
+ },
7
+ }
8
+ export default logOperation
@@ -1,6 +1,6 @@
1
- import { post } from '@/api/request'
2
-
3
- // 登录
4
- export function login(params) {
5
- return post('sysAccount/login', params)
6
- }
1
+ import { post } from '@/api/request'
2
+
3
+ // 登录
4
+ export function login(params) {
5
+ return post('sysAccount/login', params)
6
+ }
@@ -1,36 +1,36 @@
1
- import { get, post } from '@/api/request'
2
- const quartz = {
3
- //根据id获取信息
4
- get(params) {
5
- return get('quartz/get', params)
6
- },
7
- //添加任务
8
- add(params) {
9
- return post('quartz/add', params)
10
- },
11
- //修改
12
- update(params) {
13
- return post('quartz/update', params)
14
- },
15
- //暂停任务
16
- pauseTask(params) {
17
- return get('quartz/pauseTask', params)
18
- },
19
- //恢复任务
20
- resumeTask(params) {
21
- return get('quartz/resumeTask', params)
22
- },
23
- //删除任务
24
- delete(params) {
25
- return get('quartz/delete', params)
26
- },
27
- //立即执行
28
- triggerTask(params) {
29
- return get('quartz/triggerTask', params)
30
- },
31
- //获取程序集和类名
32
- getAssembly(params) {
33
- return get('quartz/getAssembly', params)
34
- },
35
- }
36
- export default quartz
1
+ import { get, post } from '@/api/request'
2
+ const quartz = {
3
+ //根据id获取信息
4
+ get(params) {
5
+ return get('quartz/get', params)
6
+ },
7
+ //添加任务
8
+ add(params) {
9
+ return post('quartz/add', params)
10
+ },
11
+ //修改
12
+ update(params) {
13
+ return post('quartz/update', params)
14
+ },
15
+ //暂停任务
16
+ pauseTask(params) {
17
+ return get('quartz/pauseTask', params)
18
+ },
19
+ //恢复任务
20
+ resumeTask(params) {
21
+ return get('quartz/resumeTask', params)
22
+ },
23
+ //删除任务
24
+ delete(params) {
25
+ return get('quartz/delete', params)
26
+ },
27
+ //立即执行
28
+ triggerTask(params) {
29
+ return get('quartz/triggerTask', params)
30
+ },
31
+ //获取程序集和类名
32
+ getAssembly(params) {
33
+ return get('quartz/getAssembly', params)
34
+ },
35
+ }
36
+ export default quartz
@@ -1,16 +1,16 @@
1
- import { get } from '@/api/request'
2
- const region = {
3
- //获取所有省份
4
- getAllProvince() {
5
- return get('region/getAllProvince')
6
- },
7
- //获取所有城市
8
- getAllCity() {
9
- return get('region/getAllCity')
10
- },
11
- //获取所有区域(区/县)
12
- getAllAreas() {
13
- return get('region/getAllAreas')
14
- },
15
- }
16
- export default region
1
+ import { get } from '@/api/request'
2
+ const region = {
3
+ //获取所有省份
4
+ getAllProvince() {
5
+ return get('region/getAllProvince')
6
+ },
7
+ //获取所有城市
8
+ getAllCity() {
9
+ return get('region/getAllCity')
10
+ },
11
+ //获取所有区域(区/县)
12
+ getAllAreas() {
13
+ return get('region/getAllAreas')
14
+ },
15
+ }
16
+ export default region
@@ -1,29 +1,29 @@
1
- import { post, get } from '@/api/request'
2
-
3
- const sysAccount = {
4
- //根据id获取信息
5
- get(params) {
6
- return get('sysAccount/get', params)
7
- },
8
- //新增
9
- add(params) {
10
- return post('sysAccount/add', params, true)
11
- },
12
- //修改
13
- update(params) {
14
- return post('sysAccount/update', params, true)
15
- },
16
- //修改是否启用
17
- updateIsEnabled(params) {
18
- return get('sysAccount/updateIsEnabled', params)
19
- },
20
- //发送短信
21
- sendCode(params) {
22
- return get('sysAccount/sendCode', params)
23
- },
24
- //修改密码
25
- updatePwd(params) {
26
- return get('sysAccount/updatePwd', params)
27
- },
28
- }
29
- export default sysAccount
1
+ import { post, get } from '@/api/request'
2
+
3
+ const sysAccount = {
4
+ //根据id获取信息
5
+ get(params) {
6
+ return get('sysAccount/get', params)
7
+ },
8
+ //新增
9
+ add(params) {
10
+ return post('sysAccount/add', params, true)
11
+ },
12
+ //修改
13
+ update(params) {
14
+ return post('sysAccount/update', params, true)
15
+ },
16
+ //修改是否启用
17
+ updateIsEnabled(params) {
18
+ return get('sysAccount/updateIsEnabled', params)
19
+ },
20
+ //发送短信
21
+ sendCode(params) {
22
+ return get('sysAccount/sendCode', params)
23
+ },
24
+ //修改密码
25
+ updatePwd(params) {
26
+ return get('sysAccount/updatePwd', params)
27
+ },
28
+ }
29
+ export default sysAccount
@@ -1,29 +1,29 @@
1
- import { post, get } from '@/api/request'
2
-
3
- const sysDict = {
4
- //根据id获取信息
5
- get(params) {
6
- return get('sysDict/get', params)
7
- },
8
- //保存
9
- save(params) {
10
- return post('sysDict/save', params)
11
- },
12
- //修改是否启用
13
- updateIsEnabled(params) {
14
- return get('sysDict/updateIsEnabled', params)
15
- },
16
- //新增
17
- add(params) {
18
- return post('sysDict/add', params)
19
- },
20
- //更新
21
- update(params) {
22
- return post('sysDict/update', params)
23
- }, //查询字典值
24
- getDictList() {
25
- return get('sysDict/getDictList')
26
- },
27
- }
28
- // 获取字典分页信息
29
- export default sysDict
1
+ import { post, get } from '@/api/request'
2
+
3
+ const sysDict = {
4
+ //根据id获取信息
5
+ get(params) {
6
+ return get('sysDict/get', params)
7
+ },
8
+ //保存
9
+ save(params) {
10
+ return post('sysDict/save', params)
11
+ },
12
+ //修改是否启用
13
+ updateIsEnabled(params) {
14
+ return get('sysDict/updateIsEnabled', params)
15
+ },
16
+ //新增
17
+ add(params) {
18
+ return post('sysDict/add', params)
19
+ },
20
+ //更新
21
+ update(params) {
22
+ return post('sysDict/update', params)
23
+ }, //查询字典值
24
+ getDictList() {
25
+ return get('sysDict/getDictList')
26
+ },
27
+ }
28
+ // 获取字典分页信息
29
+ export default sysDict
@@ -1,26 +1,26 @@
1
- import { post, get } from '@/api/request'
2
-
3
- const sysDictItem = {
4
- //根据id获取信息
5
- get(params) {
6
- return get('sysDictItem/get', params, true)
7
- },
8
- //保存
9
- save(params) {
10
- return post('sysDictItem/save', params)
11
- },
12
- //新增
13
- add(params) {
14
- return post('sysDictItem/add', params, true)
15
- },
16
- //更新
17
- update(params) {
18
- return post('sysDictItem/update', params, true)
19
- },
20
- //修改是否启用
21
- updateIsEnabled(params) {
22
- return get('sysDictItem/updateIsEnabled', params)
23
- },
24
- }
25
- // 获取字典分页信息
26
- export default sysDictItem
1
+ import { post, get } from '@/api/request'
2
+
3
+ const sysDictItem = {
4
+ //根据id获取信息
5
+ get(params) {
6
+ return get('sysDictItem/get', params, true)
7
+ },
8
+ //保存
9
+ save(params) {
10
+ return post('sysDictItem/save', params)
11
+ },
12
+ //新增
13
+ add(params) {
14
+ return post('sysDictItem/add', params, true)
15
+ },
16
+ //更新
17
+ update(params) {
18
+ return post('sysDictItem/update', params, true)
19
+ },
20
+ //修改是否启用
21
+ updateIsEnabled(params) {
22
+ return get('sysDictItem/updateIsEnabled', params)
23
+ },
24
+ }
25
+ // 获取字典分页信息
26
+ export default sysDictItem
@@ -1,42 +1,42 @@
1
- import { get, post } from '@/api/request'
2
-
3
- const sysMenu = {
4
- // 获取下拉框Tree选择框数据
5
- getTreeSelectMenu() {
6
- return get('sysmenu/getTreeSelectMenu')
7
- },
8
- //获取路由菜单
9
- getRoutesMenu() {
10
- return get('sysmenu/getRoutesMenu')
11
- },
12
- //修改是否启用
13
- updateIsEnabled(params) {
14
- return get('sysmenu/updateIsEnabled', params)
15
- },
16
- //修改是否缓存
17
- updateCache(params) {
18
- return get('sysmenu/updateCache', params)
19
- },
20
- //修改是否显示在菜单
21
- updateIsShowMenu(params) {
22
- return get('sysmenu/updateIsShowMenu', params)
23
- },
24
- //根据id获取信息
25
- get(params) {
26
- return get('sysmenu/get', params)
27
- },
28
- //新增
29
- add(params) {
30
- return post('sysmenu/add', params)
31
- },
32
- //修改
33
- update(params) {
34
- return post('sysmenu/update', params)
35
- },
36
- //获取按钮权限信息
37
- getMenuBtn(params) {
38
- return get('sysmenu/getMenuBtn', params)
39
- },
40
- }
41
- // 导出对象
42
- export default sysMenu
1
+ import { get, post } from '@/api/request'
2
+
3
+ const sysMenu = {
4
+ // 获取下拉框Tree选择框数据
5
+ getTreeSelectMenu() {
6
+ return get('sysmenu/getTreeSelectMenu')
7
+ },
8
+ //获取路由菜单
9
+ getRoutesMenu() {
10
+ return get('sysmenu/getRoutesMenu')
11
+ },
12
+ //修改是否启用
13
+ updateIsEnabled(params) {
14
+ return get('sysmenu/updateIsEnabled', params)
15
+ },
16
+ //修改是否缓存
17
+ updateCache(params) {
18
+ return get('sysmenu/updateCache', params)
19
+ },
20
+ //修改是否显示在菜单
21
+ updateIsShowMenu(params) {
22
+ return get('sysmenu/updateIsShowMenu', params)
23
+ },
24
+ //根据id获取信息
25
+ get(params) {
26
+ return get('sysmenu/get', params)
27
+ },
28
+ //新增
29
+ add(params) {
30
+ return post('sysmenu/add', params)
31
+ },
32
+ //修改
33
+ update(params) {
34
+ return post('sysmenu/update', params)
35
+ },
36
+ //获取按钮权限信息
37
+ getMenuBtn(params) {
38
+ return get('sysmenu/getMenuBtn', params)
39
+ },
40
+ }
41
+ // 导出对象
42
+ export default sysMenu
@@ -1,35 +1,35 @@
1
- import { post, get } from '@/api/request'
2
-
3
- const sysRole = {
4
- //根据id获取信息
5
- get(params) {
6
- return get('sysRole/get', params)
7
- },
8
- //新增
9
- add(params) {
10
- return post('sysRole/add', params)
11
- },
12
- //更新
13
- update(params) {
14
- return post('sysRole/update', params)
15
- },
16
- //修改是否启用
17
- updateIsEnabled(params) {
18
- return get('sysRole/updateIsEnabled', params)
19
- },
20
- //查询角色列表
21
- getList() {
22
- return get('sysRole/getList')
23
- },
24
-
25
- //获取角色关联菜单信息(树结构)
26
- getRoleMenu(params) {
27
- return get('sysRole/getRoleMenu', params)
28
- },
29
- //保存角色关联菜单
30
- savePower(params) {
31
- return post('sysRole/savePower', params)
32
- },
33
- }
34
- // 获取角色分页信息
35
- export default sysRole
1
+ import { post, get } from '@/api/request'
2
+
3
+ const sysRole = {
4
+ //根据id获取信息
5
+ get(params) {
6
+ return get('sysRole/get', params)
7
+ },
8
+ //新增
9
+ add(params) {
10
+ return post('sysRole/add', params)
11
+ },
12
+ //更新
13
+ update(params) {
14
+ return post('sysRole/update', params)
15
+ },
16
+ //修改是否启用
17
+ updateIsEnabled(params) {
18
+ return get('sysRole/updateIsEnabled', params)
19
+ },
20
+ //查询角色列表
21
+ getList() {
22
+ return get('sysRole/getList')
23
+ },
24
+
25
+ //获取角色关联菜单信息(树结构)
26
+ getRoleMenu(params) {
27
+ return get('sysRole/getRoleMenu', params)
28
+ },
29
+ //保存角色关联菜单
30
+ savePower(params) {
31
+ return post('sysRole/savePower', params)
32
+ },
33
+ }
34
+ // 获取角色分页信息
35
+ export default sysRole