Commit 005a3e6ab0a9a3a710aca08b0cb7daf6b6205063

Authored by xingyu
1 parent dec05a6c

fix: bugs

README.md
@@ -223,9 +223,9 @@ ps:核心功能已经实现,正在对接微信小程序中... @@ -223,9 +223,9 @@ ps:核心功能已经实现,正在对接微信小程序中...
223 |----------------------------------------------------------------------|:------------:|:------:| 223 |----------------------------------------------------------------------|:------------:|:------:|
224 | [Vue](https://staging-cn.vuejs.org/) | Vue 框架 | 3.2.45 | 224 | [Vue](https://staging-cn.vuejs.org/) | Vue 框架 | 3.2.45 |
225 | [Vite](https://cn.vitejs.dev//) | 开发与构建工具 | 3.2.3 | 225 | [Vite](https://cn.vitejs.dev//) | 开发与构建工具 | 3.2.3 |
226 -| [Element Plus](https://element-plus.org/zh-CN/) | Element Plus | 2.2.23 | 226 +| [Element Plus](https://element-plus.org/zh-CN/) | Element Plus | 2.2.25 |
227 | [TypeScript](https://www.typescriptlang.org/docs/) | TypeScript | 4.9.3 | 227 | [TypeScript](https://www.typescriptlang.org/docs/) | TypeScript | 4.9.3 |
228 -| [pinia](https://pinia.vuejs.org/) | vuex5 | 2.0.26 | 228 +| [pinia](https://pinia.vuejs.org/) | vuex5 | 2.0.27 |
229 | [vue-i18n](https://kazupon.github.io/vue-i18n/zh/introduction.html/) | 国际化 | 9.2.2 | 229 | [vue-i18n](https://kazupon.github.io/vue-i18n/zh/introduction.html/) | 国际化 | 9.2.2 |
230 | [vxe-table](https://vxetable.cn/) | vue最强表单 | 4.5.6 | 230 | [vxe-table](https://vxetable.cn/) | vue最强表单 | 4.5.6 |
231 231
yudao-dependencies/pom.xml
@@ -60,7 +60,7 @@ @@ -60,7 +60,7 @@
60 <minio.version>8.2.2</minio.version> 60 <minio.version>8.2.2</minio.version>
61 <aliyun-java-sdk-core.version>4.6.2</aliyun-java-sdk-core.version> 61 <aliyun-java-sdk-core.version>4.6.2</aliyun-java-sdk-core.version>
62 <aliyun-java-sdk-dysmsapi.version>2.2.1</aliyun-java-sdk-dysmsapi.version> 62 <aliyun-java-sdk-dysmsapi.version>2.2.1</aliyun-java-sdk-dysmsapi.version>
63 - <tencentcloud-sdk-java.version>3.1.634</tencentcloud-sdk-java.version> 63 + <tencentcloud-sdk-java.version>3.1.561</tencentcloud-sdk-java.version>
64 <justauth.version>1.4.0</justauth.version> 64 <justauth.version>1.4.0</justauth.version>
65 <jimureport.version>1.5.3</jimureport.version> 65 <jimureport.version>1.5.3</jimureport.version>
66 <xercesImpl.version>2.12.2</xercesImpl.version> 66 <xercesImpl.version>2.12.2</xercesImpl.version>
yudao-ui-admin-vue3/package.json
1 { 1 {
2 "name": "ruoyi-vue-pro-vue3", 2 "name": "ruoyi-vue-pro-vue3",
3 - "version": "1.6.4.1862", 3 + "version": "1.6.4.1863",
4 "description": "基于vue3、vite3、element-plus、typesScript", 4 "description": "基于vue3、vite3、element-plus、typesScript",
5 "author": "xingyu", 5 "author": "xingyu",
6 "private": false, 6 "private": false,
@@ -36,14 +36,14 @@ @@ -36,14 +36,14 @@
36 "dayjs": "^1.11.6", 36 "dayjs": "^1.11.6",
37 "echarts": "^5.4.0", 37 "echarts": "^5.4.0",
38 "echarts-wordcloud": "^2.1.0", 38 "echarts-wordcloud": "^2.1.0",
39 - "element-plus": "2.2.23", 39 + "element-plus": "2.2.25",
40 "intro.js": "^6.0.0", 40 "intro.js": "^6.0.0",
41 "js-cookie": "^3.0.1", 41 "js-cookie": "^3.0.1",
42 "jsencrypt": "^3.3.1", 42 "jsencrypt": "^3.3.1",
43 "lodash-es": "^4.17.21", 43 "lodash-es": "^4.17.21",
44 "mitt": "^3.0.0", 44 "mitt": "^3.0.0",
45 "nprogress": "^0.2.0", 45 "nprogress": "^0.2.0",
46 - "pinia": "^2.0.26", 46 + "pinia": "^2.0.27",
47 "qrcode": "^1.5.1", 47 "qrcode": "^1.5.1",
48 "qs": "^6.11.0", 48 "qs": "^6.11.0",
49 "url": "^0.11.0", 49 "url": "^0.11.0",
@@ -59,7 +59,7 @@ @@ -59,7 +59,7 @@
59 "devDependencies": { 59 "devDependencies": {
60 "@commitlint/cli": "^17.3.0", 60 "@commitlint/cli": "^17.3.0",
61 "@commitlint/config-conventional": "^17.3.0", 61 "@commitlint/config-conventional": "^17.3.0",
62 - "@iconify/json": "^2.1.143", 62 + "@iconify/json": "^2.1.144",
63 "@intlify/vite-plugin-vue-i18n": "^6.0.3", 63 "@intlify/vite-plugin-vue-i18n": "^6.0.3",
64 "@purge-icons/generated": "^0.9.0", 64 "@purge-icons/generated": "^0.9.0",
65 "@types/intro.js": "^5.1.0", 65 "@types/intro.js": "^5.1.0",
@@ -82,10 +82,10 @@ @@ -82,10 +82,10 @@
82 "plop": "^3.1.1", 82 "plop": "^3.1.1",
83 "postcss": "^8.4.19", 83 "postcss": "^8.4.19",
84 "postcss-html": "^1.5.0", 84 "postcss-html": "^1.5.0",
85 - "postcss-scss": "^4.0.5", 85 + "postcss-scss": "^4.0.6",
86 "prettier": "^2.8.0", 86 "prettier": "^2.8.0",
87 "rimraf": "^3.0.2", 87 "rimraf": "^3.0.2",
88 - "rollup": "^3.4.0", 88 + "rollup": "^3.5.0",
89 "sass": "^1.56.1", 89 "sass": "^1.56.1",
90 "stylelint": "^14.15.0", 90 "stylelint": "^14.15.0",
91 "stylelint-config-html": "^1.1.0", 91 "stylelint-config-html": "^1.1.0",
yudao-ui-admin-vue3/pnpm-lock.yaml
@@ -4,7 +4,7 @@ specifiers: @@ -4,7 +4,7 @@ specifiers:
4 '@commitlint/cli': ^17.3.0 4 '@commitlint/cli': ^17.3.0
5 '@commitlint/config-conventional': ^17.3.0 5 '@commitlint/config-conventional': ^17.3.0
6 '@iconify/iconify': ^3.0.0 6 '@iconify/iconify': ^3.0.0
7 - '@iconify/json': ^2.1.143 7 + '@iconify/json': ^2.1.144
8 '@intlify/vite-plugin-vue-i18n': ^6.0.3 8 '@intlify/vite-plugin-vue-i18n': ^6.0.3
9 '@purge-icons/generated': ^0.9.0 9 '@purge-icons/generated': ^0.9.0
10 '@types/intro.js': ^5.1.0 10 '@types/intro.js': ^5.1.0
@@ -28,7 +28,7 @@ specifiers: @@ -28,7 +28,7 @@ specifiers:
28 dayjs: ^1.11.6 28 dayjs: ^1.11.6
29 echarts: ^5.4.0 29 echarts: ^5.4.0
30 echarts-wordcloud: ^2.1.0 30 echarts-wordcloud: ^2.1.0
31 - element-plus: 2.2.23 31 + element-plus: 2.2.25
32 eslint: ^8.28.0 32 eslint: ^8.28.0
33 eslint-config-prettier: ^8.5.0 33 eslint-config-prettier: ^8.5.0
34 eslint-define-config: ^1.12.0 34 eslint-define-config: ^1.12.0
@@ -41,16 +41,16 @@ specifiers: @@ -41,16 +41,16 @@ specifiers:
41 lodash-es: ^4.17.21 41 lodash-es: ^4.17.21
42 mitt: ^3.0.0 42 mitt: ^3.0.0
43 nprogress: ^0.2.0 43 nprogress: ^0.2.0
44 - pinia: ^2.0.26 44 + pinia: ^2.0.27
45 plop: ^3.1.1 45 plop: ^3.1.1
46 postcss: ^8.4.19 46 postcss: ^8.4.19
47 postcss-html: ^1.5.0 47 postcss-html: ^1.5.0
48 - postcss-scss: ^4.0.5 48 + postcss-scss: ^4.0.6
49 prettier: ^2.8.0 49 prettier: ^2.8.0
50 qrcode: ^1.5.1 50 qrcode: ^1.5.1
51 qs: ^6.11.0 51 qs: ^6.11.0
52 rimraf: ^3.0.2 52 rimraf: ^3.0.2
53 - rollup: ^3.4.0 53 + rollup: ^3.5.0
54 sass: ^1.56.1 54 sass: ^1.56.1
55 stylelint: ^14.15.0 55 stylelint: ^14.15.0
56 stylelint-config-html: ^1.1.0 56 stylelint-config-html: ^1.1.0
@@ -93,14 +93,14 @@ dependencies: @@ -93,14 +93,14 @@ dependencies:
93 dayjs: registry.npmmirror.com/dayjs/1.11.6 93 dayjs: registry.npmmirror.com/dayjs/1.11.6
94 echarts: registry.npmmirror.com/echarts/5.4.0 94 echarts: registry.npmmirror.com/echarts/5.4.0
95 echarts-wordcloud: 2.1.0_echarts@5.4.0 95 echarts-wordcloud: 2.1.0_echarts@5.4.0
96 - element-plus: 2.2.23_vue@3.2.45 96 + element-plus: 2.2.25_vue@3.2.45
97 intro.js: registry.npmmirror.com/intro.js/6.0.0 97 intro.js: registry.npmmirror.com/intro.js/6.0.0
98 js-cookie: registry.npmmirror.com/js-cookie/3.0.1 98 js-cookie: registry.npmmirror.com/js-cookie/3.0.1
99 jsencrypt: registry.npmmirror.com/jsencrypt/3.3.1 99 jsencrypt: registry.npmmirror.com/jsencrypt/3.3.1
100 lodash-es: registry.npmmirror.com/lodash-es/4.17.21 100 lodash-es: registry.npmmirror.com/lodash-es/4.17.21
101 mitt: registry.npmmirror.com/mitt/3.0.0 101 mitt: registry.npmmirror.com/mitt/3.0.0
102 nprogress: registry.npmmirror.com/nprogress/0.2.0 102 nprogress: registry.npmmirror.com/nprogress/0.2.0
103 - pinia: 2.0.26_mgnvym7yiazkylwwogi5r767ue 103 + pinia: 2.0.27_mgnvym7yiazkylwwogi5r767ue
104 qrcode: registry.npmmirror.com/qrcode/1.5.1 104 qrcode: registry.npmmirror.com/qrcode/1.5.1
105 qs: registry.npmmirror.com/qs/6.11.0 105 qs: registry.npmmirror.com/qs/6.11.0
106 url: registry.npmmirror.com/url/0.11.0 106 url: registry.npmmirror.com/url/0.11.0
@@ -116,7 +116,7 @@ dependencies: @@ -116,7 +116,7 @@ dependencies:
116 devDependencies: 116 devDependencies:
117 '@commitlint/cli': registry.npmmirror.com/@commitlint/cli/17.3.0 117 '@commitlint/cli': registry.npmmirror.com/@commitlint/cli/17.3.0
118 '@commitlint/config-conventional': registry.npmmirror.com/@commitlint/config-conventional/17.3.0 118 '@commitlint/config-conventional': registry.npmmirror.com/@commitlint/config-conventional/17.3.0
119 - '@iconify/json': 2.1.143 119 + '@iconify/json': 2.1.144
120 '@intlify/vite-plugin-vue-i18n': registry.npmmirror.com/@intlify/vite-plugin-vue-i18n/6.0.3_vite@3.2.4+vue-i18n@9.2.2 120 '@intlify/vite-plugin-vue-i18n': registry.npmmirror.com/@intlify/vite-plugin-vue-i18n/6.0.3_vite@3.2.4+vue-i18n@9.2.2
121 '@purge-icons/generated': registry.npmmirror.com/@purge-icons/generated/0.9.0 121 '@purge-icons/generated': registry.npmmirror.com/@purge-icons/generated/0.9.0
122 '@types/intro.js': registry.npmmirror.com/@types/intro.js/5.1.0 122 '@types/intro.js': registry.npmmirror.com/@types/intro.js/5.1.0
@@ -139,10 +139,10 @@ devDependencies: @@ -139,10 +139,10 @@ devDependencies:
139 plop: registry.npmmirror.com/plop/3.1.1 139 plop: registry.npmmirror.com/plop/3.1.1
140 postcss: registry.npmmirror.com/postcss/8.4.19 140 postcss: registry.npmmirror.com/postcss/8.4.19
141 postcss-html: registry.npmmirror.com/postcss-html/1.5.0 141 postcss-html: registry.npmmirror.com/postcss-html/1.5.0
142 - postcss-scss: registry.npmmirror.com/postcss-scss/4.0.5_postcss@8.4.19 142 + postcss-scss: 4.0.6_postcss@8.4.19
143 prettier: registry.npmmirror.com/prettier/2.8.0 143 prettier: registry.npmmirror.com/prettier/2.8.0
144 rimraf: registry.npmmirror.com/rimraf/3.0.2 144 rimraf: registry.npmmirror.com/rimraf/3.0.2
145 - rollup: registry.npmmirror.com/rollup/3.4.0 145 + rollup: 3.5.0
146 sass: registry.npmmirror.com/sass/1.56.1 146 sass: registry.npmmirror.com/sass/1.56.1
147 stylelint: registry.npmmirror.com/stylelint/14.15.0 147 stylelint: registry.npmmirror.com/stylelint/14.15.0
148 stylelint-config-html: registry.npmmirror.com/stylelint-config-html/1.1.0_qendsqix7hqecpnpx4fjs6qry4 148 stylelint-config-html: registry.npmmirror.com/stylelint-config-html/1.1.0_qendsqix7hqecpnpx4fjs6qry4
@@ -207,8 +207,8 @@ packages: @@ -207,8 +207,8 @@ packages:
207 '@floating-ui/core': 1.0.2 207 '@floating-ui/core': 1.0.2
208 dev: false 208 dev: false
209 209
210 - /@iconify/json/2.1.143:  
211 - resolution: {integrity: sha512-atN7UAsuRgXkXE9MiOh59T2hIkN3ulE6GVbfZjKeYPYdyRpsAgFsLOAMjJ+u6jIzaiZn+rSVwx7m2gQG47sN0A==} 210 + /@iconify/json/2.1.144:
  211 + resolution: {integrity: sha512-U4W9EHgDVKk/ll8fJ8J6atgtYj9MjPUiKtVlMlyz+SO90lI34QbgVJZOP/DEezLP/HcAIDLS2pgX+x+kFIkeWg==}
212 dependencies: 212 dependencies:
213 '@iconify/types': 2.0.0 213 '@iconify/types': 2.0.0
214 pathe: 0.3.9 214 pathe: 0.3.9
@@ -440,8 +440,8 @@ packages: @@ -440,8 +440,8 @@ packages:
440 echarts: registry.npmmirror.com/echarts/5.4.0 440 echarts: registry.npmmirror.com/echarts/5.4.0
441 dev: false 441 dev: false
442 442
443 - /element-plus/2.2.23_vue@3.2.45:  
444 - resolution: {integrity: sha512-/7BtebETiknsW2TpSwt5RIpXxFQ1sbYoRelJqeiB1K9LcL0MwyQJ1rZSuWHBCHduMvfpogNZ66dwp2Giv9lYbg==} 443 + /element-plus/2.2.25_vue@3.2.45:
  444 + resolution: {integrity: sha512-HC8CWY31e6pPyBpgqI0QnWkBgs0vRzdYnEw3mpdM/NlKfp0PtNFX7NESQLomqoIulH5ftL09hjQmJNvZBQpthQ==}
445 peerDependencies: 445 peerDependencies:
446 vue: ^3.2.0 446 vue: ^3.2.0
447 dependencies: 447 dependencies:
@@ -780,6 +780,7 @@ packages: @@ -780,6 +780,7 @@ packages:
780 780
781 /graceful-fs/4.2.10: 781 /graceful-fs/4.2.10:
782 resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} 782 resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==}
  783 + requiresBuild: true
783 dev: true 784 dev: true
784 optional: true 785 optional: true
785 786
@@ -1006,8 +1007,8 @@ packages: @@ -1006,8 +1007,8 @@ packages:
1006 hasBin: true 1007 hasBin: true
1007 dev: true 1008 dev: true
1008 1009
1009 - /pinia/2.0.26_mgnvym7yiazkylwwogi5r767ue:  
1010 - resolution: {integrity: sha512-tSxZNUcMGxQOvKZRjPKXxd2+/2NZhRF/CoYVE/+K6uE/Z3v1Oi4fcQFpxu5nMB1dCchjXUZ+lz0tBxV5ntwmQQ==} 1010 + /pinia/2.0.27_mgnvym7yiazkylwwogi5r767ue:
  1011 + resolution: {integrity: sha512-nOnXP0OFeL8R4WjAHsterU+11vptda643gH02xKNtSCDPiRzVfRYodOLihLDoa0gL1KKuQKV+KOzEgdt3YvqEw==}
1011 peerDependencies: 1012 peerDependencies:
1012 '@vue/composition-api': ^1.4.0 1013 '@vue/composition-api': ^1.4.0
1013 typescript: '>=4.4.4' 1014 typescript: '>=4.4.4'
@@ -1024,6 +1025,15 @@ packages: @@ -1024,6 +1025,15 @@ packages:
1024 vue-demi: 0.13.11_vue@3.2.45 1025 vue-demi: 0.13.11_vue@3.2.45
1025 dev: false 1026 dev: false
1026 1027
  1028 + /postcss-scss/4.0.6_postcss@8.4.19:
  1029 + resolution: {integrity: sha512-rLDPhJY4z/i4nVFZ27j9GqLxj1pwxE80eAzUNRMXtcpipFYIeowerzBgG3yJhMtObGEXidtIgbUpQ3eLDsf5OQ==}
  1030 + engines: {node: '>=12.0'}
  1031 + peerDependencies:
  1032 + postcss: ^8.4.19
  1033 + dependencies:
  1034 + postcss: registry.npmmirror.com/postcss/8.4.19
  1035 + dev: true
  1036 +
1027 /postcss-selector-parser/6.0.10: 1037 /postcss-selector-parser/6.0.10:
1028 resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==} 1038 resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==}
1029 engines: {node: '>=4'} 1039 engines: {node: '>=4'}
@@ -1044,6 +1054,22 @@ packages: @@ -1044,6 +1054,22 @@ packages:
1044 resolution: {integrity: sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==} 1054 resolution: {integrity: sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==}
1045 dev: true 1055 dev: true
1046 1056
  1057 + /rollup/2.79.1:
  1058 + resolution: {integrity: sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==}
  1059 + engines: {node: '>=10.0.0'}
  1060 + hasBin: true
  1061 + optionalDependencies:
  1062 + fsevents: 2.3.2
  1063 + dev: true
  1064 +
  1065 + /rollup/3.5.0:
  1066 + resolution: {integrity: sha512-TYu2L+TGhmNsXCtByont89u+ATQLcDy6A+++PwLXYunRtOm7XnaD+65s1pvewaOxMYR0eOkMXn9/i0saBxxpnQ==}
  1067 + engines: {node: '>=14.18.0', npm: '>=8.0.0'}
  1068 + hasBin: true
  1069 + optionalDependencies:
  1070 + fsevents: 2.3.2
  1071 + dev: true
  1072 +
1047 /rxjs/7.5.7: 1073 /rxjs/7.5.7:
1048 resolution: {integrity: sha512-z9MzKh/UcOqB3i20H6rtrlaE/CgjLOvheWK/9ILrbhROGTweAi1BaFsTT9FbwZi5Trr1qNRs+MXkhmR06awzQA==} 1074 resolution: {integrity: sha512-z9MzKh/UcOqB3i20H6rtrlaE/CgjLOvheWK/9ILrbhROGTweAi1BaFsTT9FbwZi5Trr1qNRs+MXkhmR06awzQA==}
1049 dependencies: 1075 dependencies:
@@ -7243,18 +7269,6 @@ packages: @@ -7243,18 +7269,6 @@ packages:
7243 postcss: registry.npmmirror.com/postcss/8.4.19 7269 postcss: registry.npmmirror.com/postcss/8.4.19
7244 dev: true 7270 dev: true
7245 7271
7246 - registry.npmmirror.com/postcss-scss/4.0.5_postcss@8.4.19:  
7247 - resolution: {integrity: sha512-F7xpB6TrXyqUh3GKdyB4Gkp3QL3DDW1+uI+gxx/oJnUt/qXI4trj5OGlp9rOKdoABGULuqtqeG+3HEVQk4DjmA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/postcss-scss/-/postcss-scss-4.0.5.tgz}  
7248 - id: registry.npmmirror.com/postcss-scss/4.0.5  
7249 - name: postcss-scss  
7250 - version: 4.0.5  
7251 - engines: {node: '>=12.0'}  
7252 - peerDependencies:  
7253 - postcss: ^8.3.3  
7254 - dependencies:  
7255 - postcss: registry.npmmirror.com/postcss/8.4.19  
7256 - dev: true  
7257 -  
7258 registry.npmmirror.com/postcss-selector-parser/6.0.10: 7272 registry.npmmirror.com/postcss-selector-parser/6.0.10:
7259 resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz} 7273 resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz}
7260 name: postcss-selector-parser 7274 name: postcss-selector-parser
@@ -7712,26 +7726,6 @@ packages: @@ -7712,26 +7726,6 @@ packages:
7712 - supports-color 7726 - supports-color
7713 dev: true 7727 dev: true
7714 7728
7715 - registry.npmmirror.com/rollup/2.79.1:  
7716 - resolution: {integrity: sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/rollup/-/rollup-2.79.1.tgz}  
7717 - name: rollup  
7718 - version: 2.79.1  
7719 - engines: {node: '>=10.0.0'}  
7720 - hasBin: true  
7721 - optionalDependencies:  
7722 - fsevents: 2.3.2  
7723 - dev: true  
7724 -  
7725 - registry.npmmirror.com/rollup/3.4.0:  
7726 - resolution: {integrity: sha512-4g8ZrEFK7UbDvy3JF+d5bLiC8UKkS3n/27/cnVeESwB1LVPl6MoPL32/6+SCQ1vHTp6Mvp2veIHtwELhi+uXEw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/rollup/-/rollup-3.4.0.tgz}  
7727 - name: rollup  
7728 - version: 3.4.0  
7729 - engines: {node: '>=14.18.0', npm: '>=8.0.0'}  
7730 - hasBin: true  
7731 - optionalDependencies:  
7732 - fsevents: 2.3.2  
7733 - dev: true  
7734 -  
7735 registry.npmmirror.com/run-async/2.4.1: 7729 registry.npmmirror.com/run-async/2.4.1:
7736 resolution: {integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/run-async/-/run-async-2.4.1.tgz} 7730 resolution: {integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/run-async/-/run-async-2.4.1.tgz}
7737 name: run-async 7731 name: run-async
@@ -8835,7 +8829,7 @@ packages: @@ -8835,7 +8829,7 @@ packages:
8835 '@rollup/pluginutils': registry.npmmirror.com/@rollup/pluginutils/4.2.1 8829 '@rollup/pluginutils': registry.npmmirror.com/@rollup/pluginutils/4.2.1
8836 '@types/eslint': registry.npmmirror.com/@types/eslint/8.4.10 8830 '@types/eslint': registry.npmmirror.com/@types/eslint/8.4.10
8837 eslint: registry.npmmirror.com/eslint/8.28.0 8831 eslint: registry.npmmirror.com/eslint/8.28.0
8838 - rollup: registry.npmmirror.com/rollup/2.79.1 8832 + rollup: 2.79.1
8839 vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i 8833 vite: registry.npmmirror.com/vite/3.2.4_ajklay5k626t46b6fyghkbup3i
8840 dev: true 8834 dev: true
8841 8835
@@ -8996,7 +8990,7 @@ packages: @@ -8996,7 +8990,7 @@ packages:
8996 esbuild: registry.npmmirror.com/esbuild/0.15.14 8990 esbuild: registry.npmmirror.com/esbuild/0.15.14
8997 postcss: registry.npmmirror.com/postcss/8.4.19 8991 postcss: registry.npmmirror.com/postcss/8.4.19
8998 resolve: registry.npmmirror.com/resolve/1.22.1 8992 resolve: registry.npmmirror.com/resolve/1.22.1
8999 - rollup: registry.npmmirror.com/rollup/2.79.1 8993 + rollup: 2.79.1
9000 sass: registry.npmmirror.com/sass/1.56.1 8994 sass: registry.npmmirror.com/sass/1.56.1
9001 optionalDependencies: 8995 optionalDependencies:
9002 fsevents: 2.3.2 8996 fsevents: 2.3.2
@@ -9253,7 +9247,7 @@ packages: @@ -9253,7 +9247,7 @@ packages:
9253 version: 0.3.2 9247 version: 0.3.2
9254 dependencies: 9248 dependencies:
9255 eslint-visitor-keys: 1.3.0 9249 eslint-visitor-keys: 1.3.0
9256 - lodash: registry.npmmirror.com/lodash/4.17.21 9250 + lodash: 4.17.21
9257 yaml: 1.10.2 9251 yaml: 1.10.2
9258 dev: true 9252 dev: true
9259 9253
yudao-ui-admin-vue3/src/components/Descriptions/src/Descriptions.vue
@@ -115,7 +115,9 @@ const toggleClick = () =&gt; { @@ -115,7 +115,9 @@ const toggleClick = () =&gt; {
115 115
116 <template #default> 116 <template #default>
117 <slot v-if="item.dateFormat"> 117 <slot v-if="item.dateFormat">
118 - {{ dayjs(data[item.field]).format(item.dateFormat) }} 118 + {{
  119 + data[item.field] !== null ? dayjs(data[item.field]).format(item.dateFormat) : ''
  120 + }}
119 </slot> 121 </slot>
120 <slot v-else-if="item.dictType"> 122 <slot v-else-if="item.dictType">
121 <DictTag :type="item.dictType" :value="data[item.field] + ''" /> 123 <DictTag :type="item.dictType" :value="data[item.field] + ''" />
yudao-ui-admin-vue3/src/hooks/web/useVxeCrudSchemas.ts
@@ -22,6 +22,7 @@ export type VxeCrudSchema = { @@ -22,6 +22,7 @@ export type VxeCrudSchema = {
22 actionTitle?: string // 操作栏标题 默认为操作 22 actionTitle?: string // 操作栏标题 默认为操作
23 actionWidth?: string // 操作栏插槽宽度,一般2个字带图标 text 类型按钮 50-70 23 actionWidth?: string // 操作栏插槽宽度,一般2个字带图标 text 类型按钮 50-70
24 columns: VxeCrudColumns[] 24 columns: VxeCrudColumns[]
  25 + searchSpan?: number
25 } 26 }
26 type VxeCrudColumns = Omit<VxeTableColumn, 'children'> & { 27 type VxeCrudColumns = Omit<VxeTableColumn, 'children'> & {
27 field: string // 字段名 28 field: string // 字段名
@@ -112,6 +113,8 @@ export const useVxeCrudSchemas = ( @@ -112,6 +113,8 @@ export const useVxeCrudSchemas = (
112 // 过滤 Search 结构 113 // 过滤 Search 结构
113 const filterSearchSchema = (crudSchema: VxeCrudSchema): VxeFormItemProps[] => { 114 const filterSearchSchema = (crudSchema: VxeCrudSchema): VxeFormItemProps[] => {
114 const { t } = useI18n() 115 const { t } = useI18n()
  116 + const span = crudSchema.searchSpan ? crudSchema.searchSpan : 6
  117 + const spanLength = 24 / span
115 const searchSchema: VxeFormItemProps[] = [] 118 const searchSchema: VxeFormItemProps[] = []
116 eachTree(crudSchema.columns, (schemaItem: VxeCrudColumns) => { 119 eachTree(crudSchema.columns, (schemaItem: VxeCrudColumns) => {
117 // 判断是否显示 120 // 判断是否显示
@@ -144,13 +147,14 @@ const filterSearchSchema = (crudSchema: VxeCrudSchema): VxeFormItemProps[] =&gt; { @@ -144,13 +147,14 @@ const filterSearchSchema = (crudSchema: VxeCrudSchema): VxeFormItemProps[] =&gt; {
144 props: { placeholder: t('common.selectText') } 147 props: { placeholder: t('common.selectText') }
145 } 148 }
146 } 149 }
  150 +
147 const searchSchemaItem = { 151 const searchSchemaItem = {
148 // 默认为 input 152 // 默认为 input
149 - folding: searchSchema.length > 3, 153 + folding: searchSchema.length > spanLength,
150 itemRender: schemaItem.itemRender ? schemaItem.itemRender : itemRender, 154 itemRender: schemaItem.itemRender ? schemaItem.itemRender : itemRender,
151 field: schemaItem.field, 155 field: schemaItem.field,
152 title: schemaItem.search?.title || schemaItem.title, 156 title: schemaItem.search?.title || schemaItem.title,
153 - span: 6 157 + span: span
154 } 158 }
155 159
156 searchSchema.push(searchSchemaItem) 160 searchSchema.push(searchSchemaItem)
@@ -161,7 +165,7 @@ const filterSearchSchema = (crudSchema: VxeCrudSchema): VxeFormItemProps[] =&gt; { @@ -161,7 +165,7 @@ const filterSearchSchema = (crudSchema: VxeCrudSchema): VxeFormItemProps[] =&gt; {
161 const buttons: VxeFormItemProps = { 165 const buttons: VxeFormItemProps = {
162 span: 24, 166 span: 24,
163 align: 'center', 167 align: 'center',
164 - collapseNode: searchSchema.length > 4, 168 + collapseNode: searchSchema.length > spanLength + 1,
165 itemRender: { 169 itemRender: {
166 name: '$buttons', 170 name: '$buttons',
167 children: [ 171 children: [
@@ -181,11 +185,13 @@ const filterTableSchema = (crudSchema: VxeCrudSchema): VxeGridPropTypes.Columns @@ -181,11 +185,13 @@ const filterTableSchema = (crudSchema: VxeCrudSchema): VxeGridPropTypes.Columns
181 const tableSchema: VxeGridPropTypes.Columns = [] 185 const tableSchema: VxeGridPropTypes.Columns = []
182 // 主键ID 186 // 主键ID
183 if (crudSchema.primaryKey && crudSchema.primaryType) { 187 if (crudSchema.primaryKey && crudSchema.primaryType) {
  188 + const primaryWidth =
  189 + (crudSchema.primaryTitle ? crudSchema.primaryTitle : t('common.index')).length * 20 + 'px'
184 const tableSchemaItem = { 190 const tableSchemaItem = {
185 title: crudSchema.primaryTitle ? crudSchema.primaryTitle : t('common.index'), 191 title: crudSchema.primaryTitle ? crudSchema.primaryTitle : t('common.index'),
186 field: crudSchema.primaryKey, 192 field: crudSchema.primaryKey,
187 type: crudSchema.primaryType ? crudSchema.primaryType : null, 193 type: crudSchema.primaryType ? crudSchema.primaryType : null,
188 - width: '80px' 194 + width: primaryWidth
189 } 195 }
190 tableSchema.push(tableSchemaItem) 196 tableSchema.push(tableSchemaItem)
191 } 197 }
yudao-ui-admin-vue3/src/plugins/vxeTable/index.ts
@@ -150,7 +150,11 @@ VXETable.setup({ @@ -150,7 +150,11 @@ VXETable.setup({
150 VXETable.formats.mixin({ 150 VXETable.formats.mixin({
151 // 格式日期,默认 yyyy-MM-dd HH:mm:ss 151 // 格式日期,默认 yyyy-MM-dd HH:mm:ss
152 formatDate({ cellValue }, format) { 152 formatDate({ cellValue }, format) {
153 - return XEUtils.toDateString(cellValue, format || 'yyyy-MM-dd HH:mm:ss') 153 + if (cellValue != null) {
  154 + return XEUtils.toDateString(cellValue, format || 'yyyy-MM-dd HH:mm:ss')
  155 + } else {
  156 + return ''
  157 + }
154 }, 158 },
155 // 四舍五入金额,每隔3位逗号分隔,默认2位数 159 // 四舍五入金额,每隔3位逗号分隔,默认2位数
156 formatAmount({ cellValue }, digits = 2) { 160 formatAmount({ cellValue }, digits = 2) {
yudao-ui-admin-vue3/src/views/infra/codegen/index.vue
@@ -18,7 +18,7 @@ @@ -18,7 +18,7 @@
18 preIcon="ep:view" 18 preIcon="ep:view"
19 :title="t('action.preview')" 19 :title="t('action.preview')"
20 v-hasPermi="['infra:codegen:query']" 20 v-hasPermi="['infra:codegen:query']"
21 - @click="handlePreview(row.id)" 21 + @click="handlePreview(row)"
22 /> 22 />
23 <!-- 操作:编辑 --> 23 <!-- 操作:编辑 -->
24 <XTextButton 24 <XTextButton
@@ -39,14 +39,14 @@ @@ -39,14 +39,14 @@
39 preIcon="ep:refresh" 39 preIcon="ep:refresh"
40 :title="t('action.sync')" 40 :title="t('action.sync')"
41 v-hasPermi="['infra:codegen:update']" 41 v-hasPermi="['infra:codegen:update']"
42 - @click="handleSynchDb(row.id)" 42 + @click="handleSynchDb(row)"
43 /> 43 />
44 <!-- 操作:生成 --> 44 <!-- 操作:生成 -->
45 <XTextButton 45 <XTextButton
46 preIcon="ep:download" 46 preIcon="ep:download"
47 :title="t('action.generate')" 47 :title="t('action.generate')"
48 v-hasPermi="['infra:codegen:download']" 48 v-hasPermi="['infra:codegen:download']"
49 - @click="handleGenTable(row.id)" 49 + @click="handleGenTable(row)"
50 /> 50 />
51 </template> 51 </template>
52 </vxe-grid> 52 </vxe-grid>
@@ -86,7 +86,6 @@ const openImportTable = () =&gt; { @@ -86,7 +86,6 @@ const openImportTable = () =&gt; {
86 importRef.value.show() 86 importRef.value.show()
87 } 87 }
88 // 预览操作 88 // 预览操作
89 -// TODO 星语:点击后报错  
90 const previewRef = ref() 89 const previewRef = ref()
91 const handlePreview = (row: CodegenTableVO) => { 90 const handlePreview = (row: CodegenTableVO) => {
92 previewRef.value.show(row) 91 previewRef.value.show(row)
yudao-ui-admin-vue3/src/views/infra/fileList/index.vue
@@ -85,7 +85,6 @@ import { useVxeGrid } from &#39;@/hooks/web/useVxeGrid&#39; @@ -85,7 +85,6 @@ import { useVxeGrid } from &#39;@/hooks/web/useVxeGrid&#39;
85 import { VxeGridInstance } from 'vxe-table' 85 import { VxeGridInstance } from 'vxe-table'
86 import { ElUpload, ElImage, UploadInstance, UploadRawFile } from 'element-plus' 86 import { ElUpload, ElImage, UploadInstance, UploadRawFile } from 'element-plus'
87 // 业务相关的 import 87 // 业务相关的 import
88 -// TODO 星语:貌似这个界面打开 404  
89 import { allSchemas } from './fileList.data' 88 import { allSchemas } from './fileList.data'
90 import * as FileApi from '@/api/infra/fileList' 89 import * as FileApi from '@/api/infra/fileList'
91 import { getAccessToken, getTenantId } from '@/utils/auth' 90 import { getAccessToken, getTenantId } from '@/utils/auth'
yudao-ui-admin-vue3/src/views/system/dept/dept.data.ts
@@ -12,8 +12,8 @@ export const rules = reactive({ @@ -12,8 +12,8 @@ export const rules = reactive({
12 email: [required], 12 email: [required],
13 phone: [ 13 phone: [
14 { 14 {
15 - pattern:  
16 - /^(?:(?:\+|00)86)?1(?:(?:3[\d])|(?:4[5-79])|(?:5[0-35-9])|(?:6[5-7])|(?:7[0-8])|(?:8[\d])|(?:9[189]))\d{8}$/, // TODO @星语:前端只校验长度,格式交给后端;因为号码格式不断在变的 15 + min: 11,
  16 + max: 11,
17 trigger: 'blur', 17 trigger: 'blur',
18 message: '请输入正确的手机号码' 18 message: '请输入正确的手机号码'
19 } 19 }
yudao-ui-admin-vue3/src/views/system/dict/dict.data.ts
@@ -17,6 +17,7 @@ export const crudSchemas = reactive&lt;VxeCrudSchema&gt;({ @@ -17,6 +17,7 @@ export const crudSchemas = reactive&lt;VxeCrudSchema&gt;({
17 primaryType: null, 17 primaryType: null,
18 action: true, 18 action: true,
19 actionWidth: '140px', 19 actionWidth: '140px',
  20 + searchSpan: 12,
20 columns: [ 21 columns: [
21 { 22 {
22 title: '字典类型', 23 title: '字典类型',
yudao-ui-admin-vue3/src/views/system/dict/dict.type.ts
@@ -7,8 +7,7 @@ const { t } = useI18n() // 国际化 @@ -7,8 +7,7 @@ const { t } = useI18n() // 国际化
7 7
8 // 表单校验 8 // 表单校验
9 export const dictTypeRules = reactive({ 9 export const dictTypeRules = reactive({
10 - name: [required],  
11 - type: [required] 10 + name: [required]
12 }) 11 })
13 // 新增 + 修改 12 // 新增 + 修改
14 const crudSchemas = reactive<VxeCrudSchema>({ 13 const crudSchemas = reactive<VxeCrudSchema>({
@@ -16,6 +15,7 @@ const crudSchemas = reactive&lt;VxeCrudSchema&gt;({ @@ -16,6 +15,7 @@ const crudSchemas = reactive&lt;VxeCrudSchema&gt;({
16 primaryType: null, 15 primaryType: null,
17 action: true, 16 action: true,
18 actionWidth: '140px', 17 actionWidth: '140px',
  18 + searchSpan: 12,
19 columns: [ 19 columns: [
20 { 20 {
21 title: '字典名称', 21 title: '字典名称',
yudao-ui-admin-vue3/src/views/system/dict/index.vue
1 <template> 1 <template>
2 <div class="flex"> 2 <div class="flex">
3 <!-- ====== 字典分类 ====== --> 3 <!-- ====== 字典分类 ====== -->
4 - <!-- TODO 星语:筛选框很小 -->  
5 <el-card class="w-1/2 dict" :gutter="12" shadow="always"> 4 <el-card class="w-1/2 dict" :gutter="12" shadow="always">
6 <template #header> 5 <template #header>
7 <div class="card-header"> 6 <div class="card-header">
@@ -94,7 +93,7 @@ @@ -94,7 +93,7 @@
94 ref="typeFormRef" 93 ref="typeFormRef"
95 > 94 >
96 <template #type> 95 <template #type>
97 - <template v-if="dictTypeValue"> 96 + <template v-if="actionType == 'typeUpdate'">
98 <el-tag>{{ dictTypeValue }}</el-tag> 97 <el-tag>{{ dictTypeValue }}</el-tag>
99 </template> 98 </template>
100 <template v-else><el-input v-model="dictTypeValue" /> </template> 99 <template v-else><el-input v-model="dictTypeValue" /> </template>
@@ -232,7 +231,7 @@ const submitTypeForm = async () =&gt; { @@ -232,7 +231,7 @@ const submitTypeForm = async () =&gt; {
232 const elForm = unref(typeFormRef)?.getElFormRef() 231 const elForm = unref(typeFormRef)?.getElFormRef()
233 if (!elForm) return 232 if (!elForm) return
234 elForm.validate(async (valid) => { 233 elForm.validate(async (valid) => {
235 - if (valid) { 234 + if (valid && dictTypeValue.value != '') {
236 actionLoading.value = true 235 actionLoading.value = true
237 // 提交请求 236 // 提交请求
238 try { 237 try {
yudao-ui-admin-vue3/src/views/system/sensitiveWord/index.vue
@@ -75,7 +75,18 @@ @@ -75,7 +75,18 @@
75 v-if="actionType === 'detail'" 75 v-if="actionType === 'detail'"
76 :schema="allSchemas.detailSchema" 76 :schema="allSchemas.detailSchema"
77 :data="detailData" 77 :data="detailData"
78 - /> 78 + >
  79 + <template #tags="{ row }">
  80 + <el-tag
  81 + :disable-transitions="true"
  82 + :key="index"
  83 + v-for="(tag, index) in row.tags"
  84 + :index="index"
  85 + >
  86 + {{ tag }}
  87 + </el-tag>
  88 + </template>
  89 + </Descriptions>
79 <!-- 操作按钮 --> 90 <!-- 操作按钮 -->
80 <template #footer> 91 <template #footer>
81 <!-- 按钮:保存 --> 92 <!-- 按钮:保存 -->
yudao-ui-admin-vue3/src/views/system/sensitiveWord/sensitiveWord.data.ts
@@ -15,7 +15,7 @@ export const rules = reactive({ @@ -15,7 +15,7 @@ export const rules = reactive({
15 const crudSchemas = reactive<VxeCrudSchema>({ 15 const crudSchemas = reactive<VxeCrudSchema>({
16 primaryKey: 'id', 16 primaryKey: 'id',
17 primaryType: 'seq', 17 primaryType: 'seq',
18 - primaryTitle: '敏感词编号', // TODO 星语:如果长度超过 4 个字符,会导致表格列宽度不够,需要优化 18 + primaryTitle: '敏感词编号',
19 action: true, 19 action: true,
20 columns: [ 20 columns: [
21 { 21 {
@@ -25,7 +25,7 @@ const crudSchemas = reactive&lt;VxeCrudSchema&gt;({ @@ -25,7 +25,7 @@ const crudSchemas = reactive&lt;VxeCrudSchema&gt;({
25 }, 25 },
26 { 26 {
27 title: '标签', 27 title: '标签',
28 - field: 'tags', // TODO 星语:如果是数组的话,是不是使用 el tag 展示呀? 28 + field: 'tags',
29 table: { 29 table: {
30 slots: { 30 slots: {
31 default: 'tags_default' 31 default: 'tags_default'
yudao-ui-admin-vue3/src/views/system/tenant/tenant.data.ts
@@ -122,7 +122,7 @@ const crudSchemas = reactive&lt;VxeCrudSchema&gt;({ @@ -122,7 +122,7 @@ const crudSchemas = reactive&lt;VxeCrudSchema&gt;({
122 { 122 {
123 title: t('table.createTime'), 123 title: t('table.createTime'),
124 field: 'createTime', 124 field: 'createTime',
125 - formatter: 'formatDate', // TODO 星语:要不给 formatter = formatDate 的时候,设置一个它的默认宽度,避免缩进 125 + formatter: 'formatDate',
126 isForm: false 126 isForm: false
127 } 127 }
128 ] 128 ]
yudao-ui-admin-vue3/src/views/system/tenantPackage/index.vue
@@ -25,7 +25,7 @@ @@ -25,7 +25,7 @@
25 ref="formRef" 25 ref="formRef"
26 > 26 >
27 <template #menuIds> 27 <template #menuIds>
28 - <el-card class="box-card"> 28 + <el-card class="w-120">
29 <template #header> 29 <template #header>
30 <div class="card-header"> 30 <div class="card-header">
31 全选/全不选: 31 全选/全不选:
yudao-ui-admin-vue3/src/views/system/tenantPackage/tenantPackage.data.ts
@@ -36,7 +36,7 @@ const crudSchemas = reactive&lt;VxeCrudSchema&gt;({ @@ -36,7 +36,7 @@ const crudSchemas = reactive&lt;VxeCrudSchema&gt;({
36 }, 36 },
37 { 37 {
38 title: '菜单权限', 38 title: '菜单权限',
39 - field: 'menuIds', // TODO 星语:菜单权限,表单可以搞大点哇? 39 + field: 'menuIds',
40 isTable: false 40 isTable: false
41 }, 41 },
42 { 42 {
yudao-ui-admin-vue3/src/views/system/user/index.vue
@@ -142,11 +142,14 @@ @@ -142,11 +142,14 @@
142 <span>{{ row.dept?.name }}</span> 142 <span>{{ row.dept?.name }}</span>
143 </template> 143 </template>
144 <template #postIds="{ row }"> 144 <template #postIds="{ row }">
145 - <el-tag v-for="(post, index) in row.postIds" :key="index" index="">  
146 - <template v-for="postObj in postOptions">  
147 - {{ post === postObj.id ? postObj.name : '' }}  
148 - </template>  
149 - </el-tag> 145 + <template v-if="row.postIds !== ''">
  146 + <el-tag v-for="(post, index) in row.postIds" :key="index" index="">
  147 + <template v-for="postObj in postOptions">
  148 + {{ post === postObj.id ? postObj.name : '' }}
  149 + </template>
  150 + </el-tag>
  151 + </template>
  152 + <template v-else> </template>
150 </template> 153 </template>
151 </Descriptions> 154 </Descriptions>
152 <!-- 操作按钮 --> 155 <!-- 操作按钮 -->
@@ -379,7 +382,7 @@ const handleCreate = async () =&gt; { @@ -379,7 +382,7 @@ const handleCreate = async () =&gt; {
379 382
380 // 修改操作 383 // 修改操作
381 const handleUpdate = async (rowId: number) => { 384 const handleUpdate = async (rowId: number) => {
382 - setDialogTile('update') // TODO @星语:有警告 385 + setDialogTile('update')
383 await nextTick() 386 await nextTick()
384 unref(formRef)?.delSchema('username') 387 unref(formRef)?.delSchema('username')
385 unref(formRef)?.delSchema('password') 388 unref(formRef)?.delSchema('password')
yudao-ui-admin-vue3/src/views/system/user/user.data.ts
@@ -13,8 +13,8 @@ export const rules = reactive({ @@ -13,8 +13,8 @@ export const rules = reactive({
13 status: [required], 13 status: [required],
14 mobile: [ 14 mobile: [
15 { 15 {
16 - pattern:  
17 - /^(?:(?:\+|00)86)?1(?:(?:3[\d])|(?:4[5-79])|(?:5[0-35-9])|(?:6[5-7])|(?:7[0-8])|(?:8[\d])|(?:9[189]))\d{8}$/, // TODO @星语:前端只校验长度,格式交给后端;因为号码格式不断在变的 16 + min: 11,
  17 + max: 11,
18 trigger: 'blur', 18 trigger: 'blur',
19 message: '请输入正确的手机号码' 19 message: '请输入正确的手机号码'
20 } 20 }
@@ -57,12 +57,12 @@ const crudSchemas = reactive&lt;VxeCrudSchema&gt;({ @@ -57,12 +57,12 @@ const crudSchemas = reactive&lt;VxeCrudSchema&gt;({
57 }, 57 },
58 { 58 {
59 title: '部门', 59 title: '部门',
60 - field: 'deptId', // TODO 星语:详情的部门没展示 60 + field: 'deptId',
61 isTable: false 61 isTable: false
62 }, 62 },
63 { 63 {
64 title: '岗位', 64 title: '岗位',
65 - field: 'postIds', // TODO 星语:岗位为空的时候,要不要不展示 65 + field: 'postIds',
66 isTable: false 66 isTable: false
67 }, 67 },
68 { 68 {
@@ -75,7 +75,7 @@ const crudSchemas = reactive&lt;VxeCrudSchema&gt;({ @@ -75,7 +75,7 @@ const crudSchemas = reactive&lt;VxeCrudSchema&gt;({
75 { 75 {
76 title: '最后登录时间', 76 title: '最后登录时间',
77 field: 'loginDate', 77 field: 'loginDate',
78 - formatter: 'formatDate', // TODO 星语:未登录的时候,不要展示 Invalid Date 78 + formatter: 'formatDate',
79 isForm: false 79 isForm: false
80 }, 80 },
81 { 81 {