Commit bef3511c6e784d1fcb2032a175647545bb79b874
Committed by
Gitee
!291 升级 vue2 && 完善 vue3 vxe demo
Merge pull request !291 from xingyu/dev
Showing
136 changed files
with
4252 additions
and
4528 deletions
Too many changes.
To preserve performance only 100 of 136 files are displayed.
yudao-module-infra/yudao-module-infra-biz/src/main/resources/codegen/vue/views/index.vue.vm
| @@ -67,13 +67,13 @@ | @@ -67,13 +67,13 @@ | ||
| 67 | #set ($comment=$column.columnComment) | 67 | #set ($comment=$column.columnComment) |
| 68 | #if ($column.javaType == "Date")## 时间类型 | 68 | #if ($column.javaType == "Date")## 时间类型 |
| 69 | <el-table-column label="${comment}" align="center" prop="${javaField}" width="180"> | 69 | <el-table-column label="${comment}" align="center" prop="${javaField}" width="180"> |
| 70 | - <template slot-scope="scope"> | 70 | + <template v-slot="scope"> |
| 71 | <span>{{ parseTime(scope.row.${javaField}) }}</span> | 71 | <span>{{ parseTime(scope.row.${javaField}) }}</span> |
| 72 | </template> | 72 | </template> |
| 73 | </el-table-column> | 73 | </el-table-column> |
| 74 | #elseif("" != $column.dictType)## 数据字典 | 74 | #elseif("" != $column.dictType)## 数据字典 |
| 75 | <el-table-column label="${comment}" align="center" prop="${javaField}"> | 75 | <el-table-column label="${comment}" align="center" prop="${javaField}"> |
| 76 | - <template slot-scope="scope"> | 76 | + <template v-slot="scope"> |
| 77 | <dict-tag :type="DICT_TYPE.$dictType.toUpperCase()" :value="scope.row.${column.javaField}" /> | 77 | <dict-tag :type="DICT_TYPE.$dictType.toUpperCase()" :value="scope.row.${column.javaField}" /> |
| 78 | </template> | 78 | </template> |
| 79 | </el-table-column> | 79 | </el-table-column> |
| @@ -83,7 +83,7 @@ | @@ -83,7 +83,7 @@ | ||
| 83 | #end | 83 | #end |
| 84 | #end | 84 | #end |
| 85 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> | 85 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
| 86 | - <template slot-scope="scope"> | 86 | + <template v-slot="scope"> |
| 87 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" | 87 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" |
| 88 | v-hasPermi="['${permissionPrefix}:update']">修改</el-button> | 88 | v-hasPermi="['${permissionPrefix}:update']">修改</el-button> |
| 89 | <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" | 89 | <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" |
yudao-module-infra/yudao-module-infra-biz/src/main/resources/codegen/vue3/views/index.vue.vm
| @@ -97,17 +97,20 @@ getList() | @@ -97,17 +97,20 @@ getList() | ||
| 97 | <ContentWrap> | 97 | <ContentWrap> |
| 98 | <!-- 操作工具栏 --> | 98 | <!-- 操作工具栏 --> |
| 99 | <div class="mb-10px"> | 99 | <div class="mb-10px"> |
| 100 | - <el-button type="primary" v-hasPermi="['${permissionPrefix}:create']" @click="handleCreate"> | ||
| 101 | - <Icon icon="ep:zoom-in" class="mr-5px" /> {{ t('action.add') }} | ||
| 102 | - </el-button> | ||
| 103 | - <el-button | 100 | + <XButton |
| 101 | + type="primary" | ||
| 102 | + preIcon="ep:zoom-in" | ||
| 103 | + :title="t('action.add')" | ||
| 104 | + v-hasPermi="['${permissionPrefix}:create']" | ||
| 105 | + @click="handleCreate()" | ||
| 106 | + /> | ||
| 107 | + <XButton | ||
| 104 | type="warning" | 108 | type="warning" |
| 109 | + preIcon="ep:download" | ||
| 110 | + :title="t('action.export')" | ||
| 105 | v-hasPermi="['${permissionPrefix}:export']" | 111 | v-hasPermi="['${permissionPrefix}:export']" |
| 106 | - :loading="tableObject.exportLoading" | ||
| 107 | @click="exportList('数据.xls')" | 112 | @click="exportList('数据.xls')" |
| 108 | - > | ||
| 109 | - <Icon icon="ep:download" class="mr-5px" /> {{ t('action.export') }} | ||
| 110 | - </el-button> | 113 | + /> |
| 111 | </div> | 114 | </div> |
| 112 | <!-- 列表 --> | 115 | <!-- 列表 --> |
| 113 | <Table | 116 | <Table |
| @@ -137,30 +140,30 @@ getList() | @@ -137,30 +140,30 @@ getList() | ||
| 137 | #end | 140 | #end |
| 138 | #end | 141 | #end |
| 139 | <template #action="{ row }"> | 142 | <template #action="{ row }"> |
| 140 | - <el-button | 143 | + <XButton |
| 141 | link | 144 | link |
| 142 | type="primary" | 145 | type="primary" |
| 146 | + preIcon="ep:edit" | ||
| 147 | + :title="t('action.edit')" | ||
| 143 | v-hasPermi="['${permissionPrefix}:update']" | 148 | v-hasPermi="['${permissionPrefix}:update']" |
| 144 | - @click="handleUpdate(row)" | ||
| 145 | - > | ||
| 146 | - <Icon icon="ep:edit" class="mr-1px" /> {{ t('action.edit') }} | ||
| 147 | - </el-button> | ||
| 148 | - <el-button | 149 | + @click="handleUpdate(row.id)" |
| 150 | + /> | ||
| 151 | + <XButton | ||
| 149 | link | 152 | link |
| 150 | type="primary" | 153 | type="primary" |
| 154 | + preIcon="ep:view" | ||
| 155 | + :title="t('action.detail')" | ||
| 151 | v-hasPermi="['${permissionPrefix}:update']" | 156 | v-hasPermi="['${permissionPrefix}:update']" |
| 152 | @click="handleDetail(row)" | 157 | @click="handleDetail(row)" |
| 153 | - > | ||
| 154 | - <Icon icon="ep:view" class="mr-1px" /> {{ t('action.detail') }} | ||
| 155 | - </el-button> | ||
| 156 | - <el-button | 158 | + /> |
| 159 | + <XButton | ||
| 157 | link | 160 | link |
| 158 | type="primary" | 161 | type="primary" |
| 162 | + preIcon="ep:delete" | ||
| 163 | + :title="t('action.del')" | ||
| 159 | v-hasPermi="['${permissionPrefix}:delete']" | 164 | v-hasPermi="['${permissionPrefix}:delete']" |
| 160 | - @click="delList(row.id, false)" | ||
| 161 | - > | ||
| 162 | - <Icon icon="ep:delete" class="mr-1px" /> {{ t('action.del') }} | ||
| 163 | - </el-button> | 165 | + @click="handleDelete(row.id)" |
| 166 | + /> | ||
| 164 | </template> | 167 | </template> |
| 165 | </Table> | 168 | </Table> |
| 166 | </ContentWrap> | 169 | </ContentWrap> |
| @@ -196,15 +199,14 @@ getList() | @@ -196,15 +199,14 @@ getList() | ||
| 196 | </Descriptions> | 199 | </Descriptions> |
| 197 | <!-- 操作按钮 --> | 200 | <!-- 操作按钮 --> |
| 198 | <template #footer> | 201 | <template #footer> |
| 199 | - <el-button | 202 | + <XButton |
| 200 | v-if="['create', 'update'].includes(actionType)" | 203 | v-if="['create', 'update'].includes(actionType)" |
| 201 | - type="primary" | ||
| 202 | :loading="actionLoading" | 204 | :loading="actionLoading" |
| 205 | + :title="t('action.save')" | ||
| 206 | + type="primary" | ||
| 203 | @click="submitForm" | 207 | @click="submitForm" |
| 204 | - > | ||
| 205 | - {{ t('action.save') }} | ||
| 206 | - </el-button> | ||
| 207 | - <el-button @click="dialogVisible = false">{{ t('dialog.close') }}</el-button> | 208 | + /> |
| 209 | + <XButton :loading="actionLoading" :title="t('dialog.close')" @click="dialogVisible = false" /> | ||
| 208 | </template> | 210 | </template> |
| 209 | </Dialog> | 211 | </Dialog> |
| 210 | </template> | 212 | </template> |
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.1831", | 3 | + "version": "1.6.4.1841", |
| 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, |
| @@ -31,7 +31,7 @@ | @@ -31,7 +31,7 @@ | ||
| 31 | "@wangeditor/editor-for-vue": "^5.1.10", | 31 | "@wangeditor/editor-for-vue": "^5.1.10", |
| 32 | "@zxcvbn-ts/core": "^2.1.0", | 32 | "@zxcvbn-ts/core": "^2.1.0", |
| 33 | "animate.css": "^4.1.1", | 33 | "animate.css": "^4.1.1", |
| 34 | - "axios": "^0.27.2", | 34 | + "axios": "^1.1.3", |
| 35 | "crypto-js": "^4.1.1", | 35 | "crypto-js": "^4.1.1", |
| 36 | "dayjs": "^1.11.6", | 36 | "dayjs": "^1.11.6", |
| 37 | "echarts": "^5.4.0", | 37 | "echarts": "^5.4.0", |
| @@ -64,14 +64,14 @@ | @@ -64,14 +64,14 @@ | ||
| 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", |
| 66 | "@types/lodash-es": "^4.17.6", | 66 | "@types/lodash-es": "^4.17.6", |
| 67 | - "@types/node": "^18.8.0", | 67 | + "@types/node": "^18.11.9", |
| 68 | "@types/nprogress": "^0.2.0", | 68 | "@types/nprogress": "^0.2.0", |
| 69 | "@types/qrcode": "^1.5.0", | 69 | "@types/qrcode": "^1.5.0", |
| 70 | "@types/qs": "^6.9.7", | 70 | "@types/qs": "^6.9.7", |
| 71 | - "@typescript-eslint/eslint-plugin": "^5.42.0", | ||
| 72 | - "@typescript-eslint/parser": "^5.42.0", | 71 | + "@typescript-eslint/eslint-plugin": "^5.42.1", |
| 72 | + "@typescript-eslint/parser": "^5.42.1", | ||
| 73 | "@vitejs/plugin-vue": "^3.2.0", | 73 | "@vitejs/plugin-vue": "^3.2.0", |
| 74 | - "@vitejs/plugin-vue-jsx": "^2.1.0", | 74 | + "@vitejs/plugin-vue-jsx": "^2.1.1", |
| 75 | "autoprefixer": "^10.4.13", | 75 | "autoprefixer": "^10.4.13", |
| 76 | "eslint": "^8.27.0", | 76 | "eslint": "^8.27.0", |
| 77 | "eslint-config-prettier": "^8.5.0", | 77 | "eslint-config-prettier": "^8.5.0", |
| @@ -94,8 +94,8 @@ | @@ -94,8 +94,8 @@ | ||
| 94 | "stylelint-config-standard": "^29.0.0", | 94 | "stylelint-config-standard": "^29.0.0", |
| 95 | "stylelint-order": "^5.0.0", | 95 | "stylelint-order": "^5.0.0", |
| 96 | "typescript": "4.8.4", | 96 | "typescript": "4.8.4", |
| 97 | - "unplugin-vue-macros": "^0.16.0", | ||
| 98 | - "vite": "3.2.2", | 97 | + "unplugin-vue-macros": "^0.16.1", |
| 98 | + "vite": "3.2.3", | ||
| 99 | "vite-plugin-compression": "^0.5.1", | 99 | "vite-plugin-compression": "^0.5.1", |
| 100 | "vite-plugin-eslint": "^1.8.1", | 100 | "vite-plugin-eslint": "^1.8.1", |
| 101 | "vite-plugin-html": "^3.2.0", | 101 | "vite-plugin-html": "^3.2.0", |
yudao-ui-admin-vue3/pnpm-lock.yaml
| @@ -9,21 +9,21 @@ specifiers: | @@ -9,21 +9,21 @@ specifiers: | ||
| 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 |
| 11 | '@types/lodash-es': ^4.17.6 | 11 | '@types/lodash-es': ^4.17.6 |
| 12 | - '@types/node': ^18.8.0 | 12 | + '@types/node': ^18.11.9 |
| 13 | '@types/nprogress': ^0.2.0 | 13 | '@types/nprogress': ^0.2.0 |
| 14 | '@types/qrcode': ^1.5.0 | 14 | '@types/qrcode': ^1.5.0 |
| 15 | '@types/qs': ^6.9.7 | 15 | '@types/qs': ^6.9.7 |
| 16 | - '@typescript-eslint/eslint-plugin': ^5.42.0 | ||
| 17 | - '@typescript-eslint/parser': ^5.42.0 | 16 | + '@typescript-eslint/eslint-plugin': ^5.42.1 |
| 17 | + '@typescript-eslint/parser': ^5.42.1 | ||
| 18 | '@vitejs/plugin-vue': ^3.2.0 | 18 | '@vitejs/plugin-vue': ^3.2.0 |
| 19 | - '@vitejs/plugin-vue-jsx': ^2.1.0 | 19 | + '@vitejs/plugin-vue-jsx': ^2.1.1 |
| 20 | '@vueuse/core': ^9.4.0 | 20 | '@vueuse/core': ^9.4.0 |
| 21 | '@wangeditor/editor': ^5.1.22 | 21 | '@wangeditor/editor': ^5.1.22 |
| 22 | '@wangeditor/editor-for-vue': ^5.1.10 | 22 | '@wangeditor/editor-for-vue': ^5.1.10 |
| 23 | '@zxcvbn-ts/core': ^2.1.0 | 23 | '@zxcvbn-ts/core': ^2.1.0 |
| 24 | animate.css: ^4.1.1 | 24 | animate.css: ^4.1.1 |
| 25 | autoprefixer: ^10.4.13 | 25 | autoprefixer: ^10.4.13 |
| 26 | - axios: ^0.27.2 | 26 | + axios: ^1.1.3 |
| 27 | crypto-js: ^4.1.1 | 27 | crypto-js: ^4.1.1 |
| 28 | dayjs: ^1.11.6 | 28 | dayjs: ^1.11.6 |
| 29 | echarts: ^5.4.0 | 29 | echarts: ^5.4.0 |
| @@ -59,9 +59,9 @@ specifiers: | @@ -59,9 +59,9 @@ specifiers: | ||
| 59 | stylelint-config-standard: ^29.0.0 | 59 | stylelint-config-standard: ^29.0.0 |
| 60 | stylelint-order: ^5.0.0 | 60 | stylelint-order: ^5.0.0 |
| 61 | typescript: 4.8.4 | 61 | typescript: 4.8.4 |
| 62 | - unplugin-vue-macros: ^0.16.0 | 62 | + unplugin-vue-macros: ^0.16.1 |
| 63 | url: ^0.11.0 | 63 | url: ^0.11.0 |
| 64 | - vite: 3.2.2 | 64 | + vite: 3.2.3 |
| 65 | vite-plugin-compression: ^0.5.1 | 65 | vite-plugin-compression: ^0.5.1 |
| 66 | vite-plugin-eslint: ^1.8.1 | 66 | vite-plugin-eslint: ^1.8.1 |
| 67 | vite-plugin-html: ^3.2.0 | 67 | vite-plugin-html: ^3.2.0 |
| @@ -87,7 +87,7 @@ dependencies: | @@ -87,7 +87,7 @@ dependencies: | ||
| 87 | '@wangeditor/editor-for-vue': 5.1.12_wrllzy32b3ic46yjdgf3mkhqlq | 87 | '@wangeditor/editor-for-vue': 5.1.12_wrllzy32b3ic46yjdgf3mkhqlq |
| 88 | '@zxcvbn-ts/core': 2.1.0 | 88 | '@zxcvbn-ts/core': 2.1.0 |
| 89 | animate.css: 4.1.1 | 89 | animate.css: 4.1.1 |
| 90 | - axios: 0.27.2 | 90 | + axios: 1.1.3 |
| 91 | crypto-js: 4.1.1 | 91 | crypto-js: 4.1.1 |
| 92 | dayjs: 1.11.6 | 92 | dayjs: 1.11.6 |
| 93 | echarts: 5.4.0 | 93 | echarts: 5.4.0 |
| @@ -116,18 +116,18 @@ devDependencies: | @@ -116,18 +116,18 @@ devDependencies: | ||
| 116 | '@commitlint/cli': 17.2.0 | 116 | '@commitlint/cli': 17.2.0 |
| 117 | '@commitlint/config-conventional': 17.2.0 | 117 | '@commitlint/config-conventional': 17.2.0 |
| 118 | '@iconify/json': 2.1.134 | 118 | '@iconify/json': 2.1.134 |
| 119 | - '@intlify/vite-plugin-vue-i18n': 6.0.3_vite@3.2.2+vue-i18n@9.2.2 | 119 | + '@intlify/vite-plugin-vue-i18n': 6.0.3_vite@3.2.3+vue-i18n@9.2.2 |
| 120 | '@purge-icons/generated': 0.9.0 | 120 | '@purge-icons/generated': 0.9.0 |
| 121 | '@types/intro.js': 5.1.0 | 121 | '@types/intro.js': 5.1.0 |
| 122 | '@types/lodash-es': 4.17.6 | 122 | '@types/lodash-es': 4.17.6 |
| 123 | - '@types/node': 18.11.2 | 123 | + '@types/node': 18.11.9 |
| 124 | '@types/nprogress': 0.2.0 | 124 | '@types/nprogress': 0.2.0 |
| 125 | '@types/qrcode': 1.5.0 | 125 | '@types/qrcode': 1.5.0 |
| 126 | '@types/qs': 6.9.7 | 126 | '@types/qs': 6.9.7 |
| 127 | - '@typescript-eslint/eslint-plugin': 5.42.0_ofgjrzjuekeo7s3hdyz2yuzw34 | ||
| 128 | - '@typescript-eslint/parser': 5.42.0_rmayb2veg2btbq6mbmnyivgasy | ||
| 129 | - '@vitejs/plugin-vue': 3.2.0_vite@3.2.2+vue@3.2.41 | ||
| 130 | - '@vitejs/plugin-vue-jsx': 2.1.0_vite@3.2.2+vue@3.2.41 | 127 | + '@typescript-eslint/eslint-plugin': 5.42.1_2udltptbznfmezdozpdoa2aemq |
| 128 | + '@typescript-eslint/parser': 5.42.1_rmayb2veg2btbq6mbmnyivgasy | ||
| 129 | + '@vitejs/plugin-vue': 3.2.0_vite@3.2.3+vue@3.2.41 | ||
| 130 | + '@vitejs/plugin-vue-jsx': 2.1.1_vite@3.2.3+vue@3.2.41 | ||
| 131 | autoprefixer: 10.4.13_postcss@8.4.18 | 131 | autoprefixer: 10.4.13_postcss@8.4.18 |
| 132 | eslint: 8.27.0 | 132 | eslint: 8.27.0 |
| 133 | eslint-config-prettier: 8.5.0_eslint@8.27.0 | 133 | eslint-config-prettier: 8.5.0_eslint@8.27.0 |
| @@ -150,15 +150,15 @@ devDependencies: | @@ -150,15 +150,15 @@ devDependencies: | ||
| 150 | stylelint-config-standard: 29.0.0_stylelint@14.14.1 | 150 | stylelint-config-standard: 29.0.0_stylelint@14.14.1 |
| 151 | stylelint-order: 5.0.0_stylelint@14.14.1 | 151 | stylelint-order: 5.0.0_stylelint@14.14.1 |
| 152 | typescript: 4.8.4 | 152 | typescript: 4.8.4 |
| 153 | - unplugin-vue-macros: 0.16.0_f6zolwli45a6dkgzq5zhbk2c7e | ||
| 154 | - vite: 3.2.2_less@4.1.3 | ||
| 155 | - vite-plugin-compression: 0.5.1_vite@3.2.2 | ||
| 156 | - vite-plugin-eslint: 1.8.1_eslint@8.27.0+vite@3.2.2 | ||
| 157 | - vite-plugin-html: 3.2.0_vite@3.2.2 | ||
| 158 | - vite-plugin-purge-icons: 0.9.1_vite@3.2.2 | ||
| 159 | - vite-plugin-style-import: 2.0.0_vite@3.2.2 | ||
| 160 | - vite-plugin-svg-icons: 2.0.1_vite@3.2.2 | ||
| 161 | - vite-plugin-windicss: 1.8.8_vite@3.2.2 | 153 | + unplugin-vue-macros: 0.16.1_y7pktweo3ai2nyo3s3skrzfcku |
| 154 | + vite: 3.2.3_mp5lu76ee5qtwstsyca37sdhqi | ||
| 155 | + vite-plugin-compression: 0.5.1_vite@3.2.3 | ||
| 156 | + vite-plugin-eslint: 1.8.1_eslint@8.27.0+vite@3.2.3 | ||
| 157 | + vite-plugin-html: 3.2.0_vite@3.2.3 | ||
| 158 | + vite-plugin-purge-icons: 0.9.1_vite@3.2.3 | ||
| 159 | + vite-plugin-style-import: 2.0.0_vite@3.2.3 | ||
| 160 | + vite-plugin-svg-icons: 2.0.1_vite@3.2.3 | ||
| 161 | + vite-plugin-windicss: 1.8.8_vite@3.2.3 | ||
| 162 | vue-tsc: 1.0.9_typescript@4.8.4 | 162 | vue-tsc: 1.0.9_typescript@4.8.4 |
| 163 | windicss: 3.5.6 | 163 | windicss: 3.5.6 |
| 164 | 164 | ||
| @@ -205,7 +205,7 @@ packages: | @@ -205,7 +205,7 @@ packages: | ||
| 205 | '@babel/parser': 7.20.0 | 205 | '@babel/parser': 7.20.0 |
| 206 | '@babel/template': 7.18.10 | 206 | '@babel/template': 7.18.10 |
| 207 | '@babel/traverse': 7.20.0 | 207 | '@babel/traverse': 7.20.0 |
| 208 | - '@babel/types': 7.19.4 | 208 | + '@babel/types': 7.20.0 |
| 209 | convert-source-map: 1.8.0 | 209 | convert-source-map: 1.8.0 |
| 210 | debug: 4.3.4 | 210 | debug: 4.3.4 |
| 211 | gensync: 1.0.0-beta.2 | 211 | gensync: 1.0.0-beta.2 |
| @@ -244,8 +244,8 @@ packages: | @@ -244,8 +244,8 @@ packages: | ||
| 244 | semver: 6.3.0 | 244 | semver: 6.3.0 |
| 245 | dev: true | 245 | dev: true |
| 246 | 246 | ||
| 247 | - /@babel/helper-create-class-features-plugin/7.19.0_@babel+core@7.19.6: | ||
| 248 | - resolution: {integrity: sha512-NRz8DwF4jT3UfrmUoZjd0Uph9HQnP30t7Ash+weACcyNkiYTywpIjDBgReJMKgr+n86sn2nPVVmJ28Dm053Kqw==} | 247 | + /@babel/helper-create-class-features-plugin/7.20.2_@babel+core@7.19.6: |
| 248 | + resolution: {integrity: sha512-k22GoYRAHPYr9I+Gvy2ZQlAe5mGy8BqWst2wRt8cwIufWTxrsVshhIBvYNqC80N0GSFWTsqRVexOtfzlgOEDvA==} | ||
| 249 | engines: {node: '>=6.9.0'} | 249 | engines: {node: '>=6.9.0'} |
| 250 | peerDependencies: | 250 | peerDependencies: |
| 251 | '@babel/core': ^7.0.0 | 251 | '@babel/core': ^7.0.0 |
| @@ -307,7 +307,7 @@ packages: | @@ -307,7 +307,7 @@ packages: | ||
| 307 | '@babel/helper-validator-identifier': 7.19.1 | 307 | '@babel/helper-validator-identifier': 7.19.1 |
| 308 | '@babel/template': 7.18.10 | 308 | '@babel/template': 7.18.10 |
| 309 | '@babel/traverse': 7.20.0 | 309 | '@babel/traverse': 7.20.0 |
| 310 | - '@babel/types': 7.19.4 | 310 | + '@babel/types': 7.20.0 |
| 311 | transitivePeerDependencies: | 311 | transitivePeerDependencies: |
| 312 | - supports-color | 312 | - supports-color |
| 313 | dev: true | 313 | dev: true |
| @@ -319,8 +319,8 @@ packages: | @@ -319,8 +319,8 @@ packages: | ||
| 319 | '@babel/types': 7.20.0 | 319 | '@babel/types': 7.20.0 |
| 320 | dev: true | 320 | dev: true |
| 321 | 321 | ||
| 322 | - /@babel/helper-plugin-utils/7.19.0: | ||
| 323 | - resolution: {integrity: sha512-40Ryx7I8mT+0gaNxm8JGTZFUITNqdLAgdg0hXzeVZxVD6nFsdhQvip6v8dqkRHzsz1VFpFAaOCHNn0vKBL7Czw==} | 322 | + /@babel/helper-plugin-utils/7.20.2: |
| 323 | + resolution: {integrity: sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==} | ||
| 324 | engines: {node: '>=6.9.0'} | 324 | engines: {node: '>=6.9.0'} |
| 325 | dev: true | 325 | dev: true |
| 326 | 326 | ||
| @@ -401,7 +401,7 @@ packages: | @@ -401,7 +401,7 @@ packages: | ||
| 401 | engines: {node: '>=6.0.0'} | 401 | engines: {node: '>=6.0.0'} |
| 402 | hasBin: true | 402 | hasBin: true |
| 403 | dependencies: | 403 | dependencies: |
| 404 | - '@babel/types': 7.19.4 | 404 | + '@babel/types': 7.20.0 |
| 405 | dev: true | 405 | dev: true |
| 406 | 406 | ||
| 407 | /@babel/plugin-syntax-jsx/7.18.6_@babel+core@7.19.6: | 407 | /@babel/plugin-syntax-jsx/7.18.6_@babel+core@7.19.6: |
| @@ -411,29 +411,29 @@ packages: | @@ -411,29 +411,29 @@ packages: | ||
| 411 | '@babel/core': ^7.0.0-0 | 411 | '@babel/core': ^7.0.0-0 |
| 412 | dependencies: | 412 | dependencies: |
| 413 | '@babel/core': 7.19.6 | 413 | '@babel/core': 7.19.6 |
| 414 | - '@babel/helper-plugin-utils': 7.19.0 | 414 | + '@babel/helper-plugin-utils': 7.20.2 |
| 415 | dev: true | 415 | dev: true |
| 416 | 416 | ||
| 417 | - /@babel/plugin-syntax-typescript/7.18.6_@babel+core@7.19.6: | ||
| 418 | - resolution: {integrity: sha512-mAWAuq4rvOepWCBid55JuRNvpTNf2UGVgoz4JV0fXEKolsVZDzsa4NqCef758WZJj/GDu0gVGItjKFiClTAmZA==} | 417 | + /@babel/plugin-syntax-typescript/7.20.0_@babel+core@7.19.6: |
| 418 | + resolution: {integrity: sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==} | ||
| 419 | engines: {node: '>=6.9.0'} | 419 | engines: {node: '>=6.9.0'} |
| 420 | peerDependencies: | 420 | peerDependencies: |
| 421 | '@babel/core': ^7.0.0-0 | 421 | '@babel/core': ^7.0.0-0 |
| 422 | dependencies: | 422 | dependencies: |
| 423 | '@babel/core': 7.19.6 | 423 | '@babel/core': 7.19.6 |
| 424 | - '@babel/helper-plugin-utils': 7.19.0 | 424 | + '@babel/helper-plugin-utils': 7.20.2 |
| 425 | dev: true | 425 | dev: true |
| 426 | 426 | ||
| 427 | - /@babel/plugin-transform-typescript/7.19.3_@babel+core@7.19.6: | ||
| 428 | - resolution: {integrity: sha512-z6fnuK9ve9u/0X0rRvI9MY0xg+DOUaABDYOe+/SQTxtlptaBB/V9JIUxJn6xp3lMBeb9qe8xSFmHU35oZDXD+w==} | 427 | + /@babel/plugin-transform-typescript/7.20.2_@babel+core@7.19.6: |
| 428 | + resolution: {integrity: sha512-jvS+ngBfrnTUBfOQq8NfGnSbF9BrqlR6hjJ2yVxMkmO5nL/cdifNbI30EfjRlN4g5wYWNnMPyj5Sa6R1pbLeag==} | ||
| 429 | engines: {node: '>=6.9.0'} | 429 | engines: {node: '>=6.9.0'} |
| 430 | peerDependencies: | 430 | peerDependencies: |
| 431 | '@babel/core': ^7.0.0-0 | 431 | '@babel/core': ^7.0.0-0 |
| 432 | dependencies: | 432 | dependencies: |
| 433 | '@babel/core': 7.19.6 | 433 | '@babel/core': 7.19.6 |
| 434 | - '@babel/helper-create-class-features-plugin': 7.19.0_@babel+core@7.19.6 | ||
| 435 | - '@babel/helper-plugin-utils': 7.19.0 | ||
| 436 | - '@babel/plugin-syntax-typescript': 7.18.6_@babel+core@7.19.6 | 434 | + '@babel/helper-create-class-features-plugin': 7.20.2_@babel+core@7.19.6 |
| 435 | + '@babel/helper-plugin-utils': 7.20.2 | ||
| 436 | + '@babel/plugin-syntax-typescript': 7.20.0_@babel+core@7.19.6 | ||
| 437 | transitivePeerDependencies: | 437 | transitivePeerDependencies: |
| 438 | - supports-color | 438 | - supports-color |
| 439 | dev: true | 439 | dev: true |
| @@ -454,24 +454,6 @@ packages: | @@ -454,24 +454,6 @@ packages: | ||
| 454 | '@babel/types': 7.20.0 | 454 | '@babel/types': 7.20.0 |
| 455 | dev: true | 455 | dev: true |
| 456 | 456 | ||
| 457 | - /@babel/traverse/7.19.3: | ||
| 458 | - resolution: {integrity: sha512-qh5yf6149zhq2sgIXmwjnsvmnNQC2iw70UFjp4olxucKrWd/dvlUsBI88VSLUsnMNF7/vnOiA+nk1+yLoCqROQ==} | ||
| 459 | - engines: {node: '>=6.9.0'} | ||
| 460 | - dependencies: | ||
| 461 | - '@babel/code-frame': 7.18.6 | ||
| 462 | - '@babel/generator': 7.20.0 | ||
| 463 | - '@babel/helper-environment-visitor': 7.18.9 | ||
| 464 | - '@babel/helper-function-name': 7.19.0 | ||
| 465 | - '@babel/helper-hoist-variables': 7.18.6 | ||
| 466 | - '@babel/helper-split-export-declaration': 7.18.6 | ||
| 467 | - '@babel/parser': 7.20.0 | ||
| 468 | - '@babel/types': 7.20.0 | ||
| 469 | - debug: 4.3.4 | ||
| 470 | - globals: 11.12.0 | ||
| 471 | - transitivePeerDependencies: | ||
| 472 | - - supports-color | ||
| 473 | - dev: true | ||
| 474 | - | ||
| 475 | /@babel/traverse/7.20.0: | 457 | /@babel/traverse/7.20.0: |
| 476 | resolution: {integrity: sha512-5+cAXQNARgjRUK0JWu2UBwja4JLSO/rBMPJzpsKb+oBF5xlUuCfljQepS4XypBQoiigL0VQjTZy6WiONtUdScQ==} | 458 | resolution: {integrity: sha512-5+cAXQNARgjRUK0JWu2UBwja4JLSO/rBMPJzpsKb+oBF5xlUuCfljQepS4XypBQoiigL0VQjTZy6WiONtUdScQ==} |
| 477 | engines: {node: '>=6.9.0'} | 459 | engines: {node: '>=6.9.0'} |
| @@ -498,15 +480,6 @@ packages: | @@ -498,15 +480,6 @@ packages: | ||
| 498 | '@babel/helper-validator-identifier': 7.19.1 | 480 | '@babel/helper-validator-identifier': 7.19.1 |
| 499 | to-fast-properties: 2.0.0 | 481 | to-fast-properties: 2.0.0 |
| 500 | 482 | ||
| 501 | - /@babel/types/7.19.4: | ||
| 502 | - resolution: {integrity: sha512-M5LK7nAeS6+9j7hAq+b3fQs+pNfUtTGq+yFFfHnauFA8zQtLRfmuipmsKDKKLuyG+wC8ABW43A153YNawNTEtw==} | ||
| 503 | - engines: {node: '>=6.9.0'} | ||
| 504 | - dependencies: | ||
| 505 | - '@babel/helper-string-parser': 7.19.4 | ||
| 506 | - '@babel/helper-validator-identifier': 7.19.1 | ||
| 507 | - to-fast-properties: 2.0.0 | ||
| 508 | - dev: true | ||
| 509 | - | ||
| 510 | /@babel/types/7.20.0: | 483 | /@babel/types/7.20.0: |
| 511 | resolution: {integrity: sha512-Jlgt3H0TajCW164wkTOTzHkZb075tMQMULzrLUoUeKmO7eFL96GgDxf7/Axhc5CAuKE3KFyVW1p6ysKsi2oXAg==} | 484 | resolution: {integrity: sha512-Jlgt3H0TajCW164wkTOTzHkZb075tMQMULzrLUoUeKmO7eFL96GgDxf7/Axhc5CAuKE3KFyVW1p6ysKsi2oXAg==} |
| 512 | engines: {node: '>=6.9.0'} | 485 | engines: {node: '>=6.9.0'} |
| @@ -856,7 +829,7 @@ packages: | @@ -856,7 +829,7 @@ packages: | ||
| 856 | engines: {node: '>= 14'} | 829 | engines: {node: '>= 14'} |
| 857 | dev: true | 830 | dev: true |
| 858 | 831 | ||
| 859 | - /@intlify/vite-plugin-vue-i18n/6.0.3_vite@3.2.2+vue-i18n@9.2.2: | 832 | + /@intlify/vite-plugin-vue-i18n/6.0.3_vite@3.2.3+vue-i18n@9.2.2: |
| 860 | resolution: {integrity: sha512-6SgNzPAOCR90wvt368lKzi7f/5ZEWJn22UCGvhFsP3XvKqlF3cVzojahgQ6o+LTdCkExeM6wPgd+haFf28E9VQ==} | 833 | resolution: {integrity: sha512-6SgNzPAOCR90wvt368lKzi7f/5ZEWJn22UCGvhFsP3XvKqlF3cVzojahgQ6o+LTdCkExeM6wPgd+haFf28E9VQ==} |
| 861 | engines: {node: '>= 14.6'} | 834 | engines: {node: '>= 14.6'} |
| 862 | peerDependencies: | 835 | peerDependencies: |
| @@ -877,7 +850,7 @@ packages: | @@ -877,7 +850,7 @@ packages: | ||
| 877 | debug: 4.3.4 | 850 | debug: 4.3.4 |
| 878 | fast-glob: 3.2.12 | 851 | fast-glob: 3.2.12 |
| 879 | source-map: 0.6.1 | 852 | source-map: 0.6.1 |
| 880 | - vite: 3.2.2_less@4.1.3 | 853 | + vite: 3.2.3_mp5lu76ee5qtwstsyca37sdhqi |
| 881 | vue-i18n: 9.2.2_vue@3.2.41 | 854 | vue-i18n: 9.2.2_vue@3.2.41 |
| 882 | transitivePeerDependencies: | 855 | transitivePeerDependencies: |
| 883 | - supports-color | 856 | - supports-color |
| @@ -1056,7 +1029,7 @@ packages: | @@ -1056,7 +1029,7 @@ packages: | ||
| 1056 | resolution: {integrity: sha512-Ny/PJkO6nxWAQnaet8q/oWz15lrfwvdvBpuY4treB0CSsBO1CG0fVuNLngR3m3bepQLd+E4c3Y3DlC2okpUvPw==} | 1029 | resolution: {integrity: sha512-Ny/PJkO6nxWAQnaet8q/oWz15lrfwvdvBpuY4treB0CSsBO1CG0fVuNLngR3m3bepQLd+E4c3Y3DlC2okpUvPw==} |
| 1057 | dependencies: | 1030 | dependencies: |
| 1058 | '@types/fined': 1.1.3 | 1031 | '@types/fined': 1.1.3 |
| 1059 | - '@types/node': 18.11.2 | 1032 | + '@types/node': 18.11.9 |
| 1060 | dev: true | 1033 | dev: true |
| 1061 | 1034 | ||
| 1062 | /@types/lodash-es/4.17.6: | 1035 | /@types/lodash-es/4.17.6: |
| @@ -1075,8 +1048,8 @@ packages: | @@ -1075,8 +1048,8 @@ packages: | ||
| 1075 | resolution: {integrity: sha512-vQAnaReSQkEDa8uwAyQby8bYGKu84R/deEc6mg5T8fX6gzCn8QW6rziSgsti1fNvsrswKUKPnVTi7uoB+u62Mw==} | 1048 | resolution: {integrity: sha512-vQAnaReSQkEDa8uwAyQby8bYGKu84R/deEc6mg5T8fX6gzCn8QW6rziSgsti1fNvsrswKUKPnVTi7uoB+u62Mw==} |
| 1076 | dev: true | 1049 | dev: true |
| 1077 | 1050 | ||
| 1078 | - /@types/node/18.11.2: | ||
| 1079 | - resolution: {integrity: sha512-BWN3M23gLO2jVG8g/XHIRFWiiV4/GckeFIqbU/C4V3xpoBBWSMk4OZomouN0wCkfQFPqgZikyLr7DOYDysIkkw==} | 1051 | + /@types/node/18.11.9: |
| 1052 | + resolution: {integrity: sha512-CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg==} | ||
| 1080 | dev: true | 1053 | dev: true |
| 1081 | 1054 | ||
| 1082 | /@types/normalize-package-data/2.4.1: | 1055 | /@types/normalize-package-data/2.4.1: |
| @@ -1094,7 +1067,7 @@ packages: | @@ -1094,7 +1067,7 @@ packages: | ||
| 1094 | /@types/qrcode/1.5.0: | 1067 | /@types/qrcode/1.5.0: |
| 1095 | resolution: {integrity: sha512-x5ilHXRxUPIMfjtM+1vf/GPTRWZ81nqscursm5gMznJeK9M0YnZ1c3bEvRLQ0zSSgedLx1J6MGL231ObQGGhaA==} | 1068 | resolution: {integrity: sha512-x5ilHXRxUPIMfjtM+1vf/GPTRWZ81nqscursm5gMznJeK9M0YnZ1c3bEvRLQ0zSSgedLx1J6MGL231ObQGGhaA==} |
| 1096 | dependencies: | 1069 | dependencies: |
| 1097 | - '@types/node': 18.11.2 | 1070 | + '@types/node': 18.11.9 |
| 1098 | dev: true | 1071 | dev: true |
| 1099 | 1072 | ||
| 1100 | /@types/qs/6.9.7: | 1073 | /@types/qs/6.9.7: |
| @@ -1108,20 +1081,20 @@ packages: | @@ -1108,20 +1081,20 @@ packages: | ||
| 1108 | /@types/svgo/2.6.4: | 1081 | /@types/svgo/2.6.4: |
| 1109 | resolution: {integrity: sha512-l4cmyPEckf8moNYHdJ+4wkHvFxjyW6ulm9l4YGaOxeyBWPhBOT0gvni1InpFPdzx1dKf/2s62qGITwxNWnPQng==} | 1082 | resolution: {integrity: sha512-l4cmyPEckf8moNYHdJ+4wkHvFxjyW6ulm9l4YGaOxeyBWPhBOT0gvni1InpFPdzx1dKf/2s62qGITwxNWnPQng==} |
| 1110 | dependencies: | 1083 | dependencies: |
| 1111 | - '@types/node': 18.11.2 | 1084 | + '@types/node': 18.11.9 |
| 1112 | dev: true | 1085 | dev: true |
| 1113 | 1086 | ||
| 1114 | /@types/through/0.0.30: | 1087 | /@types/through/0.0.30: |
| 1115 | resolution: {integrity: sha512-FvnCJljyxhPM3gkRgWmxmDZyAQSiBQQWLI0A0VFL0K7W1oRUrPJSqNO0NvTnLkBcotdlp3lKvaT0JrnyRDkzOg==} | 1088 | resolution: {integrity: sha512-FvnCJljyxhPM3gkRgWmxmDZyAQSiBQQWLI0A0VFL0K7W1oRUrPJSqNO0NvTnLkBcotdlp3lKvaT0JrnyRDkzOg==} |
| 1116 | dependencies: | 1089 | dependencies: |
| 1117 | - '@types/node': 18.11.2 | 1090 | + '@types/node': 18.11.9 |
| 1118 | dev: true | 1091 | dev: true |
| 1119 | 1092 | ||
| 1120 | /@types/web-bluetooth/0.0.16: | 1093 | /@types/web-bluetooth/0.0.16: |
| 1121 | resolution: {integrity: sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==} | 1094 | resolution: {integrity: sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==} |
| 1122 | 1095 | ||
| 1123 | - /@typescript-eslint/eslint-plugin/5.42.0_ofgjrzjuekeo7s3hdyz2yuzw34: | ||
| 1124 | - resolution: {integrity: sha512-5TJh2AgL6+wpL8H/GTSjNb4WrjKoR2rqvFxR/DDTqYNk6uXn8BJMEcncLSpMbf/XV1aS0jAjYwn98uvVCiAywQ==} | 1096 | + /@typescript-eslint/eslint-plugin/5.42.1_2udltptbznfmezdozpdoa2aemq: |
| 1097 | + resolution: {integrity: sha512-LyR6x784JCiJ1j6sH5Y0K6cdExqCCm8DJUTcwG5ThNXJj/G8o5E56u5EdG4SLy+bZAwZBswC+GYn3eGdttBVCg==} | ||
| 1125 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} | 1098 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} |
| 1126 | peerDependencies: | 1099 | peerDependencies: |
| 1127 | '@typescript-eslint/parser': ^5.0.0 | 1100 | '@typescript-eslint/parser': ^5.0.0 |
| @@ -1131,10 +1104,10 @@ packages: | @@ -1131,10 +1104,10 @@ packages: | ||
| 1131 | typescript: | 1104 | typescript: |
| 1132 | optional: true | 1105 | optional: true |
| 1133 | dependencies: | 1106 | dependencies: |
| 1134 | - '@typescript-eslint/parser': 5.42.0_rmayb2veg2btbq6mbmnyivgasy | ||
| 1135 | - '@typescript-eslint/scope-manager': 5.42.0 | ||
| 1136 | - '@typescript-eslint/type-utils': 5.42.0_rmayb2veg2btbq6mbmnyivgasy | ||
| 1137 | - '@typescript-eslint/utils': 5.42.0_rmayb2veg2btbq6mbmnyivgasy | 1107 | + '@typescript-eslint/parser': 5.42.1_rmayb2veg2btbq6mbmnyivgasy |
| 1108 | + '@typescript-eslint/scope-manager': 5.42.1 | ||
| 1109 | + '@typescript-eslint/type-utils': 5.42.1_rmayb2veg2btbq6mbmnyivgasy | ||
| 1110 | + '@typescript-eslint/utils': 5.42.1_rmayb2veg2btbq6mbmnyivgasy | ||
| 1138 | debug: 4.3.4 | 1111 | debug: 4.3.4 |
| 1139 | eslint: 8.27.0 | 1112 | eslint: 8.27.0 |
| 1140 | ignore: 5.2.0 | 1113 | ignore: 5.2.0 |
| @@ -1147,8 +1120,8 @@ packages: | @@ -1147,8 +1120,8 @@ packages: | ||
| 1147 | - supports-color | 1120 | - supports-color |
| 1148 | dev: true | 1121 | dev: true |
| 1149 | 1122 | ||
| 1150 | - /@typescript-eslint/parser/5.42.0_rmayb2veg2btbq6mbmnyivgasy: | ||
| 1151 | - resolution: {integrity: sha512-Ixh9qrOTDRctFg3yIwrLkgf33AHyEIn6lhyf5cCfwwiGtkWhNpVKlEZApi3inGQR/barWnY7qY8FbGKBO7p3JA==} | 1123 | + /@typescript-eslint/parser/5.42.1_rmayb2veg2btbq6mbmnyivgasy: |
| 1124 | + resolution: {integrity: sha512-kAV+NiNBWVQDY9gDJDToTE/NO8BHi4f6b7zTsVAJoTkmB/zlfOpiEVBzHOKtlgTndCKe8vj9F/PuolemZSh50Q==} | ||
| 1152 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} | 1125 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} |
| 1153 | peerDependencies: | 1126 | peerDependencies: |
| 1154 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 | 1127 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 |
| @@ -1157,9 +1130,9 @@ packages: | @@ -1157,9 +1130,9 @@ packages: | ||
| 1157 | typescript: | 1130 | typescript: |
| 1158 | optional: true | 1131 | optional: true |
| 1159 | dependencies: | 1132 | dependencies: |
| 1160 | - '@typescript-eslint/scope-manager': 5.42.0 | ||
| 1161 | - '@typescript-eslint/types': 5.42.0 | ||
| 1162 | - '@typescript-eslint/typescript-estree': 5.42.0_typescript@4.8.4 | 1133 | + '@typescript-eslint/scope-manager': 5.42.1 |
| 1134 | + '@typescript-eslint/types': 5.42.1 | ||
| 1135 | + '@typescript-eslint/typescript-estree': 5.42.1_typescript@4.8.4 | ||
| 1163 | debug: 4.3.4 | 1136 | debug: 4.3.4 |
| 1164 | eslint: 8.27.0 | 1137 | eslint: 8.27.0 |
| 1165 | typescript: 4.8.4 | 1138 | typescript: 4.8.4 |
| @@ -1167,16 +1140,16 @@ packages: | @@ -1167,16 +1140,16 @@ packages: | ||
| 1167 | - supports-color | 1140 | - supports-color |
| 1168 | dev: true | 1141 | dev: true |
| 1169 | 1142 | ||
| 1170 | - /@typescript-eslint/scope-manager/5.42.0: | ||
| 1171 | - resolution: {integrity: sha512-l5/3IBHLH0Bv04y+H+zlcLiEMEMjWGaCX6WyHE5Uk2YkSGAMlgdUPsT/ywTSKgu9D1dmmKMYgYZijObfA39Wow==} | 1143 | + /@typescript-eslint/scope-manager/5.42.1: |
| 1144 | + resolution: {integrity: sha512-QAZY/CBP1Emx4rzxurgqj3rUinfsh/6mvuKbLNMfJMMKYLRBfweus8brgXF8f64ABkIZ3zdj2/rYYtF8eiuksQ==} | ||
| 1172 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} | 1145 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} |
| 1173 | dependencies: | 1146 | dependencies: |
| 1174 | - '@typescript-eslint/types': 5.42.0 | ||
| 1175 | - '@typescript-eslint/visitor-keys': 5.42.0 | 1147 | + '@typescript-eslint/types': 5.42.1 |
| 1148 | + '@typescript-eslint/visitor-keys': 5.42.1 | ||
| 1176 | dev: true | 1149 | dev: true |
| 1177 | 1150 | ||
| 1178 | - /@typescript-eslint/type-utils/5.42.0_rmayb2veg2btbq6mbmnyivgasy: | ||
| 1179 | - resolution: {integrity: sha512-HW14TXC45dFVZxnVW8rnUGnvYyRC0E/vxXShFCthcC9VhVTmjqOmtqj6H5rm9Zxv+ORxKA/1aLGD7vmlLsdlOg==} | 1151 | + /@typescript-eslint/type-utils/5.42.1_rmayb2veg2btbq6mbmnyivgasy: |
| 1152 | + resolution: {integrity: sha512-WWiMChneex5w4xPIX56SSnQQo0tEOy5ZV2dqmj8Z371LJ0E+aymWD25JQ/l4FOuuX+Q49A7pzh/CGIQflxMVXg==} | ||
| 1180 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} | 1153 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} |
| 1181 | peerDependencies: | 1154 | peerDependencies: |
| 1182 | eslint: '*' | 1155 | eslint: '*' |
| @@ -1185,8 +1158,8 @@ packages: | @@ -1185,8 +1158,8 @@ packages: | ||
| 1185 | typescript: | 1158 | typescript: |
| 1186 | optional: true | 1159 | optional: true |
| 1187 | dependencies: | 1160 | dependencies: |
| 1188 | - '@typescript-eslint/typescript-estree': 5.42.0_typescript@4.8.4 | ||
| 1189 | - '@typescript-eslint/utils': 5.42.0_rmayb2veg2btbq6mbmnyivgasy | 1161 | + '@typescript-eslint/typescript-estree': 5.42.1_typescript@4.8.4 |
| 1162 | + '@typescript-eslint/utils': 5.42.1_rmayb2veg2btbq6mbmnyivgasy | ||
| 1190 | debug: 4.3.4 | 1163 | debug: 4.3.4 |
| 1191 | eslint: 8.27.0 | 1164 | eslint: 8.27.0 |
| 1192 | tsutils: 3.21.0_typescript@4.8.4 | 1165 | tsutils: 3.21.0_typescript@4.8.4 |
| @@ -1195,13 +1168,13 @@ packages: | @@ -1195,13 +1168,13 @@ packages: | ||
| 1195 | - supports-color | 1168 | - supports-color |
| 1196 | dev: true | 1169 | dev: true |
| 1197 | 1170 | ||
| 1198 | - /@typescript-eslint/types/5.42.0: | ||
| 1199 | - resolution: {integrity: sha512-t4lzO9ZOAUcHY6bXQYRuu+3SSYdD9TS8ooApZft4WARt4/f2Cj/YpvbTe8A4GuhT4bNW72goDMOy7SW71mZwGw==} | 1171 | + /@typescript-eslint/types/5.42.1: |
| 1172 | + resolution: {integrity: sha512-Qrco9dsFF5lhalz+lLFtxs3ui1/YfC6NdXu+RAGBa8uSfn01cjO7ssCsjIsUs484vny9Xm699FSKwpkCcqwWwA==} | ||
| 1200 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} | 1173 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} |
| 1201 | dev: true | 1174 | dev: true |
| 1202 | 1175 | ||
| 1203 | - /@typescript-eslint/typescript-estree/5.42.0_typescript@4.8.4: | ||
| 1204 | - resolution: {integrity: sha512-2O3vSq794x3kZGtV7i4SCWZWCwjEtkWfVqX4m5fbUBomOsEOyd6OAD1qU2lbvV5S8tgy/luJnOYluNyYVeOTTg==} | 1176 | + /@typescript-eslint/typescript-estree/5.42.1_typescript@4.8.4: |
| 1177 | + resolution: {integrity: sha512-qElc0bDOuO0B8wDhhW4mYVgi/LZL+igPwXtV87n69/kYC/7NG3MES0jHxJNCr4EP7kY1XVsRy8C/u3DYeTKQmw==} | ||
| 1205 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} | 1178 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} |
| 1206 | peerDependencies: | 1179 | peerDependencies: |
| 1207 | typescript: '*' | 1180 | typescript: '*' |
| @@ -1209,8 +1182,8 @@ packages: | @@ -1209,8 +1182,8 @@ packages: | ||
| 1209 | typescript: | 1182 | typescript: |
| 1210 | optional: true | 1183 | optional: true |
| 1211 | dependencies: | 1184 | dependencies: |
| 1212 | - '@typescript-eslint/types': 5.42.0 | ||
| 1213 | - '@typescript-eslint/visitor-keys': 5.42.0 | 1185 | + '@typescript-eslint/types': 5.42.1 |
| 1186 | + '@typescript-eslint/visitor-keys': 5.42.1 | ||
| 1214 | debug: 4.3.4 | 1187 | debug: 4.3.4 |
| 1215 | globby: 11.1.0 | 1188 | globby: 11.1.0 |
| 1216 | is-glob: 4.0.3 | 1189 | is-glob: 4.0.3 |
| @@ -1221,17 +1194,17 @@ packages: | @@ -1221,17 +1194,17 @@ packages: | ||
| 1221 | - supports-color | 1194 | - supports-color |
| 1222 | dev: true | 1195 | dev: true |
| 1223 | 1196 | ||
| 1224 | - /@typescript-eslint/utils/5.42.0_rmayb2veg2btbq6mbmnyivgasy: | ||
| 1225 | - resolution: {integrity: sha512-JZ++3+h1vbeG1NUECXQZE3hg0kias9kOtcQr3+JVQ3whnjvKuMyktJAAIj6743OeNPnGBmjj7KEmiDL7qsdnCQ==} | 1197 | + /@typescript-eslint/utils/5.42.1_rmayb2veg2btbq6mbmnyivgasy: |
| 1198 | + resolution: {integrity: sha512-Gxvf12xSp3iYZd/fLqiQRD4uKZjDNR01bQ+j8zvhPjpsZ4HmvEFL/tC4amGNyxN9Rq+iqvpHLhlqx6KTxz9ZyQ==} | ||
| 1226 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} | 1199 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} |
| 1227 | peerDependencies: | 1200 | peerDependencies: |
| 1228 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 | 1201 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 |
| 1229 | dependencies: | 1202 | dependencies: |
| 1230 | '@types/json-schema': 7.0.11 | 1203 | '@types/json-schema': 7.0.11 |
| 1231 | '@types/semver': 7.3.12 | 1204 | '@types/semver': 7.3.12 |
| 1232 | - '@typescript-eslint/scope-manager': 5.42.0 | ||
| 1233 | - '@typescript-eslint/types': 5.42.0 | ||
| 1234 | - '@typescript-eslint/typescript-estree': 5.42.0_typescript@4.8.4 | 1205 | + '@typescript-eslint/scope-manager': 5.42.1 |
| 1206 | + '@typescript-eslint/types': 5.42.1 | ||
| 1207 | + '@typescript-eslint/typescript-estree': 5.42.1_typescript@4.8.4 | ||
| 1235 | eslint: 8.27.0 | 1208 | eslint: 8.27.0 |
| 1236 | eslint-scope: 5.1.1 | 1209 | eslint-scope: 5.1.1 |
| 1237 | eslint-utils: 3.0.0_eslint@8.27.0 | 1210 | eslint-utils: 3.0.0_eslint@8.27.0 |
| @@ -1241,11 +1214,11 @@ packages: | @@ -1241,11 +1214,11 @@ packages: | ||
| 1241 | - typescript | 1214 | - typescript |
| 1242 | dev: true | 1215 | dev: true |
| 1243 | 1216 | ||
| 1244 | - /@typescript-eslint/visitor-keys/5.42.0: | ||
| 1245 | - resolution: {integrity: sha512-QHbu5Hf/2lOEOwy+IUw0GoSCuAzByTAWWrOTKzTzsotiUnWFpuKnXcAhC9YztAf2EElQ0VvIK+pHJUPkM0q7jg==} | 1217 | + /@typescript-eslint/visitor-keys/5.42.1: |
| 1218 | + resolution: {integrity: sha512-LOQtSF4z+hejmpUvitPlc4hA7ERGoj2BVkesOcG91HCn8edLGUXbTrErmutmPbl8Bo9HjAvOO/zBKQHExXNA2A==} | ||
| 1246 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} | 1219 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} |
| 1247 | dependencies: | 1220 | dependencies: |
| 1248 | - '@typescript-eslint/types': 5.42.0 | 1221 | + '@typescript-eslint/types': 5.42.1 |
| 1249 | eslint-visitor-keys: 3.3.0 | 1222 | eslint-visitor-keys: 3.3.0 |
| 1250 | dev: true | 1223 | dev: true |
| 1251 | 1224 | ||
| @@ -1290,30 +1263,30 @@ packages: | @@ -1290,30 +1263,30 @@ packages: | ||
| 1290 | nanoid: 3.3.4 | 1263 | nanoid: 3.3.4 |
| 1291 | dev: false | 1264 | dev: false |
| 1292 | 1265 | ||
| 1293 | - /@vitejs/plugin-vue-jsx/2.1.0_vite@3.2.2+vue@3.2.41: | ||
| 1294 | - resolution: {integrity: sha512-vvL8MHKN0hUf5LE+/rCk1rduwzW6NihD6xEfM4s1gGCSWQFYd5zLdxBs++z3S7AV/ynr7Yig5Xp1Bm0wlB4IAA==} | 1266 | + /@vitejs/plugin-vue-jsx/2.1.1_vite@3.2.3+vue@3.2.41: |
| 1267 | + resolution: {integrity: sha512-JgDhxstQlwnHBvZ1BSnU5mbmyQ14/t5JhREc6YH5kWyu2QdAAOsLF6xgHoIWarj8tddaiwFrNzLbWJPudpXKYA==} | ||
| 1295 | engines: {node: ^14.18.0 || >=16.0.0} | 1268 | engines: {node: ^14.18.0 || >=16.0.0} |
| 1296 | peerDependencies: | 1269 | peerDependencies: |
| 1297 | vite: ^3.0.0 | 1270 | vite: ^3.0.0 |
| 1298 | vue: ^3.0.0 | 1271 | vue: ^3.0.0 |
| 1299 | dependencies: | 1272 | dependencies: |
| 1300 | '@babel/core': 7.19.6 | 1273 | '@babel/core': 7.19.6 |
| 1301 | - '@babel/plugin-transform-typescript': 7.19.3_@babel+core@7.19.6 | 1274 | + '@babel/plugin-transform-typescript': 7.20.2_@babel+core@7.19.6 |
| 1302 | '@vue/babel-plugin-jsx': 1.1.1_@babel+core@7.19.6 | 1275 | '@vue/babel-plugin-jsx': 1.1.1_@babel+core@7.19.6 |
| 1303 | - vite: 3.2.2_less@4.1.3 | 1276 | + vite: 3.2.3_mp5lu76ee5qtwstsyca37sdhqi |
| 1304 | vue: 3.2.41 | 1277 | vue: 3.2.41 |
| 1305 | transitivePeerDependencies: | 1278 | transitivePeerDependencies: |
| 1306 | - supports-color | 1279 | - supports-color |
| 1307 | dev: true | 1280 | dev: true |
| 1308 | 1281 | ||
| 1309 | - /@vitejs/plugin-vue/3.2.0_vite@3.2.2+vue@3.2.41: | 1282 | + /@vitejs/plugin-vue/3.2.0_vite@3.2.3+vue@3.2.41: |
| 1310 | resolution: {integrity: sha512-E0tnaL4fr+qkdCNxJ+Xd0yM31UwMkQje76fsDVBBUCoGOUPexu2VDUYHL8P4CwV+zMvWw6nlRw19OnRKmYAJpw==} | 1283 | resolution: {integrity: sha512-E0tnaL4fr+qkdCNxJ+Xd0yM31UwMkQje76fsDVBBUCoGOUPexu2VDUYHL8P4CwV+zMvWw6nlRw19OnRKmYAJpw==} |
| 1311 | engines: {node: ^14.18.0 || >=16.0.0} | 1284 | engines: {node: ^14.18.0 || >=16.0.0} |
| 1312 | peerDependencies: | 1285 | peerDependencies: |
| 1313 | vite: ^3.0.0 | 1286 | vite: ^3.0.0 |
| 1314 | vue: ^3.2.25 | 1287 | vue: ^3.2.25 |
| 1315 | dependencies: | 1288 | dependencies: |
| 1316 | - vite: 3.2.2_less@4.1.3 | 1289 | + vite: 3.2.3_mp5lu76ee5qtwstsyca37sdhqi |
| 1317 | vue: 3.2.41 | 1290 | vue: 3.2.41 |
| 1318 | dev: true | 1291 | dev: true |
| 1319 | 1292 | ||
| @@ -1365,8 +1338,8 @@ packages: | @@ -1365,8 +1338,8 @@ packages: | ||
| 1365 | '@vue-macros/common': 0.13.3 | 1338 | '@vue-macros/common': 0.13.3 |
| 1366 | dev: true | 1339 | dev: true |
| 1367 | 1340 | ||
| 1368 | - /@vue-macros/better-define/0.0.4: | ||
| 1369 | - resolution: {integrity: sha512-wp4C7Oom1P80oKvCtrpEDtotdIsTHXt0OqgBn47xUqdj4S/baG7Ji6qQ3MUtHxBTQ+nyC+7g9nxSADl+s1Px/Q==} | 1341 | + /@vue-macros/better-define/0.1.0: |
| 1342 | + resolution: {integrity: sha512-ujuB6G/1+/2Y789CGZegyyRzGoW8bTWzGUXgpNPiIF9H+o3r+1/Ksd1wYC9J08jZrtaXh9q4a6m6b0otbABQ8g==} | ||
| 1370 | engines: {node: '>=14.19.0'} | 1343 | engines: {node: '>=14.19.0'} |
| 1371 | dependencies: | 1344 | dependencies: |
| 1372 | '@rollup/pluginutils': 4.2.1 | 1345 | '@rollup/pluginutils': 4.2.1 |
| @@ -1445,16 +1418,16 @@ packages: | @@ -1445,16 +1418,16 @@ packages: | ||
| 1445 | unplugin: 0.10.2 | 1418 | unplugin: 0.10.2 |
| 1446 | dev: true | 1419 | dev: true |
| 1447 | 1420 | ||
| 1448 | - /@vue-macros/named-template/0.0.5_kfit4shdbw4ah6piqfzpu53piy: | 1421 | + /@vue-macros/named-template/0.0.5_t3l5nd4o5yt7e6vilzibgbljou: |
| 1449 | resolution: {integrity: sha512-bZRUljNyvOOqeE9dyqXvKPQCLUCcPt1EkThmXqSbxagV29ohyviF8+CCs/8OdmNygLTBIChjP8DexQ3nUIFzUg==} | 1422 | resolution: {integrity: sha512-bZRUljNyvOOqeE9dyqXvKPQCLUCcPt1EkThmXqSbxagV29ohyviF8+CCs/8OdmNygLTBIChjP8DexQ3nUIFzUg==} |
| 1450 | engines: {node: '>=14.19.0'} | 1423 | engines: {node: '>=14.19.0'} |
| 1451 | dependencies: | 1424 | dependencies: |
| 1452 | '@rollup/pluginutils': 4.2.1 | 1425 | '@rollup/pluginutils': 4.2.1 |
| 1453 | - '@vitejs/plugin-vue': 3.2.0_vite@3.2.2+vue@3.2.41 | 1426 | + '@vitejs/plugin-vue': 3.2.0_vite@3.2.3+vue@3.2.41 |
| 1454 | '@vue-macros/common': 0.13.3 | 1427 | '@vue-macros/common': 0.13.3 |
| 1455 | '@vue/compiler-dom': 3.2.41 | 1428 | '@vue/compiler-dom': 3.2.41 |
| 1456 | unplugin: 0.10.2 | 1429 | unplugin: 0.10.2 |
| 1457 | - unplugin-combine: 0.2.8_rollup@3.2.5+vite@3.2.2 | 1430 | + unplugin-combine: 0.2.8_rollup@3.2.5+vite@3.2.3 |
| 1458 | transitivePeerDependencies: | 1431 | transitivePeerDependencies: |
| 1459 | - esbuild | 1432 | - esbuild |
| 1460 | - rollup | 1433 | - rollup |
| @@ -1463,14 +1436,14 @@ packages: | @@ -1463,14 +1436,14 @@ packages: | ||
| 1463 | - webpack | 1436 | - webpack |
| 1464 | dev: true | 1437 | dev: true |
| 1465 | 1438 | ||
| 1466 | - /@vue-macros/setup-component/0.12.7_rollup@3.2.5+vite@3.2.2: | 1439 | + /@vue-macros/setup-component/0.12.7_rollup@3.2.5+vite@3.2.3: |
| 1467 | resolution: {integrity: sha512-L0WkJgw0QDwZh4tOjjKIDR0DMIybiOunsaxVqkJjicTb2YaiRUSLq4Wadl8Ttrsd0IEfI51CSlg7Sx0/dKLrlQ==} | 1440 | resolution: {integrity: sha512-L0WkJgw0QDwZh4tOjjKIDR0DMIybiOunsaxVqkJjicTb2YaiRUSLq4Wadl8Ttrsd0IEfI51CSlg7Sx0/dKLrlQ==} |
| 1468 | engines: {node: '>=14.19.0'} | 1441 | engines: {node: '>=14.19.0'} |
| 1469 | dependencies: | 1442 | dependencies: |
| 1470 | '@rollup/pluginutils': 4.2.1 | 1443 | '@rollup/pluginutils': 4.2.1 |
| 1471 | '@vue-macros/common': 0.13.3 | 1444 | '@vue-macros/common': 0.13.3 |
| 1472 | unplugin: 0.10.2 | 1445 | unplugin: 0.10.2 |
| 1473 | - unplugin-combine: 0.2.8_rollup@3.2.5+vite@3.2.2 | 1446 | + unplugin-combine: 0.2.8_rollup@3.2.5+vite@3.2.3 |
| 1474 | transitivePeerDependencies: | 1447 | transitivePeerDependencies: |
| 1475 | - esbuild | 1448 | - esbuild |
| 1476 | - rollup | 1449 | - rollup |
| @@ -1506,8 +1479,8 @@ packages: | @@ -1506,8 +1479,8 @@ packages: | ||
| 1506 | '@babel/helper-module-imports': 7.18.6 | 1479 | '@babel/helper-module-imports': 7.18.6 |
| 1507 | '@babel/plugin-syntax-jsx': 7.18.6_@babel+core@7.19.6 | 1480 | '@babel/plugin-syntax-jsx': 7.18.6_@babel+core@7.19.6 |
| 1508 | '@babel/template': 7.18.10 | 1481 | '@babel/template': 7.18.10 |
| 1509 | - '@babel/traverse': 7.19.3 | ||
| 1510 | - '@babel/types': 7.19.4 | 1482 | + '@babel/traverse': 7.20.0 |
| 1483 | + '@babel/types': 7.20.0 | ||
| 1511 | '@vue/babel-helper-vue-transform-on': 1.0.2 | 1484 | '@vue/babel-helper-vue-transform-on': 1.0.2 |
| 1512 | camelcase: 6.3.0 | 1485 | camelcase: 6.3.0 |
| 1513 | html-tags: 3.2.0 | 1486 | html-tags: 3.2.0 |
| @@ -2072,11 +2045,12 @@ packages: | @@ -2072,11 +2045,12 @@ packages: | ||
| 2072 | - debug | 2045 | - debug |
| 2073 | dev: true | 2046 | dev: true |
| 2074 | 2047 | ||
| 2075 | - /axios/0.27.2: | ||
| 2076 | - resolution: {integrity: sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==} | 2048 | + /axios/1.1.3: |
| 2049 | + resolution: {integrity: sha512-00tXVRwKx/FZr/IDVFt4C+f9FYairX517WoGCL6dpOntqLkZofjhu43F/Xl44UOpqa+9sLFDrG/XAnFsUYgkDA==} | ||
| 2077 | dependencies: | 2050 | dependencies: |
| 2078 | follow-redirects: 1.15.2 | 2051 | follow-redirects: 1.15.2 |
| 2079 | form-data: 4.0.0 | 2052 | form-data: 4.0.0 |
| 2053 | + proxy-from-env: 1.1.0 | ||
| 2080 | transitivePeerDependencies: | 2054 | transitivePeerDependencies: |
| 2081 | - debug | 2055 | - debug |
| 2082 | dev: false | 2056 | dev: false |
| @@ -5709,6 +5683,10 @@ packages: | @@ -5709,6 +5683,10 @@ packages: | ||
| 5709 | engines: {node: '>=6'} | 5683 | engines: {node: '>=6'} |
| 5710 | dev: false | 5684 | dev: false |
| 5711 | 5685 | ||
| 5686 | + /proxy-from-env/1.1.0: | ||
| 5687 | + resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} | ||
| 5688 | + dev: false | ||
| 5689 | + | ||
| 5712 | /prr/1.0.1: | 5690 | /prr/1.0.1: |
| 5713 | resolution: {integrity: sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==} | 5691 | resolution: {integrity: sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==} |
| 5714 | dev: true | 5692 | dev: true |
| @@ -6757,7 +6735,7 @@ packages: | @@ -6757,7 +6735,7 @@ packages: | ||
| 6757 | engines: {node: '>= 10.0.0'} | 6735 | engines: {node: '>= 10.0.0'} |
| 6758 | dev: true | 6736 | dev: true |
| 6759 | 6737 | ||
| 6760 | - /unplugin-combine/0.2.8_rollup@3.2.5+vite@3.2.2: | 6738 | + /unplugin-combine/0.2.8_rollup@3.2.5+vite@3.2.3: |
| 6761 | resolution: {integrity: sha512-Z38AC/TEjXbVyZ5HjVqo+lADj0/dcfwWC0Z4y0LNhybJzJQwmcMxm+ZsqHY3faauj4YigmlRMdptR5JEW9RuLg==} | 6739 | resolution: {integrity: sha512-Z38AC/TEjXbVyZ5HjVqo+lADj0/dcfwWC0Z4y0LNhybJzJQwmcMxm+ZsqHY3faauj4YigmlRMdptR5JEW9RuLg==} |
| 6762 | engines: {node: '>=14.19.0'} | 6740 | engines: {node: '>=14.19.0'} |
| 6763 | peerDependencies: | 6741 | peerDependencies: |
| @@ -6778,7 +6756,7 @@ packages: | @@ -6778,7 +6756,7 @@ packages: | ||
| 6778 | '@antfu/utils': 0.6.0 | 6756 | '@antfu/utils': 0.6.0 |
| 6779 | rollup: 3.2.5 | 6757 | rollup: 3.2.5 |
| 6780 | unplugin: 0.10.2 | 6758 | unplugin: 0.10.2 |
| 6781 | - vite: 3.2.2_less@4.1.3 | 6759 | + vite: 3.2.3_mp5lu76ee5qtwstsyca37sdhqi |
| 6782 | dev: true | 6760 | dev: true |
| 6783 | 6761 | ||
| 6784 | /unplugin-vue-define-options/0.12.7: | 6762 | /unplugin-vue-define-options/0.12.7: |
| @@ -6791,25 +6769,25 @@ packages: | @@ -6791,25 +6769,25 @@ packages: | ||
| 6791 | unplugin: 0.10.2 | 6769 | unplugin: 0.10.2 |
| 6792 | dev: true | 6770 | dev: true |
| 6793 | 6771 | ||
| 6794 | - /unplugin-vue-macros/0.16.0_f6zolwli45a6dkgzq5zhbk2c7e: | ||
| 6795 | - resolution: {integrity: sha512-GdSJT+8Anc5zrGtZTvEnya2XVOneG0MEyyRrWWhVtn5xYEsUkrB0IxsHiT/mGjR5U+tjyQ/9sNL+FhhC54NFnQ==} | 6772 | + /unplugin-vue-macros/0.16.1_y7pktweo3ai2nyo3s3skrzfcku: |
| 6773 | + resolution: {integrity: sha512-EPgAiESpFj8o2pOdYrtD4hkmbXVzUq6f+6votCS90t3Ke2aJAnukxU2nuM9+P81PAkgggnzolXwZwdJMspHzPA==} | ||
| 6796 | engines: {node: '>=14.19.0'} | 6774 | engines: {node: '>=14.19.0'} |
| 6797 | peerDependencies: | 6775 | peerDependencies: |
| 6798 | vue: ^2.7.0 || ^3.2.25 | 6776 | vue: ^2.7.0 || ^3.2.25 |
| 6799 | dependencies: | 6777 | dependencies: |
| 6800 | '@rollup/pluginutils': 4.2.1 | 6778 | '@rollup/pluginutils': 4.2.1 |
| 6801 | - '@vue-macros/better-define': 0.0.4 | 6779 | + '@vue-macros/better-define': 0.1.0 |
| 6802 | '@vue-macros/define-model': 0.13.8_@vueuse+core@9.4.0 | 6780 | '@vue-macros/define-model': 0.13.8_@vueuse+core@9.4.0 |
| 6803 | '@vue-macros/define-props': 0.0.1_vue@3.2.41 | 6781 | '@vue-macros/define-props': 0.0.1_vue@3.2.41 |
| 6804 | '@vue-macros/define-render': 0.13.8_vue@3.2.41 | 6782 | '@vue-macros/define-render': 0.13.8_vue@3.2.41 |
| 6805 | '@vue-macros/define-slots': 0.0.5_vue@3.2.41 | 6783 | '@vue-macros/define-slots': 0.0.5_vue@3.2.41 |
| 6806 | '@vue-macros/hoist-static': 0.12.7 | 6784 | '@vue-macros/hoist-static': 0.12.7 |
| 6807 | - '@vue-macros/named-template': 0.0.5_kfit4shdbw4ah6piqfzpu53piy | ||
| 6808 | - '@vue-macros/setup-component': 0.12.7_rollup@3.2.5+vite@3.2.2 | 6785 | + '@vue-macros/named-template': 0.0.5_t3l5nd4o5yt7e6vilzibgbljou |
| 6786 | + '@vue-macros/setup-component': 0.12.7_rollup@3.2.5+vite@3.2.3 | ||
| 6809 | '@vue-macros/setup-sfc': 0.12.7 | 6787 | '@vue-macros/setup-sfc': 0.12.7 |
| 6810 | '@vue-macros/short-emits': 0.12.8 | 6788 | '@vue-macros/short-emits': 0.12.8 |
| 6811 | local-pkg: 0.4.2 | 6789 | local-pkg: 0.4.2 |
| 6812 | - unplugin-combine: 0.2.8_rollup@3.2.5+vite@3.2.2 | 6790 | + unplugin-combine: 0.2.8_rollup@3.2.5+vite@3.2.3 |
| 6813 | unplugin-vue-define-options: 0.12.7 | 6791 | unplugin-vue-define-options: 0.12.7 |
| 6814 | vue: 3.2.41 | 6792 | vue: 3.2.41 |
| 6815 | transitivePeerDependencies: | 6793 | transitivePeerDependencies: |
| @@ -6912,7 +6890,7 @@ packages: | @@ -6912,7 +6890,7 @@ packages: | ||
| 6912 | engines: {node: '>= 0.8'} | 6890 | engines: {node: '>= 0.8'} |
| 6913 | dev: true | 6891 | dev: true |
| 6914 | 6892 | ||
| 6915 | - /vite-plugin-compression/0.5.1_vite@3.2.2: | 6893 | + /vite-plugin-compression/0.5.1_vite@3.2.3: |
| 6916 | resolution: {integrity: sha512-5QJKBDc+gNYVqL/skgFAP81Yuzo9R+EAf19d+EtsMF/i8kFUpNi3J/H01QD3Oo8zBQn+NzoCIFkpPLynoOzaJg==} | 6894 | resolution: {integrity: sha512-5QJKBDc+gNYVqL/skgFAP81Yuzo9R+EAf19d+EtsMF/i8kFUpNi3J/H01QD3Oo8zBQn+NzoCIFkpPLynoOzaJg==} |
| 6917 | peerDependencies: | 6895 | peerDependencies: |
| 6918 | vite: '>=2.0.0' | 6896 | vite: '>=2.0.0' |
| @@ -6920,12 +6898,12 @@ packages: | @@ -6920,12 +6898,12 @@ packages: | ||
| 6920 | chalk: 4.1.2 | 6898 | chalk: 4.1.2 |
| 6921 | debug: 4.3.4 | 6899 | debug: 4.3.4 |
| 6922 | fs-extra: 10.1.0 | 6900 | fs-extra: 10.1.0 |
| 6923 | - vite: 3.2.2_less@4.1.3 | 6901 | + vite: 3.2.3_mp5lu76ee5qtwstsyca37sdhqi |
| 6924 | transitivePeerDependencies: | 6902 | transitivePeerDependencies: |
| 6925 | - supports-color | 6903 | - supports-color |
| 6926 | dev: true | 6904 | dev: true |
| 6927 | 6905 | ||
| 6928 | - /vite-plugin-eslint/1.8.1_eslint@8.27.0+vite@3.2.2: | 6906 | + /vite-plugin-eslint/1.8.1_eslint@8.27.0+vite@3.2.3: |
| 6929 | resolution: {integrity: sha512-PqdMf3Y2fLO9FsNPmMX+//2BF5SF8nEWspZdgl4kSt7UvHDRHVVfHvxsD7ULYzZrJDGRxR81Nq7TOFgwMnUang==} | 6907 | resolution: {integrity: sha512-PqdMf3Y2fLO9FsNPmMX+//2BF5SF8nEWspZdgl4kSt7UvHDRHVVfHvxsD7ULYzZrJDGRxR81Nq7TOFgwMnUang==} |
| 6930 | peerDependencies: | 6908 | peerDependencies: |
| 6931 | eslint: '>=7' | 6909 | eslint: '>=7' |
| @@ -6935,10 +6913,10 @@ packages: | @@ -6935,10 +6913,10 @@ packages: | ||
| 6935 | '@types/eslint': 8.4.6 | 6913 | '@types/eslint': 8.4.6 |
| 6936 | eslint: 8.27.0 | 6914 | eslint: 8.27.0 |
| 6937 | rollup: 2.79.1 | 6915 | rollup: 2.79.1 |
| 6938 | - vite: 3.2.2_less@4.1.3 | 6916 | + vite: 3.2.3_mp5lu76ee5qtwstsyca37sdhqi |
| 6939 | dev: true | 6917 | dev: true |
| 6940 | 6918 | ||
| 6941 | - /vite-plugin-html/3.2.0_vite@3.2.2: | 6919 | + /vite-plugin-html/3.2.0_vite@3.2.3: |
| 6942 | resolution: {integrity: sha512-2VLCeDiHmV/BqqNn5h2V+4280KRgQzCFN47cst3WiNK848klESPQnzuC3okH5XHtgwHH/6s1Ho/YV6yIO0pgoQ==} | 6920 | resolution: {integrity: sha512-2VLCeDiHmV/BqqNn5h2V+4280KRgQzCFN47cst3WiNK848klESPQnzuC3okH5XHtgwHH/6s1Ho/YV6yIO0pgoQ==} |
| 6943 | peerDependencies: | 6921 | peerDependencies: |
| 6944 | vite: '>=2.0.0' | 6922 | vite: '>=2.0.0' |
| @@ -6955,10 +6933,10 @@ packages: | @@ -6955,10 +6933,10 @@ packages: | ||
| 6955 | html-minifier-terser: 6.1.0 | 6933 | html-minifier-terser: 6.1.0 |
| 6956 | node-html-parser: 5.4.2 | 6934 | node-html-parser: 5.4.2 |
| 6957 | pathe: 0.2.0 | 6935 | pathe: 0.2.0 |
| 6958 | - vite: 3.2.2_less@4.1.3 | 6936 | + vite: 3.2.3_mp5lu76ee5qtwstsyca37sdhqi |
| 6959 | dev: true | 6937 | dev: true |
| 6960 | 6938 | ||
| 6961 | - /vite-plugin-purge-icons/0.9.1_vite@3.2.2: | 6939 | + /vite-plugin-purge-icons/0.9.1_vite@3.2.3: |
| 6962 | resolution: {integrity: sha512-oS0Y9Iq6vGnTDVRzB8xJNhA/gGlyR0lfCICU6+9FRKdrO5PnT34fRjvd8YWEsegCrk91+w3GVZc0HJDj/dPp5Q==} | 6940 | resolution: {integrity: sha512-oS0Y9Iq6vGnTDVRzB8xJNhA/gGlyR0lfCICU6+9FRKdrO5PnT34fRjvd8YWEsegCrk91+w3GVZc0HJDj/dPp5Q==} |
| 6963 | engines: {node: '>= 12'} | 6941 | engines: {node: '>= 12'} |
| 6964 | peerDependencies: | 6942 | peerDependencies: |
| @@ -6967,13 +6945,13 @@ packages: | @@ -6967,13 +6945,13 @@ packages: | ||
| 6967 | '@purge-icons/core': 0.9.1 | 6945 | '@purge-icons/core': 0.9.1 |
| 6968 | '@purge-icons/generated': 0.9.0 | 6946 | '@purge-icons/generated': 0.9.0 |
| 6969 | rollup-plugin-purge-icons: 0.9.1 | 6947 | rollup-plugin-purge-icons: 0.9.1 |
| 6970 | - vite: 3.2.2_less@4.1.3 | 6948 | + vite: 3.2.3_mp5lu76ee5qtwstsyca37sdhqi |
| 6971 | transitivePeerDependencies: | 6949 | transitivePeerDependencies: |
| 6972 | - encoding | 6950 | - encoding |
| 6973 | - supports-color | 6951 | - supports-color |
| 6974 | dev: true | 6952 | dev: true |
| 6975 | 6953 | ||
| 6976 | - /vite-plugin-style-import/2.0.0_vite@3.2.2: | 6954 | + /vite-plugin-style-import/2.0.0_vite@3.2.3: |
| 6977 | resolution: {integrity: sha512-qtoHQae5dSUQPo/rYz/8p190VU5y19rtBaeV7ryLa/AYAU/e9CG89NrN/3+k7MR8mJy/GPIu91iJ3zk9foUOSA==} | 6955 | resolution: {integrity: sha512-qtoHQae5dSUQPo/rYz/8p190VU5y19rtBaeV7ryLa/AYAU/e9CG89NrN/3+k7MR8mJy/GPIu91iJ3zk9foUOSA==} |
| 6978 | peerDependencies: | 6956 | peerDependencies: |
| 6979 | vite: '>=2.0.0' | 6957 | vite: '>=2.0.0' |
| @@ -6985,10 +6963,10 @@ packages: | @@ -6985,10 +6963,10 @@ packages: | ||
| 6985 | fs-extra: 10.1.0 | 6963 | fs-extra: 10.1.0 |
| 6986 | magic-string: 0.25.9 | 6964 | magic-string: 0.25.9 |
| 6987 | pathe: 0.2.0 | 6965 | pathe: 0.2.0 |
| 6988 | - vite: 3.2.2_less@4.1.3 | 6966 | + vite: 3.2.3_mp5lu76ee5qtwstsyca37sdhqi |
| 6989 | dev: true | 6967 | dev: true |
| 6990 | 6968 | ||
| 6991 | - /vite-plugin-svg-icons/2.0.1_vite@3.2.2: | 6969 | + /vite-plugin-svg-icons/2.0.1_vite@3.2.3: |
| 6992 | resolution: {integrity: sha512-6ktD+DhV6Rz3VtedYvBKKVA2eXF+sAQVaKkKLDSqGUfnhqXl3bj5PPkVTl3VexfTuZy66PmINi8Q6eFnVfRUmA==} | 6970 | resolution: {integrity: sha512-6ktD+DhV6Rz3VtedYvBKKVA2eXF+sAQVaKkKLDSqGUfnhqXl3bj5PPkVTl3VexfTuZy66PmINi8Q6eFnVfRUmA==} |
| 6993 | peerDependencies: | 6971 | peerDependencies: |
| 6994 | vite: '>=2.0.0' | 6972 | vite: '>=2.0.0' |
| @@ -7001,12 +6979,12 @@ packages: | @@ -7001,12 +6979,12 @@ packages: | ||
| 7001 | pathe: 0.2.0 | 6979 | pathe: 0.2.0 |
| 7002 | svg-baker: 1.7.0 | 6980 | svg-baker: 1.7.0 |
| 7003 | svgo: 2.8.0 | 6981 | svgo: 2.8.0 |
| 7004 | - vite: 3.2.2_less@4.1.3 | 6982 | + vite: 3.2.3_mp5lu76ee5qtwstsyca37sdhqi |
| 7005 | transitivePeerDependencies: | 6983 | transitivePeerDependencies: |
| 7006 | - supports-color | 6984 | - supports-color |
| 7007 | dev: true | 6985 | dev: true |
| 7008 | 6986 | ||
| 7009 | - /vite-plugin-windicss/1.8.8_vite@3.2.2: | 6987 | + /vite-plugin-windicss/1.8.8_vite@3.2.3: |
| 7010 | resolution: {integrity: sha512-iyu+ZX0NmhNEUaLPv7xtC+EFRBpWMmw0nhd9a9upayfuNG/thwslKiQKmRB7U/dG0k/2oWLvPDvN/B9i7oRgSA==} | 6988 | resolution: {integrity: sha512-iyu+ZX0NmhNEUaLPv7xtC+EFRBpWMmw0nhd9a9upayfuNG/thwslKiQKmRB7U/dG0k/2oWLvPDvN/B9i7oRgSA==} |
| 7011 | peerDependencies: | 6989 | peerDependencies: |
| 7012 | vite: ^2.0.1 || ^3.0.0 | 6990 | vite: ^2.0.1 || ^3.0.0 |
| @@ -7014,23 +6992,26 @@ packages: | @@ -7014,23 +6992,26 @@ packages: | ||
| 7014 | '@windicss/plugin-utils': 1.8.8 | 6992 | '@windicss/plugin-utils': 1.8.8 |
| 7015 | debug: 4.3.4 | 6993 | debug: 4.3.4 |
| 7016 | kolorist: 1.6.0 | 6994 | kolorist: 1.6.0 |
| 7017 | - vite: 3.2.2_less@4.1.3 | 6995 | + vite: 3.2.3_mp5lu76ee5qtwstsyca37sdhqi |
| 7018 | windicss: 3.5.6 | 6996 | windicss: 3.5.6 |
| 7019 | transitivePeerDependencies: | 6997 | transitivePeerDependencies: |
| 7020 | - supports-color | 6998 | - supports-color |
| 7021 | dev: true | 6999 | dev: true |
| 7022 | 7000 | ||
| 7023 | - /vite/3.2.2_less@4.1.3: | ||
| 7024 | - resolution: {integrity: sha512-pLrhatFFOWO9kS19bQ658CnRYzv0WLbsPih6R+iFeEEhDOuYgYCX2rztUViMz/uy/V8cLCJvLFeiOK7RJEzHcw==} | 7001 | + /vite/3.2.3_mp5lu76ee5qtwstsyca37sdhqi: |
| 7002 | + resolution: {integrity: sha512-h8jl1TZ76eGs3o2dIBSsvXDLb1m/Ec1iej8ZMdz+PsaFUsftZeWe2CZOI3qogEsMNaywc17gu0q6cQDzh/weCQ==} | ||
| 7025 | engines: {node: ^14.18.0 || >=16.0.0} | 7003 | engines: {node: ^14.18.0 || >=16.0.0} |
| 7026 | hasBin: true | 7004 | hasBin: true |
| 7027 | peerDependencies: | 7005 | peerDependencies: |
| 7006 | + '@types/node': '>= 14' | ||
| 7028 | less: '*' | 7007 | less: '*' |
| 7029 | sass: '*' | 7008 | sass: '*' |
| 7030 | stylus: '*' | 7009 | stylus: '*' |
| 7031 | sugarss: '*' | 7010 | sugarss: '*' |
| 7032 | terser: ^5.4.0 | 7011 | terser: ^5.4.0 |
| 7033 | peerDependenciesMeta: | 7012 | peerDependenciesMeta: |
| 7013 | + '@types/node': | ||
| 7014 | + optional: true | ||
| 7034 | less: | 7015 | less: |
| 7035 | optional: true | 7016 | optional: true |
| 7036 | sass: | 7017 | sass: |
| @@ -7042,6 +7023,7 @@ packages: | @@ -7042,6 +7023,7 @@ packages: | ||
| 7042 | terser: | 7023 | terser: |
| 7043 | optional: true | 7024 | optional: true |
| 7044 | dependencies: | 7025 | dependencies: |
| 7026 | + '@types/node': 18.11.9 | ||
| 7045 | esbuild: 0.15.10 | 7027 | esbuild: 0.15.10 |
| 7046 | less: 4.1.3 | 7028 | less: 4.1.3 |
| 7047 | postcss: 8.4.18 | 7029 | postcss: 8.4.18 |
yudao-ui-admin-vue3/src/api/system/post/types.ts
| @@ -5,7 +5,7 @@ export type PostVO = { | @@ -5,7 +5,7 @@ export type PostVO = { | ||
| 5 | sort: number | 5 | sort: number |
| 6 | status: number | 6 | status: number |
| 7 | remark: string | 7 | remark: string |
| 8 | - createTime: string | 8 | + createTime?: string |
| 9 | } | 9 | } |
| 10 | 10 | ||
| 11 | export type PostPageReqVO = { | 11 | export type PostPageReqVO = { |
yudao-ui-admin-vue3/src/components/Form/src/Form.vue
| @@ -226,6 +226,11 @@ export default defineComponent({ | @@ -226,6 +226,11 @@ export default defineComponent({ | ||
| 226 | vModel={formModel.value[item.field]} | 226 | vModel={formModel.value[item.field]} |
| 227 | {...(autoSetPlaceholder && setTextPlaceholder(item))} | 227 | {...(autoSetPlaceholder && setTextPlaceholder(item))} |
| 228 | {...setComponentProps(item)} | 228 | {...setComponentProps(item)} |
| 229 | + style={ | ||
| 230 | + item?.component === 'Input' | ||
| 231 | + ? { width: '189.5px', ...item.componentProps?.style } | ||
| 232 | + : { ...item.componentProps?.style } | ||
| 233 | + } | ||
| 229 | {...(notRenderOptions.includes(item?.component as string) && | 234 | {...(notRenderOptions.includes(item?.component as string) && |
| 230 | item?.componentProps?.options | 235 | item?.componentProps?.options |
| 231 | ? { options: item?.componentProps?.options || [] } | 236 | ? { options: item?.componentProps?.options || [] } |
yudao-ui-admin-vue3/src/components/Form/src/componentMap.ts
| @@ -10,6 +10,7 @@ import { | @@ -10,6 +10,7 @@ import { | ||
| 10 | ElRate, | 10 | ElRate, |
| 11 | ElSelect, | 11 | ElSelect, |
| 12 | ElSelectV2, | 12 | ElSelectV2, |
| 13 | + ElTreeSelect, | ||
| 13 | ElSlider, | 14 | ElSlider, |
| 14 | ElSwitch, | 15 | ElSwitch, |
| 15 | ElTimePicker, | 16 | ElTimePicker, |
| @@ -41,6 +42,7 @@ const componentMap: Recordable<Component, ComponentName> = { | @@ -41,6 +42,7 @@ const componentMap: Recordable<Component, ComponentName> = { | ||
| 41 | Divider: ElDivider, | 42 | Divider: ElDivider, |
| 42 | TimeSelect: ElTimeSelect, | 43 | TimeSelect: ElTimeSelect, |
| 43 | SelectV2: ElSelectV2, | 44 | SelectV2: ElSelectV2, |
| 45 | + TreeSelect: ElTreeSelect, | ||
| 44 | RadioButton: ElRadioGroup, | 46 | RadioButton: ElRadioGroup, |
| 45 | InputPassword: InputPassword, | 47 | InputPassword: InputPassword, |
| 46 | Editor: Editor | 48 | Editor: Editor |
yudao-ui-admin-vue3/src/components/Form/src/components/useRenderCheckbox.tsx
| @@ -11,7 +11,12 @@ export const useRenderCheckbox = () => { | @@ -11,7 +11,12 @@ export const useRenderCheckbox = () => { | ||
| 11 | typeof defineComponent | 11 | typeof defineComponent |
| 12 | > | 12 | > |
| 13 | return item?.componentProps?.options?.map((option) => { | 13 | return item?.componentProps?.options?.map((option) => { |
| 14 | - return <Com label={option[labelAlias || 'value']}>{option[valueAlias || 'label']}</Com> | 14 | + const { ...other } = option |
| 15 | + return ( | ||
| 16 | + <Com label={option[labelAlias || 'value']} {...other}> | ||
| 17 | + {option[valueAlias || 'label']} | ||
| 18 | + </Com> | ||
| 19 | + ) | ||
| 15 | }) | 20 | }) |
| 16 | } | 21 | } |
| 17 | 22 |
yudao-ui-admin-vue3/src/components/Form/src/components/useRenderRadio.tsx
| @@ -11,7 +11,12 @@ export const useRenderRadio = () => { | @@ -11,7 +11,12 @@ export const useRenderRadio = () => { | ||
| 11 | typeof defineComponent | 11 | typeof defineComponent |
| 12 | > | 12 | > |
| 13 | return item?.componentProps?.options?.map((option) => { | 13 | return item?.componentProps?.options?.map((option) => { |
| 14 | - return <Com label={option[labelAlias || 'value']}>{option[valueAlias || 'label']}</Com> | 14 | + const { ...other } = option |
| 15 | + return ( | ||
| 16 | + <Com label={option[labelAlias || 'value']} {...other}> | ||
| 17 | + {option[valueAlias || 'label']} | ||
| 18 | + </Com> | ||
| 19 | + ) | ||
| 15 | }) | 20 | }) |
| 16 | } | 21 | } |
| 17 | 22 |
yudao-ui-admin-vue3/src/components/Menu/src/Menu.vue
| @@ -220,10 +220,10 @@ export default defineComponent({ | @@ -220,10 +220,10 @@ export default defineComponent({ | ||
| 220 | 220 | ||
| 221 | // 水平菜单 | 221 | // 水平菜单 |
| 222 | &__horizontal { | 222 | &__horizontal { |
| 223 | - height: calc(~'var( - -top-tool-height)') !important; | 223 | + height: calc(~'var(--top-tool-height)') !important; |
| 224 | 224 | ||
| 225 | :deep(.@{elNamespace}-menu--horizontal) { | 225 | :deep(.@{elNamespace}-menu--horizontal) { |
| 226 | - height: calc(~'var( - -top-tool-height)'); | 226 | + height: calc(~'var(--top-tool-height)'); |
| 227 | border-bottom: none; | 227 | border-bottom: none; |
| 228 | // 重新设置底部高亮颜色 | 228 | // 重新设置底部高亮颜色 |
| 229 | & > .@{elNamespace}-sub-menu.is-active { | 229 | & > .@{elNamespace}-sub-menu.is-active { |
yudao-ui-admin-vue3/src/config/axios/service.ts
| @@ -48,7 +48,7 @@ service.interceptors.request.use( | @@ -48,7 +48,7 @@ service.interceptors.request.use( | ||
| 48 | // 设置租户 | 48 | // 设置租户 |
| 49 | if (tenantEnable) { | 49 | if (tenantEnable) { |
| 50 | const tenantId = getTenantId() | 50 | const tenantId = getTenantId() |
| 51 | - if (tenantId) (config as Recordable).headers.common['tenant-id'] = tenantId | 51 | + if (tenantId) service.defaults.headers.common['tenant-id'] = tenantId |
| 52 | } | 52 | } |
| 53 | const params = config.params || {} | 53 | const params = config.params || {} |
| 54 | const data = config.data || false | 54 | const data = config.data || false |
| @@ -94,7 +94,7 @@ service.interceptors.request.use( | @@ -94,7 +94,7 @@ service.interceptors.request.use( | ||
| 94 | 94 | ||
| 95 | // response 拦截器 | 95 | // response 拦截器 |
| 96 | service.interceptors.response.use( | 96 | service.interceptors.response.use( |
| 97 | - async (response: AxiosResponse<Recordable>) => { | 97 | + async (response: AxiosResponse<any>) => { |
| 98 | const { data } = response | 98 | const { data } = response |
| 99 | const config = response.config | 99 | const config = response.config |
| 100 | if (!data) { | 100 | if (!data) { |
| @@ -104,7 +104,6 @@ service.interceptors.response.use( | @@ -104,7 +104,6 @@ service.interceptors.response.use( | ||
| 104 | const { t } = useI18n() | 104 | const { t } = useI18n() |
| 105 | // 未设置状态码则默认成功状态 | 105 | // 未设置状态码则默认成功状态 |
| 106 | const code = data.code || result_code | 106 | const code = data.code || result_code |
| 107 | - // 二进制数据则直接返回 | ||
| 108 | if ( | 107 | if ( |
| 109 | response.request.responseType === 'blob' || | 108 | response.request.responseType === 'blob' || |
| 110 | response.request.responseType === 'arraybuffer' | 109 | response.request.responseType === 'arraybuffer' |
| @@ -126,10 +125,11 @@ service.interceptors.response.use( | @@ -126,10 +125,11 @@ service.interceptors.response.use( | ||
| 126 | } | 125 | } |
| 127 | // 2. 进行刷新访问令牌 | 126 | // 2. 进行刷新访问令牌 |
| 128 | try { | 127 | try { |
| 129 | - const refreshTokenRes = await refreshToken() | 128 | + const refreshTokenRes = refreshToken() |
| 130 | // 2.1 刷新成功,则回放队列的请求 + 当前请求 | 129 | // 2.1 刷新成功,则回放队列的请求 + 当前请求 |
| 131 | - setToken(refreshTokenRes.data.data) | 130 | + setToken((await refreshTokenRes).data.data) |
| 132 | config.headers!.Authorization = 'Bearer ' + getAccessToken() | 131 | config.headers!.Authorization = 'Bearer ' + getAccessToken() |
| 132 | + service.defaults.headers.Authorization = 'Bearer ' + getAccessToken() | ||
| 133 | requestList.forEach((cb: any) => { | 133 | requestList.forEach((cb: any) => { |
| 134 | cb() | 134 | cb() |
| 135 | }) | 135 | }) |
yudao-ui-admin-vue3/src/hooks/web/useMessage.ts
| @@ -52,13 +52,25 @@ export const useMessage = () => { | @@ -52,13 +52,25 @@ export const useMessage = () => { | ||
| 52 | ElNotification.warning(content) | 52 | ElNotification.warning(content) |
| 53 | }, | 53 | }, |
| 54 | // 确认窗体 | 54 | // 确认窗体 |
| 55 | - confirm(content: string, tip: string) { | ||
| 56 | - return ElMessageBox.confirm(content, tip, { | 55 | + confirm(content: string, tip?: string) { |
| 56 | + return ElMessageBox.confirm(content, tip ? tip : t('common.confirmTitle'), { | ||
| 57 | confirmButtonText: t('common.ok'), | 57 | confirmButtonText: t('common.ok'), |
| 58 | cancelButtonText: t('common.cancel'), | 58 | cancelButtonText: t('common.cancel'), |
| 59 | type: 'warning' | 59 | type: 'warning' |
| 60 | }) | 60 | }) |
| 61 | }, | 61 | }, |
| 62 | + // 删除窗体 | ||
| 63 | + delConfirm(content?: string, tip?: string) { | ||
| 64 | + return ElMessageBox.confirm( | ||
| 65 | + content ? content : t('common.delMessage'), | ||
| 66 | + tip ? tip : t('common.confirmTitle'), | ||
| 67 | + { | ||
| 68 | + confirmButtonText: t('common.ok'), | ||
| 69 | + cancelButtonText: t('common.cancel'), | ||
| 70 | + type: 'warning' | ||
| 71 | + } | ||
| 72 | + ) | ||
| 73 | + }, | ||
| 62 | // 提交内容 | 74 | // 提交内容 |
| 63 | prompt(content: string, tip: string) { | 75 | prompt(content: string, tip: string) { |
| 64 | return ElMessageBox.prompt(content, tip, { | 76 | return ElMessageBox.prompt(content, tip, { |
yudao-ui-admin-vue3/src/hooks/web/useVxeCrudSchemas.ts
| @@ -3,6 +3,7 @@ import { getIntDictOptions } from '@/utils/dict' | @@ -3,6 +3,7 @@ import { getIntDictOptions } from '@/utils/dict' | ||
| 3 | import { reactive } from 'vue' | 3 | import { reactive } from 'vue' |
| 4 | import { | 4 | import { |
| 5 | FormItemRenderOptions, | 5 | FormItemRenderOptions, |
| 6 | + VxeColumnPropTypes, | ||
| 6 | VxeFormItemProps, | 7 | VxeFormItemProps, |
| 7 | VxeGridPropTypes, | 8 | VxeGridPropTypes, |
| 8 | VxeTableDefines | 9 | VxeTableDefines |
| @@ -10,15 +11,18 @@ import { | @@ -10,15 +11,18 @@ import { | ||
| 10 | import { eachTree } from 'xe-utils' | 11 | import { eachTree } from 'xe-utils' |
| 11 | import { useI18n } from '@/hooks/web/useI18n' | 12 | import { useI18n } from '@/hooks/web/useI18n' |
| 12 | import { VxeTableColumn } from '@/types/table' | 13 | import { VxeTableColumn } from '@/types/table' |
| 14 | +import { FormSchema } from '@/types/form' | ||
| 15 | +import { ComponentOptions } from '@/types/components' | ||
| 13 | 16 | ||
| 14 | export type VxeCrudSchema = Omit<VxeTableColumn, 'children'> & { | 17 | export type VxeCrudSchema = Omit<VxeTableColumn, 'children'> & { |
| 15 | field: string | 18 | field: string |
| 16 | title?: string | 19 | title?: string |
| 20 | + formatter?: VxeColumnPropTypes.Formatter | ||
| 17 | search?: CrudSearchParams | 21 | search?: CrudSearchParams |
| 18 | table?: CrudTableParams | 22 | table?: CrudTableParams |
| 19 | form?: CrudFormParams | 23 | form?: CrudFormParams |
| 20 | detail?: CrudDescriptionsParams | 24 | detail?: CrudDescriptionsParams |
| 21 | - print?: boolean | 25 | + print?: CrudPrintParams |
| 22 | children?: VxeCrudSchema[] | 26 | children?: VxeCrudSchema[] |
| 23 | dictType?: string | 27 | dictType?: string |
| 24 | } | 28 | } |
| @@ -35,17 +39,22 @@ type CrudTableParams = { | @@ -35,17 +39,22 @@ type CrudTableParams = { | ||
| 35 | type CrudFormParams = { | 39 | type CrudFormParams = { |
| 36 | // 是否显示表单项 | 40 | // 是否显示表单项 |
| 37 | show?: boolean | 41 | show?: boolean |
| 38 | -} & Omit<VxeFormItemProps, 'field'> | 42 | +} & Omit<FormSchema, 'field'> |
| 39 | 43 | ||
| 40 | type CrudDescriptionsParams = { | 44 | type CrudDescriptionsParams = { |
| 41 | // 是否显示表单项 | 45 | // 是否显示表单项 |
| 42 | show?: boolean | 46 | show?: boolean |
| 43 | } & Omit<DescriptionsSchema, 'field'> | 47 | } & Omit<DescriptionsSchema, 'field'> |
| 44 | 48 | ||
| 45 | -interface VxeAllSchemas { | 49 | +type CrudPrintParams = { |
| 50 | + // 是否显示表单项 | ||
| 51 | + show?: boolean | ||
| 52 | +} & Omit<VxeTableDefines.ColumnInfo[], 'field'> | ||
| 53 | + | ||
| 54 | +export type VxeAllSchemas = { | ||
| 46 | searchSchema: VxeFormItemProps[] | 55 | searchSchema: VxeFormItemProps[] |
| 47 | tableSchema: VxeGridPropTypes.Columns | 56 | tableSchema: VxeGridPropTypes.Columns |
| 48 | - formSchema: VxeFormItemProps[] | 57 | + formSchema: FormSchema[] |
| 49 | detailSchema: DescriptionsSchema[] | 58 | detailSchema: DescriptionsSchema[] |
| 50 | printSchema: VxeTableDefines.ColumnInfo[] | 59 | printSchema: VxeTableDefines.ColumnInfo[] |
| 51 | } | 60 | } |
| @@ -155,6 +164,9 @@ const filterTableSchema = (crudSchema: VxeCrudSchema[]): VxeGridPropTypes.Column | @@ -155,6 +164,9 @@ const filterTableSchema = (crudSchema: VxeCrudSchema[]): VxeGridPropTypes.Column | ||
| 155 | field: schemaItem.field, | 164 | field: schemaItem.field, |
| 156 | title: schemaItem.table?.title || schemaItem.title | 165 | title: schemaItem.table?.title || schemaItem.title |
| 157 | } | 166 | } |
| 167 | + if (schemaItem?.formatter) { | ||
| 168 | + tableSchemaItem.formatter = schemaItem.formatter | ||
| 169 | + } | ||
| 158 | 170 | ||
| 159 | // 删除不必要的字段 | 171 | // 删除不必要的字段 |
| 160 | delete tableSchemaItem.show | 172 | delete tableSchemaItem.show |
| @@ -166,32 +178,31 @@ const filterTableSchema = (crudSchema: VxeCrudSchema[]): VxeGridPropTypes.Column | @@ -166,32 +178,31 @@ const filterTableSchema = (crudSchema: VxeCrudSchema[]): VxeGridPropTypes.Column | ||
| 166 | } | 178 | } |
| 167 | 179 | ||
| 168 | // 过滤 form 结构 | 180 | // 过滤 form 结构 |
| 169 | -const filterFormSchema = (crudSchema: VxeCrudSchema[]): VxeFormItemProps[] => { | ||
| 170 | - const formSchema: VxeFormItemProps[] = [] | ||
| 171 | - const { t } = useI18n() | 181 | +const filterFormSchema = (crudSchema: VxeCrudSchema[]): FormSchema[] => { |
| 182 | + const formSchema: FormSchema[] = [] | ||
| 183 | + | ||
| 172 | eachTree(crudSchema, (schemaItem: VxeCrudSchema) => { | 184 | eachTree(crudSchema, (schemaItem: VxeCrudSchema) => { |
| 173 | // 判断是否显示 | 185 | // 判断是否显示 |
| 174 | if (schemaItem?.form?.show !== false) { | 186 | if (schemaItem?.form?.show !== false) { |
| 175 | - let itemRenderName = schemaItem?.form?.itemRender?.name || '$input' | ||
| 176 | - let itemRender: FormItemRenderOptions = { | ||
| 177 | - name: itemRenderName, | ||
| 178 | - props: { placeholder: t('common.inputText') } | ||
| 179 | - } | 187 | + let component = schemaItem?.form?.component || 'Input' |
| 188 | + const options: ComponentOptions[] = [] | ||
| 189 | + let comonentProps = {} | ||
| 180 | if (schemaItem.dictType) { | 190 | if (schemaItem.dictType) { |
| 181 | - if (!(schemaItem.form && schemaItem.form.itemRender?.name)) itemRenderName = '$select' | ||
| 182 | - itemRender = { | ||
| 183 | - name: itemRenderName, | ||
| 184 | - options: getIntDictOptions(schemaItem.dictType), | ||
| 185 | - props: { placeholder: t('common.selectText') } | 191 | + getIntDictOptions(schemaItem.dictType).forEach((dict) => { |
| 192 | + options.push(dict) | ||
| 193 | + }) | ||
| 194 | + comonentProps = { | ||
| 195 | + options: options | ||
| 186 | } | 196 | } |
| 197 | + if (!(schemaItem.form && schemaItem.form.component)) component = 'Select' | ||
| 187 | } | 198 | } |
| 188 | const formSchemaItem = { | 199 | const formSchemaItem = { |
| 189 | // 默认为 input | 200 | // 默认为 input |
| 190 | - itemRender: itemRender, | 201 | + component: component, |
| 202 | + componentProps: comonentProps, | ||
| 191 | ...schemaItem.form, | 203 | ...schemaItem.form, |
| 192 | - span: schemaItem.form?.span || 12, | ||
| 193 | field: schemaItem.field, | 204 | field: schemaItem.field, |
| 194 | - title: schemaItem.form?.title || schemaItem.title | 205 | + label: schemaItem.form?.label || schemaItem.title |
| 195 | } | 206 | } |
| 196 | 207 | ||
| 197 | // 删除不必要的字段 | 208 | // 删除不必要的字段 |
| @@ -233,7 +244,7 @@ const filterPrintSchema = (crudSchema: VxeCrudSchema[]): any[] => { | @@ -233,7 +244,7 @@ const filterPrintSchema = (crudSchema: VxeCrudSchema[]): any[] => { | ||
| 233 | 244 | ||
| 234 | eachTree(crudSchema, (schemaItem: VxeCrudSchema) => { | 245 | eachTree(crudSchema, (schemaItem: VxeCrudSchema) => { |
| 235 | // 判断是否显示 | 246 | // 判断是否显示 |
| 236 | - if (schemaItem?.detail?.show !== false) { | 247 | + if (schemaItem?.print?.show !== false) { |
| 237 | const printSchemaItem = { | 248 | const printSchemaItem = { |
| 238 | field: schemaItem.field | 249 | field: schemaItem.field |
| 239 | } | 250 | } |
yudao-ui-admin-vue3/src/hooks/web/useVxeGrid.ts
| 1 | -import { reactive } from 'vue' | 1 | +import { computed, reactive } from 'vue' |
| 2 | import { VxeGridProps } from 'vxe-table' | 2 | import { VxeGridProps } from 'vxe-table' |
| 3 | +import { useAppStore } from '@/store/modules/app' | ||
| 4 | +import { VxeAllSchemas } from './useVxeCrudSchemas' | ||
| 5 | +import { useI18n } from '@/hooks/web/useI18n' | ||
| 6 | +import { useMessage } from '@/hooks/web/useMessage' | ||
| 3 | 7 | ||
| 4 | -export const useVxeGrid = (allSchemas, getPageApi) => { | 8 | +const { t } = useI18n() |
| 9 | +const message = useMessage() // 消息弹窗 | ||
| 10 | + | ||
| 11 | +interface UseVxeGridConfig<T = any> { | ||
| 12 | + allSchemas: VxeAllSchemas | ||
| 13 | + getListApi: (option: any) => Promise<T> | ||
| 14 | + delListApi?: (option: any) => Promise<T> | ||
| 15 | + exportListApi?: (option: any) => Promise<T> | ||
| 16 | +} | ||
| 17 | + | ||
| 18 | +const appStore = useAppStore() | ||
| 19 | + | ||
| 20 | +const currentSize = computed(() => { | ||
| 21 | + if (appStore.getCurrentSize === 'small') { | ||
| 22 | + return 'small' | ||
| 23 | + } else if (appStore.getCurrentSize === 'large') { | ||
| 24 | + return 'mini' | ||
| 25 | + } else { | ||
| 26 | + return 'medium' | ||
| 27 | + } | ||
| 28 | +}) | ||
| 29 | + | ||
| 30 | +export const useVxeGrid = <T = any>(config?: UseVxeGridConfig<T>) => { | ||
| 5 | const gridOptions = reactive<VxeGridProps>({ | 31 | const gridOptions = reactive<VxeGridProps>({ |
| 6 | - loading: false, | 32 | + loading: true, |
| 33 | + size: currentSize.value, | ||
| 7 | height: 800, | 34 | height: 800, |
| 8 | rowConfig: { | 35 | rowConfig: { |
| 9 | - keyField: 'id', | ||
| 10 | - isHover: true | 36 | + isCurrent: true, // 当鼠标点击行时,是否要高亮当前行 |
| 37 | + isHover: true // 当鼠标移到行时,是否要高亮当前行 | ||
| 38 | + }, | ||
| 39 | + showOverflow: 'tooltip', // 当内容溢出时显示为省略号 | ||
| 40 | + tooltipConfig: { | ||
| 41 | + showAll: true // 开启全表工具提示 | ||
| 11 | }, | 42 | }, |
| 12 | toolbarConfig: { | 43 | toolbarConfig: { |
| 13 | custom: true, | 44 | custom: true, |
| 14 | slots: { buttons: 'toolbar_buttons' } | 45 | slots: { buttons: 'toolbar_buttons' } |
| 15 | }, | 46 | }, |
| 16 | printConfig: { | 47 | printConfig: { |
| 17 | - columns: allSchemas.printSchema | 48 | + columns: config?.allSchemas.printSchema |
| 18 | }, | 49 | }, |
| 19 | formConfig: { | 50 | formConfig: { |
| 20 | titleWidth: 100, | 51 | titleWidth: 100, |
| 21 | titleAlign: 'right', | 52 | titleAlign: 'right', |
| 22 | - items: allSchemas.searchSchema | 53 | + items: config?.allSchemas.searchSchema |
| 23 | }, | 54 | }, |
| 24 | - columns: allSchemas.tableSchema, | 55 | + columns: config?.allSchemas.tableSchema, |
| 25 | pagerConfig: { | 56 | pagerConfig: { |
| 26 | - border: false, | ||
| 27 | - background: false, | ||
| 28 | - perfect: true, | ||
| 29 | - pageSize: 10, | ||
| 30 | - pagerCount: 7, | ||
| 31 | - pageSizes: [5, 10, 15, 20, 50, 100, 200, 500], | 57 | + border: false, // 带边框 |
| 58 | + background: true, // 带背景颜色 | ||
| 59 | + perfect: true, // 配套的样式 | ||
| 60 | + pageSize: 10, // 每页大小 | ||
| 61 | + pagerCount: 7, // 显示页码按钮的数量 | ||
| 62 | + autoHidden: true, // 当只有一页时自动隐藏 | ||
| 63 | + pageSizes: [5, 10, 15, 20, 50, 100, 200, 500], // 每页大小选项列表 | ||
| 32 | layouts: [ | 64 | layouts: [ |
| 33 | 'PrevJump', | 65 | 'PrevJump', |
| 34 | 'PrevPage', | 66 | 'PrevPage', |
| @@ -49,12 +81,22 @@ export const useVxeGrid = (allSchemas, getPageApi) => { | @@ -49,12 +81,22 @@ export const useVxeGrid = (allSchemas, getPageApi) => { | ||
| 49 | const queryParams = Object.assign({}, form) | 81 | const queryParams = Object.assign({}, form) |
| 50 | queryParams.pageSize = page.pageSize | 82 | queryParams.pageSize = page.pageSize |
| 51 | queryParams.pageNo = page.currentPage | 83 | queryParams.pageNo = page.currentPage |
| 84 | + gridOptions.loading = false | ||
| 52 | return new Promise(async (resolve) => { | 85 | return new Promise(async (resolve) => { |
| 53 | - resolve(await getPageApi(queryParams)) | 86 | + resolve(await config?.getListApi(queryParams)) |
| 54 | }) | 87 | }) |
| 55 | } | 88 | } |
| 56 | } | 89 | } |
| 57 | } | 90 | } |
| 58 | }) | 91 | }) |
| 59 | - return gridOptions | 92 | + const delList = (ids: string | number | string[] | number[]) => { |
| 93 | + message.delConfirm().then(() => { | ||
| 94 | + config?.delListApi && config?.delListApi(ids) | ||
| 95 | + message.success(t('common.delSuccess')) | ||
| 96 | + }) | ||
| 97 | + } | ||
| 98 | + return { | ||
| 99 | + gridOptions, | ||
| 100 | + delList | ||
| 101 | + } | ||
| 60 | } | 102 | } |
yudao-ui-admin-vue3/src/plugins/vxeTable/index.ts
yudao-ui-admin-vue3/src/styles/index.less
yudao-ui-admin-vue3/src/styles/vxe.css
0 → 100644
| 1 | +/*滚动条整体部分*/ | ||
| 2 | +.xtable-scrollbar ::-webkit-scrollbar { | ||
| 3 | + width: 10px; | ||
| 4 | + height: 10px; | ||
| 5 | +} | ||
| 6 | +/*滚动条的轨道*/ | ||
| 7 | +.xtable-scrollbar ::-webkit-scrollbar-track { | ||
| 8 | + background-color: #ffffff; | ||
| 9 | +} | ||
| 10 | +/*滚动条里面的小方块,能向上向下移动*/ | ||
| 11 | +.xtable-scrollbar ::-webkit-scrollbar-thumb { | ||
| 12 | + background-color: #bfbfbf; | ||
| 13 | + border-radius: 5px; | ||
| 14 | + border: 1px solid #f1f1f1; | ||
| 15 | + box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3); | ||
| 16 | +} | ||
| 17 | +.xtable-scrollbar ::-webkit-scrollbar-thumb:hover { | ||
| 18 | + background-color: #a8a8a8; | ||
| 19 | +} | ||
| 20 | +.xtable-scrollbar ::-webkit-scrollbar-thumb:active { | ||
| 21 | + background-color: #787878; | ||
| 22 | +} | ||
| 23 | +/*边角,即两个滚动条的交汇处*/ | ||
| 24 | +.xtable-scrollbar ::-webkit-scrollbar-corner { | ||
| 25 | + background-color: #ffffff; | ||
| 26 | +} |
yudao-ui-admin-vue3/src/types/components.d.ts
yudao-ui-admin-vue3/src/views/Login/components/LoginForm.vue
| @@ -125,7 +125,7 @@ const handleLogin = async (params) => { | @@ -125,7 +125,7 @@ const handleLogin = async (params) => { | ||
| 125 | redirect.value = '/' | 125 | redirect.value = '/' |
| 126 | } | 126 | } |
| 127 | push({ path: redirect.value || permissionStore.addRouters[0].path }) | 127 | push({ path: redirect.value || permissionStore.addRouters[0].path }) |
| 128 | - } finally { | 128 | + } catch { |
| 129 | loginLoading.value = false | 129 | loginLoading.value = false |
| 130 | } | 130 | } |
| 131 | } | 131 | } |
yudao-ui-admin-vue3/src/views/infra/codegen/components/CloumInfoForm.vue
| 1 | <script setup lang="ts"> | 1 | <script setup lang="ts"> |
| 2 | -import { ElTable, ElTableColumn, ElInput, ElSelect, ElOption, ElCheckbox } from 'element-plus' | ||
| 3 | import { onMounted, PropType, ref } from 'vue' | 2 | import { onMounted, PropType, ref } from 'vue' |
| 3 | +import { ElInput, ElSelect, ElOption } from 'element-plus' | ||
| 4 | import { CodegenColumnVO } from '@/api/infra/codegen/types' | 4 | import { CodegenColumnVO } from '@/api/infra/codegen/types' |
| 5 | import { listSimpleDictTypeApi } from '@/api/system/dict/dict.type' | 5 | import { listSimpleDictTypeApi } from '@/api/system/dict/dict.type' |
| 6 | import { DictTypeVO } from '@/api/system/dict/types' | 6 | import { DictTypeVO } from '@/api/system/dict/types' |
| @@ -16,7 +16,6 @@ const getDictOptions = async () => { | @@ -16,7 +16,6 @@ const getDictOptions = async () => { | ||
| 16 | const res = await listSimpleDictTypeApi() | 16 | const res = await listSimpleDictTypeApi() |
| 17 | dictOptions.value = res | 17 | dictOptions.value = res |
| 18 | } | 18 | } |
| 19 | -const tableHeight = document.documentElement.scrollHeight - 245 + 'px' | ||
| 20 | onMounted(async () => { | 19 | onMounted(async () => { |
| 21 | await getDictOptions() | 20 | await getDictOptions() |
| 22 | }) | 21 | }) |
| @@ -25,25 +24,15 @@ defineExpose({ | @@ -25,25 +24,15 @@ defineExpose({ | ||
| 25 | }) | 24 | }) |
| 26 | </script> | 25 | </script> |
| 27 | <template> | 26 | <template> |
| 28 | - <el-table ref="dragTable" :data="info" row-key="columnId" :max-height="tableHeight"> | ||
| 29 | - <el-table-column | ||
| 30 | - label="字段列名" | ||
| 31 | - prop="columnName" | ||
| 32 | - min-width="10%" | ||
| 33 | - :show-overflow-tooltip="true" | ||
| 34 | - /> | ||
| 35 | - <el-table-column label="字段描述" min-width="10%" prop="columnComment"> | 27 | + <vxe-table ref="dragTable" :data="info" stripe :column-config="{ resizable: true }"> |
| 28 | + <vxe-column title="字段列名" field="columnName" width="10%" /> | ||
| 29 | + <vxe-column title="字段描述" field="columnComment"> | ||
| 36 | <template #default="{ row }"> | 30 | <template #default="{ row }"> |
| 37 | <el-input v-model="row.columnComment" /> | 31 | <el-input v-model="row.columnComment" /> |
| 38 | </template> | 32 | </template> |
| 39 | - </el-table-column> | ||
| 40 | - <el-table-column | ||
| 41 | - label="物理类型" | ||
| 42 | - prop="dataType" | ||
| 43 | - min-width="10%" | ||
| 44 | - :show-overflow-tooltip="true" | ||
| 45 | - /> | ||
| 46 | - <el-table-column label="Java类型" min-width="11%" prop="javaType"> | 33 | + </vxe-column> |
| 34 | + <vxe-column title="物理类型" field="dataType" width="10%" /> | ||
| 35 | + <vxe-column title="Java类型" width="10%" field="javaType"> | ||
| 47 | <template #default="{ row }"> | 36 | <template #default="{ row }"> |
| 48 | <el-select v-model="row.javaType"> | 37 | <el-select v-model="row.javaType"> |
| 49 | <el-option label="Long" value="Long" /> | 38 | <el-option label="Long" value="Long" /> |
| @@ -55,33 +44,33 @@ defineExpose({ | @@ -55,33 +44,33 @@ defineExpose({ | ||
| 55 | <el-option label="Boolean" value="Boolean" /> | 44 | <el-option label="Boolean" value="Boolean" /> |
| 56 | </el-select> | 45 | </el-select> |
| 57 | </template> | 46 | </template> |
| 58 | - </el-table-column> | ||
| 59 | - <el-table-column label="java属性" min-width="10%" prop="javaField"> | 47 | + </vxe-column> |
| 48 | + <vxe-column title="java属性" width="10%" field="javaField"> | ||
| 60 | <template #default="{ row }"> | 49 | <template #default="{ row }"> |
| 61 | <el-input v-model="row.javaField" /> | 50 | <el-input v-model="row.javaField" /> |
| 62 | </template> | 51 | </template> |
| 63 | - </el-table-column> | ||
| 64 | - <el-table-column label="插入" min-width="4%" prop="createOperation"> | 52 | + </vxe-column> |
| 53 | + <vxe-column title="插入" width="4%" field="createOperation"> | ||
| 65 | <template #default="{ row }"> | 54 | <template #default="{ row }"> |
| 66 | - <el-checkbox true-label="true" false-label="false" v-model="row.createOperation" /> | 55 | + <vxe-checkbox true-label="true" false-label="false" v-model="row.createOperation" /> |
| 67 | </template> | 56 | </template> |
| 68 | - </el-table-column> | ||
| 69 | - <el-table-column label="编辑" min-width="4%" prop="updateOperation"> | 57 | + </vxe-column> |
| 58 | + <vxe-column title="编辑" width="4%" field="updateOperation"> | ||
| 70 | <template #default="{ row }"> | 59 | <template #default="{ row }"> |
| 71 | - <el-checkbox true-label="true" false-label="false" v-model="row.updateOperation" /> | 60 | + <vxe-checkbox true-label="true" false-label="false" v-model="row.updateOperation" /> |
| 72 | </template> | 61 | </template> |
| 73 | - </el-table-column> | ||
| 74 | - <el-table-column label="列表" min-width="4%" prop="listOperationResult"> | 62 | + </vxe-column> |
| 63 | + <vxe-column title="列表" width="4%" field="listOperationResult"> | ||
| 75 | <template #default="{ row }"> | 64 | <template #default="{ row }"> |
| 76 | - <el-checkbox true-label="true" false-label="false" v-model="row.listOperationResult" /> | 65 | + <vxe-checkbox true-label="true" false-label="false" v-model="row.listOperationResult" /> |
| 77 | </template> | 66 | </template> |
| 78 | - </el-table-column> | ||
| 79 | - <el-table-column label="查询" min-width="4%" prop="listOperation"> | 67 | + </vxe-column> |
| 68 | + <vxe-column title="查询" width="4%" field="listOperation"> | ||
| 80 | <template #default="{ row }"> | 69 | <template #default="{ row }"> |
| 81 | - <el-checkbox true-label="true" false-label="false" v-model="row.listOperation" /> | 70 | + <vxe-checkbox true-label="true" false-label="false" v-model="row.listOperation" /> |
| 82 | </template> | 71 | </template> |
| 83 | - </el-table-column> | ||
| 84 | - <el-table-column label="查询方式" min-width="10%" prop="listOperationCondition"> | 72 | + </vxe-column> |
| 73 | + <vxe-column title="查询方式" width="8%" field="listOperationCondition"> | ||
| 85 | <template #default="{ row }"> | 74 | <template #default="{ row }"> |
| 86 | <el-select v-model="row.listOperationCondition"> | 75 | <el-select v-model="row.listOperationCondition"> |
| 87 | <el-option label="=" value="=" /> | 76 | <el-option label="=" value="=" /> |
| @@ -94,13 +83,13 @@ defineExpose({ | @@ -94,13 +83,13 @@ defineExpose({ | ||
| 94 | <el-option label="BETWEEN" value="BETWEEN" /> | 83 | <el-option label="BETWEEN" value="BETWEEN" /> |
| 95 | </el-select> | 84 | </el-select> |
| 96 | </template> | 85 | </template> |
| 97 | - </el-table-column> | ||
| 98 | - <el-table-column label="允许空" min-width="5%" prop="nullable"> | 86 | + </vxe-column> |
| 87 | + <vxe-column title="允许空" width="4%" field="nullable"> | ||
| 99 | <template #default="{ row }"> | 88 | <template #default="{ row }"> |
| 100 | - <el-checkbox true-label="true" false-label="false" v-model="row.nullable" /> | 89 | + <vxe-checkbox true-label="true" false-label="false" v-model="row.nullable" /> |
| 101 | </template> | 90 | </template> |
| 102 | - </el-table-column> | ||
| 103 | - <el-table-column label="显示类型" min-width="12%" prop="htmlType"> | 91 | + </vxe-column> |
| 92 | + <vxe-column title="显示类型" width="10%" field="htmlType"> | ||
| 104 | <template #default="{ row }"> | 93 | <template #default="{ row }"> |
| 105 | <el-select v-model="row.htmlType"> | 94 | <el-select v-model="row.htmlType"> |
| 106 | <el-option label="文本框" value="input" /> | 95 | <el-option label="文本框" value="input" /> |
| @@ -114,8 +103,8 @@ defineExpose({ | @@ -114,8 +103,8 @@ defineExpose({ | ||
| 114 | <el-option label="富文本控件" value="editor" /> | 103 | <el-option label="富文本控件" value="editor" /> |
| 115 | </el-select> | 104 | </el-select> |
| 116 | </template> | 105 | </template> |
| 117 | - </el-table-column> | ||
| 118 | - <el-table-column label="字典类型" min-width="12%" prop="dictType"> | 106 | + </vxe-column> |
| 107 | + <vxe-column title="字典类型" width="10%" field="dictType"> | ||
| 119 | <template #default="{ row }"> | 108 | <template #default="{ row }"> |
| 120 | <el-select v-model="row.dictType" clearable filterable placeholder="请选择"> | 109 | <el-select v-model="row.dictType" clearable filterable placeholder="请选择"> |
| 121 | <el-option | 110 | <el-option |
| @@ -126,11 +115,11 @@ defineExpose({ | @@ -126,11 +115,11 @@ defineExpose({ | ||
| 126 | /> | 115 | /> |
| 127 | </el-select> | 116 | </el-select> |
| 128 | </template> | 117 | </template> |
| 129 | - </el-table-column> | ||
| 130 | - <el-table-column label="示例" min-width="10%" prop="example"> | 118 | + </vxe-column> |
| 119 | + <vxe-column title="示例" field="example"> | ||
| 131 | <template #default="{ row }"> | 120 | <template #default="{ row }"> |
| 132 | <el-input v-model="row.example" /> | 121 | <el-input v-model="row.example" /> |
| 133 | </template> | 122 | </template> |
| 134 | - </el-table-column> | ||
| 135 | - </el-table> | 123 | + </vxe-column> |
| 124 | + </vxe-table> | ||
| 136 | </template> | 125 | </template> |
yudao-ui-admin-vue3/src/views/system/menu/index.vue
| @@ -318,8 +318,8 @@ const queryParams = reactive({ | @@ -318,8 +318,8 @@ const queryParams = reactive({ | ||
| 318 | status: null | 318 | status: null |
| 319 | }) | 319 | }) |
| 320 | const getList = async () => { | 320 | const getList = async () => { |
| 321 | - statusOption.value = getIntDictOptions(DICT_TYPE.COMMON_STATUS) | ||
| 322 | tableLoading.value = true | 321 | tableLoading.value = true |
| 322 | + statusOption.value = getIntDictOptions(DICT_TYPE.COMMON_STATUS) | ||
| 323 | const res = await MenuApi.getMenuListApi(queryParams) | 323 | const res = await MenuApi.getMenuListApi(queryParams) |
| 324 | tableData.value = res | 324 | tableData.value = res |
| 325 | tableLoading.value = false | 325 | tableLoading.value = false |
yudao-ui-admin-vue3/src/views/system/post/index.vue
| @@ -44,12 +44,11 @@ | @@ -44,12 +44,11 @@ | ||
| 44 | <XModal id="postModel" v-model="dialogVisible" :title="dialogTitle"> | 44 | <XModal id="postModel" v-model="dialogVisible" :title="dialogTitle"> |
| 45 | <template #default> | 45 | <template #default> |
| 46 | <!-- 对话框(添加 / 修改) --> | 46 | <!-- 对话框(添加 / 修改) --> |
| 47 | - <vxe-form | ||
| 48 | - ref="xForm" | 47 | + <Form |
| 49 | v-if="['create', 'update'].includes(actionType)" | 48 | v-if="['create', 'update'].includes(actionType)" |
| 50 | - :data="formData" | ||
| 51 | - :items="formItems" | 49 | + :schema="allSchemas.formSchema" |
| 52 | :rules="rules" | 50 | :rules="rules" |
| 51 | + ref="formRef" | ||
| 53 | /> | 52 | /> |
| 54 | <Descriptions | 53 | <Descriptions |
| 55 | v-if="actionType === 'detail'" | 54 | v-if="actionType === 'detail'" |
| @@ -69,42 +68,39 @@ | @@ -69,42 +68,39 @@ | ||
| 69 | v-if="['create', 'update'].includes(actionType)" | 68 | v-if="['create', 'update'].includes(actionType)" |
| 70 | :loading="actionLoading" | 69 | :loading="actionLoading" |
| 71 | :title="t('action.save')" | 70 | :title="t('action.save')" |
| 71 | + type="primary" | ||
| 72 | @click="submitForm" | 72 | @click="submitForm" |
| 73 | /> | 73 | /> |
| 74 | - <XButton | ||
| 75 | - v-if="['create', 'update'].includes(actionType)" | ||
| 76 | - :loading="actionLoading" | ||
| 77 | - :title="t('dialog.close')" | ||
| 78 | - @click="dialogVisible = false" | ||
| 79 | - /> | 74 | + <XButton :loading="actionLoading" :title="t('dialog.close')" @click="dialogVisible = false" /> |
| 80 | </template> | 75 | </template> |
| 81 | </XModal> | 76 | </XModal> |
| 82 | </template> | 77 | </template> |
| 83 | <script setup lang="ts"> | 78 | <script setup lang="ts"> |
| 84 | -import { ref } from 'vue' | 79 | +import { ref, unref } from 'vue' |
| 85 | import dayjs from 'dayjs' | 80 | import dayjs from 'dayjs' |
| 86 | -import { useI18n } from '@/hooks/web/useI18n' | ||
| 87 | -import { VxeFormEvents, VxeFormInstance, VxeFormItemProps, VxeGridInstance } from 'vxe-table' | ||
| 88 | -import * as PostApi from '@/api/system/post' | ||
| 89 | import { DICT_TYPE } from '@/utils/dict' | 81 | import { DICT_TYPE } from '@/utils/dict' |
| 90 | -import { ContentWrap } from '@/components/ContentWrap' | 82 | +import * as PostApi from '@/api/system/post' |
| 91 | import { PostVO } from '@/api/system/post/types' | 83 | import { PostVO } from '@/api/system/post/types' |
| 92 | import { rules, allSchemas } from './post.data' | 84 | import { rules, allSchemas } from './post.data' |
| 85 | +import { useI18n } from '@/hooks/web/useI18n' | ||
| 93 | import { useMessage } from '@/hooks/web/useMessage' | 86 | import { useMessage } from '@/hooks/web/useMessage' |
| 94 | import { useVxeGrid } from '@/hooks/web/useVxeGrid' | 87 | import { useVxeGrid } from '@/hooks/web/useVxeGrid' |
| 88 | +import { VxeFormEvents, VxeGridInstance } from 'vxe-table' | ||
| 89 | +import { FormExpose } from '@/components/Form' | ||
| 95 | 90 | ||
| 96 | const { t } = useI18n() // 国际化 | 91 | const { t } = useI18n() // 国际化 |
| 97 | -const message = useMessage() | 92 | +const message = useMessage() // 消息弹窗 |
| 98 | const xGrid = ref<VxeGridInstance>() | 93 | const xGrid = ref<VxeGridInstance>() |
| 99 | -const xForm = ref<VxeFormInstance>() | 94 | +const formRef = ref<FormExpose>() // 表单 Ref |
| 100 | const dialogVisible = ref(false) // 是否显示弹出层 | 95 | const dialogVisible = ref(false) // 是否显示弹出层 |
| 101 | const dialogTitle = ref('edit') // 弹出层标题 | 96 | const dialogTitle = ref('edit') // 弹出层标题 |
| 102 | const actionType = ref('') // 操作按钮的类型 | 97 | const actionType = ref('') // 操作按钮的类型 |
| 103 | -const actionLoading = ref(false) // 遮罩层 | 98 | +const actionLoading = ref(false) // 按钮Loading |
| 104 | 99 | ||
| 105 | -const gridOptions = useVxeGrid(allSchemas, PostApi.getPostPageApi) | ||
| 106 | -const formData = ref<PostVO>() | ||
| 107 | -const formItems = ref<VxeFormItemProps[]>(allSchemas.formSchema) | 100 | +const { gridOptions } = useVxeGrid<PostVO>({ |
| 101 | + allSchemas: allSchemas, | ||
| 102 | + getListApi: PostApi.getPostPageApi | ||
| 103 | +}) | ||
| 108 | // 设置标题 | 104 | // 设置标题 |
| 109 | const setDialogTile = (type: string) => { | 105 | const setDialogTile = (type: string) => { |
| 110 | dialogTitle.value = t('action.' + type) | 106 | dialogTitle.value = t('action.' + type) |
| @@ -121,7 +117,8 @@ const handleDetail = (row: PostVO) => { | @@ -121,7 +117,8 @@ const handleDetail = (row: PostVO) => { | ||
| 121 | // 新增操作 | 117 | // 新增操作 |
| 122 | const handleCreate = () => { | 118 | const handleCreate = () => { |
| 123 | setDialogTile('create') | 119 | setDialogTile('create') |
| 124 | - formData.value = undefined | 120 | + // 重置表单 |
| 121 | + unref(formRef)?.getElFormRef()?.resetFields() | ||
| 125 | } | 122 | } |
| 126 | 123 | ||
| 127 | // 修改操作 | 124 | // 修改操作 |
| @@ -129,12 +126,12 @@ const handleUpdate = async (rowId: number) => { | @@ -129,12 +126,12 @@ const handleUpdate = async (rowId: number) => { | ||
| 129 | setDialogTile('update') | 126 | setDialogTile('update') |
| 130 | // 设置数据 | 127 | // 设置数据 |
| 131 | const res = await PostApi.getPostApi(rowId) | 128 | const res = await PostApi.getPostApi(rowId) |
| 132 | - formData.value = res | 129 | + unref(formRef)?.setValues(res) |
| 133 | } | 130 | } |
| 134 | // 删除操作 | 131 | // 删除操作 |
| 135 | -const handleDelete = (rowId: number) => { | 132 | +const handleDelete = async (rowId: number) => { |
| 136 | message | 133 | message |
| 137 | - .confirm(t('common.delMessage'), t('common.confirmTitle')) | 134 | + .delConfirm() |
| 138 | .then(async () => { | 135 | .then(async () => { |
| 139 | await PostApi.deletePostApi(rowId) | 136 | await PostApi.deletePostApi(rowId) |
| 140 | message.success(t('common.delSuccess')) | 137 | message.success(t('common.delSuccess')) |
| @@ -145,22 +142,28 @@ const handleDelete = (rowId: number) => { | @@ -145,22 +142,28 @@ const handleDelete = (rowId: number) => { | ||
| 145 | } | 142 | } |
| 146 | // 提交按钮 | 143 | // 提交按钮 |
| 147 | const submitForm: VxeFormEvents.Submit = async () => { | 144 | const submitForm: VxeFormEvents.Submit = async () => { |
| 148 | - actionLoading.value = true | ||
| 149 | - // 提交请求 | ||
| 150 | - try { | ||
| 151 | - const data = formData.value as PostVO | ||
| 152 | - if (actionType.value === 'create') { | ||
| 153 | - await PostApi.createPostApi(data) | ||
| 154 | - message.success(t('common.createSuccess')) | ||
| 155 | - } else { | ||
| 156 | - await PostApi.updatePostApi(data) | ||
| 157 | - message.success(t('common.updateSuccess')) | 145 | + const elForm = unref(formRef)?.getElFormRef() |
| 146 | + if (!elForm) return | ||
| 147 | + elForm.validate(async (valid) => { | ||
| 148 | + if (valid) { | ||
| 149 | + actionLoading.value = true | ||
| 150 | + // 提交请求 | ||
| 151 | + try { | ||
| 152 | + const data = unref(formRef)?.formModel as PostVO | ||
| 153 | + if (actionType.value === 'create') { | ||
| 154 | + await PostApi.createPostApi(data) | ||
| 155 | + message.success(t('common.createSuccess')) | ||
| 156 | + } else { | ||
| 157 | + await PostApi.updatePostApi(data) | ||
| 158 | + message.success(t('common.updateSuccess')) | ||
| 159 | + } | ||
| 160 | + // 操作成功,重新加载列表 | ||
| 161 | + dialogVisible.value = false | ||
| 162 | + } finally { | ||
| 163 | + actionLoading.value = false | ||
| 164 | + xGrid.value?.commitProxy('query') | ||
| 165 | + } | ||
| 158 | } | 166 | } |
| 159 | - // 操作成功,重新加载列表 | ||
| 160 | - dialogVisible.value = false | ||
| 161 | - } finally { | ||
| 162 | - actionLoading.value = false | ||
| 163 | - xGrid.value?.commitProxy('query') | ||
| 164 | - } | 167 | + }) |
| 165 | } | 168 | } |
| 166 | </script> | 169 | </script> |
yudao-ui-admin-vue3/src/views/system/post/post.data.ts
| @@ -57,8 +57,16 @@ const crudSchemas = reactive<VxeCrudSchema[]>([ | @@ -57,8 +57,16 @@ const crudSchemas = reactive<VxeCrudSchema[]>([ | ||
| 57 | } | 57 | } |
| 58 | }, | 58 | }, |
| 59 | { | 59 | { |
| 60 | + title: '备注', | ||
| 61 | + field: 'remark', | ||
| 62 | + table: { | ||
| 63 | + show: false | ||
| 64 | + } | ||
| 65 | + }, | ||
| 66 | + { | ||
| 60 | title: t('common.createTime'), | 67 | title: t('common.createTime'), |
| 61 | field: 'createTime', | 68 | field: 'createTime', |
| 69 | + formatter: 'formatDate', | ||
| 62 | form: { | 70 | form: { |
| 63 | show: false | 71 | show: false |
| 64 | } | 72 | } |
| @@ -66,10 +74,8 @@ const crudSchemas = reactive<VxeCrudSchema[]>([ | @@ -66,10 +74,8 @@ const crudSchemas = reactive<VxeCrudSchema[]>([ | ||
| 66 | { | 74 | { |
| 67 | title: t('table.action'), | 75 | title: t('table.action'), |
| 68 | field: 'action', | 76 | field: 'action', |
| 69 | - width: '240px', | ||
| 70 | table: { | 77 | table: { |
| 71 | width: '240px', | 78 | width: '240px', |
| 72 | - showOverflow: true, | ||
| 73 | slots: { | 79 | slots: { |
| 74 | default: 'action_default' | 80 | default: 'action_default' |
| 75 | } | 81 | } |
yudao-ui-admin/.eslintrc.js
| @@ -15,13 +15,6 @@ module.exports = { | @@ -15,13 +15,6 @@ module.exports = { | ||
| 15 | // add your custom rules here | 15 | // add your custom rules here |
| 16 | //it is base on https://github.com/vuejs/eslint-config-vue | 16 | //it is base on https://github.com/vuejs/eslint-config-vue |
| 17 | rules: { | 17 | rules: { |
| 18 | - "vue/max-attributes-per-line": [2, { | ||
| 19 | - "singleline": 10, | ||
| 20 | - "multiline": { | ||
| 21 | - "max": 1, | ||
| 22 | - "allowFirstLine": false | ||
| 23 | - } | ||
| 24 | - }], | ||
| 25 | "vue/singleline-html-element-content-newline": "off", | 18 | "vue/singleline-html-element-content-newline": "off", |
| 26 | "vue/multiline-html-element-content-newline":"off", | 19 | "vue/multiline-html-element-content-newline":"off", |
| 27 | "vue/name-property-casing": ["error", "PascalCase"], | 20 | "vue/name-property-casing": ["error", "PascalCase"], |
yudao-ui-admin/build/index.js
| @@ -12,8 +12,8 @@ if (process.env.npm_config_preview || rawArgv.includes('--preview')) { | @@ -12,8 +12,8 @@ if (process.env.npm_config_preview || rawArgv.includes('--preview')) { | ||
| 12 | const port = 9526 | 12 | const port = 9526 |
| 13 | const publicPath = config.publicPath | 13 | const publicPath = config.publicPath |
| 14 | 14 | ||
| 15 | - var connect = require('connect') | ||
| 16 | - var serveStatic = require('serve-static') | 15 | + const connect = require('connect') |
| 16 | + const serveStatic = require('serve-static') | ||
| 17 | const app = connect() | 17 | const app = connect() |
| 18 | 18 | ||
| 19 | app.use( | 19 | app.use( |
yudao-ui-admin/package.json
| @@ -40,63 +40,61 @@ | @@ -40,63 +40,61 @@ | ||
| 40 | "url": "https://github.com/YunaiV/ruoyi-vue-pro" | 40 | "url": "https://github.com/YunaiV/ruoyi-vue-pro" |
| 41 | }, | 41 | }, |
| 42 | "dependencies": { | 42 | "dependencies": { |
| 43 | + "@babel/parser": "7.7.4", | ||
| 43 | "@riophae/vue-treeselect": "0.4.0", | 44 | "@riophae/vue-treeselect": "0.4.0", |
| 44 | - "axios": "0.24.0", | 45 | + "axios": "0.27.2", |
| 46 | + "bpmn-js-token-simulation": "0.10.0", | ||
| 45 | "clipboard": "2.0.8", | 47 | "clipboard": "2.0.8", |
| 46 | - "core-js": "^3.21.1", | 48 | + "core-js": "^3.26.0", |
| 49 | + "crypto-js": "^4.0.0", | ||
| 47 | "echarts": "4.9.0", | 50 | "echarts": "4.9.0", |
| 48 | - "element-ui": "2.15.8", | 51 | + "element-ui": "2.15.10", |
| 49 | "file-saver": "2.0.5", | 52 | "file-saver": "2.0.5", |
| 50 | - "fuse.js": "6.4.3", | 53 | + "fuse.js": "6.6.2", |
| 51 | "highlight.js": "9.18.5", | 54 | "highlight.js": "9.18.5", |
| 52 | "js-beautify": "1.13.0", | 55 | "js-beautify": "1.13.0", |
| 53 | - "jsencrypt": "3.0.0-rc.1", | ||
| 54 | - "crypto-js": "^4.0.0", | 56 | + "jsencrypt": "3.3.1", |
| 57 | + "min-dash": "3.5.2", | ||
| 55 | "nprogress": "0.2.0", | 58 | "nprogress": "0.2.0", |
| 56 | "quill": "1.3.7", | 59 | "quill": "1.3.7", |
| 57 | "screenfull": "5.0.2", | 60 | "screenfull": "5.0.2", |
| 58 | "sortablejs": "1.10.2", | 61 | "sortablejs": "1.10.2", |
| 59 | - "vue": "2.6.12", | 62 | + "throttle-debounce": "2.1.0", |
| 63 | + "vue": "2.7.0", | ||
| 60 | "vue-count-to": "1.0.13", | 64 | "vue-count-to": "1.0.13", |
| 61 | - "vue-cropper": "0.5.5", | 65 | + "vue-cropper": "0.5.8", |
| 62 | "vue-meta": "^2.4.0", | 66 | "vue-meta": "^2.4.0", |
| 63 | "vue-router": "3.4.9", | 67 | "vue-router": "3.4.9", |
| 64 | "vuedraggable": "2.24.3", | 68 | "vuedraggable": "2.24.3", |
| 65 | - "vuex": "3.6.0", | ||
| 66 | - "bpmn-js-token-simulation": "0.10.0", | ||
| 67 | - "min-dash": "3.5.2", | ||
| 68 | - "xml-js": "1.6.11", | ||
| 69 | - "@babel/parser": "7.7.4", | ||
| 70 | - "throttle-debounce": "2.1.0" | 69 | + "vuex": "3.6.2", |
| 70 | + "xml-js": "1.6.11" | ||
| 71 | }, | 71 | }, |
| 72 | "devDependencies": { | 72 | "devDependencies": { |
| 73 | - "@vue/cli-plugin-babel": "4.4.6", | ||
| 74 | - "@vue/cli-plugin-eslint": "4.4.6", | ||
| 75 | - "@vue/cli-service": "4.4.6", | 73 | + "@vue/cli-plugin-babel": "4.5.18", |
| 74 | + "@vue/cli-plugin-eslint": "4.5.18", | ||
| 75 | + "@vue/cli-service": "4.5.18", | ||
| 76 | + "@vue/compiler-sfc": "^3.0.1", | ||
| 77 | + "@vue/eslint-config-prettier": "^5.0.0", | ||
| 76 | "babel-eslint": "10.1.0", | 78 | "babel-eslint": "10.1.0", |
| 79 | + "bpmn-js": "8.9.0", | ||
| 80 | + "bpmn-js-properties-panel": "0.46.0", | ||
| 77 | "chalk": "4.1.0", | 81 | "chalk": "4.1.0", |
| 78 | "compression-webpack-plugin": "5.0.2", | 82 | "compression-webpack-plugin": "5.0.2", |
| 79 | "connect": "3.6.6", | 83 | "connect": "3.6.6", |
| 80 | "eslint": "7.15.0", | 84 | "eslint": "7.15.0", |
| 81 | - "eslint-plugin-vue": "7.2.0", | 85 | + "eslint-config-airbnb-base": "^14.0.0", |
| 86 | + "eslint-plugin-import": "^2.26.0", | ||
| 87 | + "eslint-plugin-prettier": "^3.1.0", | ||
| 88 | + "eslint-plugin-vue": "9.0.0", | ||
| 89 | + "fs-extra": "^8.1.0", | ||
| 82 | "lint-staged": "10.5.3", | 90 | "lint-staged": "10.5.3", |
| 83 | - "sass": "1.32.13", | ||
| 84 | "runjs": "4.4.2", | 91 | "runjs": "4.4.2", |
| 85 | - "sass-loader": "10.1.1", | 92 | + "sass": "1.56.0", |
| 93 | + "sass-loader": "13.1.0", | ||
| 86 | "script-ext-html-webpack-plugin": "2.1.5", | 94 | "script-ext-html-webpack-plugin": "2.1.5", |
| 87 | "svg-sprite-loader": "5.1.1", | 95 | "svg-sprite-loader": "5.1.1", |
| 88 | - "vue-template-compiler": "2.6.12", | ||
| 89 | - "vue2-ace-editor": "^0.0.15", | ||
| 90 | - "@vue/compiler-sfc": "^3.0.1", | ||
| 91 | - "@vue/eslint-config-prettier": "^5.0.0", | ||
| 92 | - "bpmn-js": "8.9.0", | ||
| 93 | - "bpmn-js-properties-panel": "0.46.0", | ||
| 94 | - "eslint-plugin-prettier": "^3.1.0", | ||
| 95 | - "fs-extra": "^8.1.0", | ||
| 96 | "terser-webpack-plugin": "^4.2.3", | 96 | "terser-webpack-plugin": "^4.2.3", |
| 97 | - "webpack-bundle-analyzer": "^3.9.0", | ||
| 98 | - "eslint-config-airbnb-base": "^14.0.0", | ||
| 99 | - "eslint-plugin-import": "^2.20.0" | 97 | + "webpack-bundle-analyzer": "^3.9.0" |
| 100 | }, | 98 | }, |
| 101 | "engines": { | 99 | "engines": { |
| 102 | "node": ">=8.9", | 100 | "node": ">=8.9", |
yudao-ui-admin/src/components/Breadcrumb/index.vue
| @@ -2,7 +2,7 @@ | @@ -2,7 +2,7 @@ | ||
| 2 | <el-breadcrumb class="app-breadcrumb" separator="/"> | 2 | <el-breadcrumb class="app-breadcrumb" separator="/"> |
| 3 | <transition-group name="breadcrumb"> | 3 | <transition-group name="breadcrumb"> |
| 4 | <el-breadcrumb-item v-for="(item,index) in levelList" :key="item.path"> | 4 | <el-breadcrumb-item v-for="(item,index) in levelList" :key="item.path"> |
| 5 | - <span v-if="item.redirect==='noRedirect'||index==levelList.length-1" class="no-redirect">{{ item.meta.title }}</span> | 5 | + <span v-if="item.redirect==='noRedirect'||index===levelList.length-1" class="no-redirect">{{ item.meta.title }}</span> |
| 6 | <a v-else @click.prevent="handleLink(item)">{{ item.meta.title }}</a> | 6 | <a v-else @click.prevent="handleLink(item)">{{ item.meta.title }}</a> |
| 7 | </el-breadcrumb-item> | 7 | </el-breadcrumb-item> |
| 8 | </transition-group> | 8 | </transition-group> |
yudao-ui-admin/src/components/Crontab/day.vue
| @@ -103,25 +103,25 @@ export default { | @@ -103,25 +103,25 @@ export default { | ||
| 103 | }, | 103 | }, |
| 104 | // 周期两个值变化时 | 104 | // 周期两个值变化时 |
| 105 | cycleChange() { | 105 | cycleChange() { |
| 106 | - if (this.radioValue == '3') { | 106 | + if (this.radioValue === '3') { |
| 107 | this.$emit('update', 'day', this.cycleTotal); | 107 | this.$emit('update', 'day', this.cycleTotal); |
| 108 | } | 108 | } |
| 109 | }, | 109 | }, |
| 110 | // 平均两个值变化时 | 110 | // 平均两个值变化时 |
| 111 | averageChange() { | 111 | averageChange() { |
| 112 | - if (this.radioValue == '4') { | 112 | + if (this.radioValue === '4') { |
| 113 | this.$emit('update', 'day', this.averageTotal); | 113 | this.$emit('update', 'day', this.averageTotal); |
| 114 | } | 114 | } |
| 115 | }, | 115 | }, |
| 116 | // 最近工作日值变化时 | 116 | // 最近工作日值变化时 |
| 117 | workdayChange() { | 117 | workdayChange() { |
| 118 | - if (this.radioValue == '5') { | 118 | + if (this.radioValue === '5') { |
| 119 | this.$emit('update', 'day', this.workdayCheck + 'W'); | 119 | this.$emit('update', 'day', this.workdayCheck + 'W'); |
| 120 | } | 120 | } |
| 121 | }, | 121 | }, |
| 122 | // checkbox值变化时 | 122 | // checkbox值变化时 |
| 123 | checkboxChange() { | 123 | checkboxChange() { |
| 124 | - if (this.radioValue == '7') { | 124 | + if (this.radioValue === '7') { |
| 125 | this.$emit('update', 'day', this.checkboxString); | 125 | this.$emit('update', 'day', this.checkboxString); |
| 126 | } | 126 | } |
| 127 | } | 127 | } |
| @@ -148,13 +148,12 @@ export default { | @@ -148,13 +148,12 @@ export default { | ||
| 148 | }, | 148 | }, |
| 149 | // 计算工作日格式 | 149 | // 计算工作日格式 |
| 150 | workdayCheck: function () { | 150 | workdayCheck: function () { |
| 151 | - const workday = this.checkNum(this.workday, 1, 31) | ||
| 152 | - return workday; | 151 | + return this.checkNum(this.workday, 1, 31); |
| 153 | }, | 152 | }, |
| 154 | // 计算勾选的checkbox值合集 | 153 | // 计算勾选的checkbox值合集 |
| 155 | checkboxString: function () { | 154 | checkboxString: function () { |
| 156 | let str = this.checkboxList.join(); | 155 | let str = this.checkboxList.join(); |
| 157 | - return str == '' ? '*' : str; | 156 | + return str === '' ? '*' : str; |
| 158 | } | 157 | } |
| 159 | } | 158 | } |
| 160 | } | 159 | } |
yudao-ui-admin/src/components/Crontab/hour.vue
| @@ -68,19 +68,19 @@ export default { | @@ -68,19 +68,19 @@ export default { | ||
| 68 | }, | 68 | }, |
| 69 | // 周期两个值变化时 | 69 | // 周期两个值变化时 |
| 70 | cycleChange() { | 70 | cycleChange() { |
| 71 | - if (this.radioValue == '2') { | 71 | + if (this.radioValue === '2') { |
| 72 | this.$emit('update', 'hour', this.cycleTotal); | 72 | this.$emit('update', 'hour', this.cycleTotal); |
| 73 | } | 73 | } |
| 74 | }, | 74 | }, |
| 75 | // 平均两个值变化时 | 75 | // 平均两个值变化时 |
| 76 | averageChange() { | 76 | averageChange() { |
| 77 | - if (this.radioValue == '3') { | 77 | + if (this.radioValue === '3') { |
| 78 | this.$emit('update', 'hour', this.averageTotal); | 78 | this.$emit('update', 'hour', this.averageTotal); |
| 79 | } | 79 | } |
| 80 | }, | 80 | }, |
| 81 | // checkbox值变化时 | 81 | // checkbox值变化时 |
| 82 | checkboxChange() { | 82 | checkboxChange() { |
| 83 | - if (this.radioValue == '4') { | 83 | + if (this.radioValue === '4') { |
| 84 | this.$emit('update', 'hour', this.checkboxString); | 84 | this.$emit('update', 'hour', this.checkboxString); |
| 85 | } | 85 | } |
| 86 | } | 86 | } |
| @@ -107,7 +107,7 @@ export default { | @@ -107,7 +107,7 @@ export default { | ||
| 107 | // 计算勾选的checkbox值合集 | 107 | // 计算勾选的checkbox值合集 |
| 108 | checkboxString: function () { | 108 | checkboxString: function () { |
| 109 | let str = this.checkboxList.join(); | 109 | let str = this.checkboxList.join(); |
| 110 | - return str == '' ? '*' : str; | 110 | + return str === '' ? '*' : str; |
| 111 | } | 111 | } |
| 112 | } | 112 | } |
| 113 | } | 113 | } |
yudao-ui-admin/src/components/Crontab/index.vue
| @@ -143,8 +143,8 @@ export default { | @@ -143,8 +143,8 @@ export default { | ||
| 143 | props: ["expression", "hideComponent"], | 143 | props: ["expression", "hideComponent"], |
| 144 | methods: { | 144 | methods: { |
| 145 | shouldHide(key) { | 145 | shouldHide(key) { |
| 146 | - if (this.hideComponent && this.hideComponent.includes(key)) return false; | ||
| 147 | - return true; | 146 | + return !(this.hideComponent && this.hideComponent.includes(key)); |
| 147 | + | ||
| 148 | }, | 148 | }, |
| 149 | resolveExp() { | 149 | resolveExp() { |
| 150 | // 反解析 表达式 | 150 | // 反解析 表达式 |
| @@ -215,10 +215,10 @@ export default { | @@ -215,10 +215,10 @@ export default { | ||
| 215 | insValue = 4; | 215 | insValue = 4; |
| 216 | this.$refs[refName].checkboxList = value.split(","); | 216 | this.$refs[refName].checkboxList = value.split(","); |
| 217 | } | 217 | } |
| 218 | - } else if (name == "day") { | 218 | + } else if (name === "day") { |
| 219 | if (value === "*") { | 219 | if (value === "*") { |
| 220 | insValue = 1; | 220 | insValue = 1; |
| 221 | - } else if (value == "?") { | 221 | + } else if (value === "?") { |
| 222 | insValue = 2; | 222 | insValue = 2; |
| 223 | } else if (value.indexOf("-") > -1) { | 223 | } else if (value.indexOf("-") > -1) { |
| 224 | let indexArr = value.split("-"); | 224 | let indexArr = value.split("-"); |
| @@ -246,10 +246,10 @@ export default { | @@ -246,10 +246,10 @@ export default { | ||
| 246 | this.$refs[refName].checkboxList = value.split(","); | 246 | this.$refs[refName].checkboxList = value.split(","); |
| 247 | insValue = 7; | 247 | insValue = 7; |
| 248 | } | 248 | } |
| 249 | - } else if (name == "week") { | 249 | + } else if (name === "week") { |
| 250 | if (value === "*") { | 250 | if (value === "*") { |
| 251 | insValue = 1; | 251 | insValue = 1; |
| 252 | - } else if (value == "?") { | 252 | + } else if (value === "?") { |
| 253 | insValue = 2; | 253 | insValue = 2; |
| 254 | } else if (value.indexOf("-") > -1) { | 254 | } else if (value.indexOf("-") > -1) { |
| 255 | let indexArr = value.split("-"); | 255 | let indexArr = value.split("-"); |
| @@ -275,10 +275,10 @@ export default { | @@ -275,10 +275,10 @@ export default { | ||
| 275 | this.$refs[refName].checkboxList = value.split(","); | 275 | this.$refs[refName].checkboxList = value.split(","); |
| 276 | insValue = 6; | 276 | insValue = 6; |
| 277 | } | 277 | } |
| 278 | - } else if (name == "year") { | ||
| 279 | - if (value == "") { | 278 | + } else if (name === "year") { |
| 279 | + if (value === "") { | ||
| 280 | insValue = 1; | 280 | insValue = 1; |
| 281 | - } else if (value == "*") { | 281 | + } else if (value === "*") { |
| 282 | insValue = 2; | 282 | insValue = 2; |
| 283 | } else if (value.indexOf("-") > -1) { | 283 | } else if (value.indexOf("-") > -1) { |
| 284 | insValue = 3; | 284 | insValue = 3; |
| @@ -343,7 +343,7 @@ export default { | @@ -343,7 +343,7 @@ export default { | ||
| 343 | obj.month + | 343 | obj.month + |
| 344 | " " + | 344 | " " + |
| 345 | obj.week + | 345 | obj.week + |
| 346 | - (obj.year == "" ? "" : " " + obj.year); | 346 | + (obj.year === "" ? "" : " " + obj.year); |
| 347 | return str; | 347 | return str; |
| 348 | }, | 348 | }, |
| 349 | }, | 349 | }, |
yudao-ui-admin/src/components/Crontab/min.vue
| @@ -69,19 +69,19 @@ export default { | @@ -69,19 +69,19 @@ export default { | ||
| 69 | }, | 69 | }, |
| 70 | // 周期两个值变化时 | 70 | // 周期两个值变化时 |
| 71 | cycleChange() { | 71 | cycleChange() { |
| 72 | - if (this.radioValue == '2') { | 72 | + if (this.radioValue === '2') { |
| 73 | this.$emit('update', 'min', this.cycleTotal, 'min'); | 73 | this.$emit('update', 'min', this.cycleTotal, 'min'); |
| 74 | } | 74 | } |
| 75 | }, | 75 | }, |
| 76 | // 平均两个值变化时 | 76 | // 平均两个值变化时 |
| 77 | averageChange() { | 77 | averageChange() { |
| 78 | - if (this.radioValue == '3') { | 78 | + if (this.radioValue === '3') { |
| 79 | this.$emit('update', 'min', this.averageTotal, 'min'); | 79 | this.$emit('update', 'min', this.averageTotal, 'min'); |
| 80 | } | 80 | } |
| 81 | }, | 81 | }, |
| 82 | // checkbox值变化时 | 82 | // checkbox值变化时 |
| 83 | checkboxChange() { | 83 | checkboxChange() { |
| 84 | - if (this.radioValue == '4') { | 84 | + if (this.radioValue === '4') { |
| 85 | this.$emit('update', 'min', this.checkboxString, 'min'); | 85 | this.$emit('update', 'min', this.checkboxString, 'min'); |
| 86 | } | 86 | } |
| 87 | }, | 87 | }, |
| @@ -109,8 +109,8 @@ export default { | @@ -109,8 +109,8 @@ export default { | ||
| 109 | // 计算勾选的checkbox值合集 | 109 | // 计算勾选的checkbox值合集 |
| 110 | checkboxString: function () { | 110 | checkboxString: function () { |
| 111 | let str = this.checkboxList.join(); | 111 | let str = this.checkboxList.join(); |
| 112 | - return str == '' ? '*' : str; | 112 | + return str === '' ? '*' : str; |
| 113 | } | 113 | } |
| 114 | } | 114 | } |
| 115 | } | 115 | } |
| 116 | -</script> | ||
| 117 | \ No newline at end of file | 116 | \ No newline at end of file |
| 117 | +</script> |
yudao-ui-admin/src/components/Crontab/month.vue
| @@ -68,19 +68,19 @@ export default { | @@ -68,19 +68,19 @@ export default { | ||
| 68 | }, | 68 | }, |
| 69 | // 周期两个值变化时 | 69 | // 周期两个值变化时 |
| 70 | cycleChange() { | 70 | cycleChange() { |
| 71 | - if (this.radioValue == '2') { | 71 | + if (this.radioValue === '2') { |
| 72 | this.$emit('update', 'month', this.cycleTotal); | 72 | this.$emit('update', 'month', this.cycleTotal); |
| 73 | } | 73 | } |
| 74 | }, | 74 | }, |
| 75 | // 平均两个值变化时 | 75 | // 平均两个值变化时 |
| 76 | averageChange() { | 76 | averageChange() { |
| 77 | - if (this.radioValue == '3') { | 77 | + if (this.radioValue === '3') { |
| 78 | this.$emit('update', 'month', this.averageTotal); | 78 | this.$emit('update', 'month', this.averageTotal); |
| 79 | } | 79 | } |
| 80 | }, | 80 | }, |
| 81 | // checkbox值变化时 | 81 | // checkbox值变化时 |
| 82 | checkboxChange() { | 82 | checkboxChange() { |
| 83 | - if (this.radioValue == '4') { | 83 | + if (this.radioValue === '4') { |
| 84 | this.$emit('update', 'month', this.checkboxString); | 84 | this.$emit('update', 'month', this.checkboxString); |
| 85 | } | 85 | } |
| 86 | } | 86 | } |
| @@ -107,7 +107,7 @@ export default { | @@ -107,7 +107,7 @@ export default { | ||
| 107 | // 计算勾选的checkbox值合集 | 107 | // 计算勾选的checkbox值合集 |
| 108 | checkboxString: function () { | 108 | checkboxString: function () { |
| 109 | let str = this.checkboxList.join(); | 109 | let str = this.checkboxList.join(); |
| 110 | - return str == '' ? '*' : str; | 110 | + return str === '' ? '*' : str; |
| 111 | } | 111 | } |
| 112 | } | 112 | } |
| 113 | } | 113 | } |
yudao-ui-admin/src/components/Crontab/result.vue
| @@ -126,7 +126,7 @@ export default { | @@ -126,7 +126,7 @@ export default { | ||
| 126 | // 如果到达最大值时 | 126 | // 如果到达最大值时 |
| 127 | if (nDay > DDate[DDate.length - 1]) { | 127 | if (nDay > DDate[DDate.length - 1]) { |
| 128 | resetDay(); | 128 | resetDay(); |
| 129 | - if (Mi == MDate.length - 1) { | 129 | + if (Mi === MDate.length - 1) { |
| 130 | resetMonth(); | 130 | resetMonth(); |
| 131 | continue goYear; | 131 | continue goYear; |
| 132 | } | 132 | } |
| @@ -141,9 +141,9 @@ export default { | @@ -141,9 +141,9 @@ export default { | ||
| 141 | // 如果到达最大值时 | 141 | // 如果到达最大值时 |
| 142 | if (nHour > hDate[hDate.length - 1]) { | 142 | if (nHour > hDate[hDate.length - 1]) { |
| 143 | resetHour(); | 143 | resetHour(); |
| 144 | - if (Di == DDate.length - 1) { | 144 | + if (Di === DDate.length - 1) { |
| 145 | resetDay(); | 145 | resetDay(); |
| 146 | - if (Mi == MDate.length - 1) { | 146 | + if (Mi === MDate.length - 1) { |
| 147 | resetMonth(); | 147 | resetMonth(); |
| 148 | continue goYear; | 148 | continue goYear; |
| 149 | } | 149 | } |
| @@ -158,7 +158,7 @@ export default { | @@ -158,7 +158,7 @@ export default { | ||
| 158 | continue goMonth; | 158 | continue goMonth; |
| 159 | } | 159 | } |
| 160 | // 如果日期规则中有值时 | 160 | // 如果日期规则中有值时 |
| 161 | - if (this.dayRule == 'lastDay') { | 161 | + if (this.dayRule === 'lastDay') { |
| 162 | // 如果不是合法日期则需要将前将日期调到合法日期即月末最后一天 | 162 | // 如果不是合法日期则需要将前将日期调到合法日期即月末最后一天 |
| 163 | 163 | ||
| 164 | if (this.checkDate(YY + '-' + MM + '-' + thisDD + ' 00:00:00') !== true) { | 164 | if (this.checkDate(YY + '-' + MM + '-' + thisDD + ' 00:00:00') !== true) { |
| @@ -168,7 +168,7 @@ export default { | @@ -168,7 +168,7 @@ export default { | ||
| 168 | thisDD = DD < 10 ? '0' + DD : DD; | 168 | thisDD = DD < 10 ? '0' + DD : DD; |
| 169 | } | 169 | } |
| 170 | } | 170 | } |
| 171 | - } else if (this.dayRule == 'workDay') { | 171 | + } else if (this.dayRule === 'workDay') { |
| 172 | // 校验并调整如果是2月30号这种日期传进来时需调整至正常月底 | 172 | // 校验并调整如果是2月30号这种日期传进来时需调整至正常月底 |
| 173 | if (this.checkDate(YY + '-' + MM + '-' + thisDD + ' 00:00:00') !== true) { | 173 | if (this.checkDate(YY + '-' + MM + '-' + thisDD + ' 00:00:00') !== true) { |
| 174 | while (DD > 0 && this.checkDate(YY + '-' + MM + '-' + thisDD + ' 00:00:00') !== true) { | 174 | while (DD > 0 && this.checkDate(YY + '-' + MM + '-' + thisDD + ' 00:00:00') !== true) { |
| @@ -179,7 +179,7 @@ export default { | @@ -179,7 +179,7 @@ export default { | ||
| 179 | // 获取达到条件的日期是星期X | 179 | // 获取达到条件的日期是星期X |
| 180 | let thisWeek = this.formatDate(new Date(YY + '-' + MM + '-' + thisDD + ' 00:00:00'), 'week'); | 180 | let thisWeek = this.formatDate(new Date(YY + '-' + MM + '-' + thisDD + ' 00:00:00'), 'week'); |
| 181 | // 当星期日时 | 181 | // 当星期日时 |
| 182 | - if (thisWeek == 1) { | 182 | + if (thisWeek === 1) { |
| 183 | // 先找下一个日,并判断是否为月底 | 183 | // 先找下一个日,并判断是否为月底 |
| 184 | DD++; | 184 | DD++; |
| 185 | thisDD = DD < 10 ? '0' + DD : DD; | 185 | thisDD = DD < 10 ? '0' + DD : DD; |
| @@ -187,7 +187,7 @@ export default { | @@ -187,7 +187,7 @@ export default { | ||
| 187 | if (this.checkDate(YY + '-' + MM + '-' + thisDD + ' 00:00:00') !== true) { | 187 | if (this.checkDate(YY + '-' + MM + '-' + thisDD + ' 00:00:00') !== true) { |
| 188 | DD -= 3; | 188 | DD -= 3; |
| 189 | } | 189 | } |
| 190 | - } else if (thisWeek == 7) { | 190 | + } else if (thisWeek === 7) { |
| 191 | // 当星期6时只需判断不是1号就可进行操作 | 191 | // 当星期6时只需判断不是1号就可进行操作 |
| 192 | if (this.dayRuleSup !== 1) { | 192 | if (this.dayRuleSup !== 1) { |
| 193 | DD--; | 193 | DD--; |
| @@ -195,16 +195,16 @@ export default { | @@ -195,16 +195,16 @@ export default { | ||
| 195 | DD += 2; | 195 | DD += 2; |
| 196 | } | 196 | } |
| 197 | } | 197 | } |
| 198 | - } else if (this.dayRule == 'weekDay') { | 198 | + } else if (this.dayRule === 'weekDay') { |
| 199 | // 如果指定了是星期几 | 199 | // 如果指定了是星期几 |
| 200 | // 获取当前日期是属于星期几 | 200 | // 获取当前日期是属于星期几 |
| 201 | let thisWeek = this.formatDate(new Date(YY + '-' + MM + '-' + DD + ' 00:00:00'), 'week'); | 201 | let thisWeek = this.formatDate(new Date(YY + '-' + MM + '-' + DD + ' 00:00:00'), 'week'); |
| 202 | // 校验当前星期是否在星期池(dayRuleSup)中 | 202 | // 校验当前星期是否在星期池(dayRuleSup)中 |
| 203 | if (this.dayRuleSup.indexOf(thisWeek) < 0) { | 203 | if (this.dayRuleSup.indexOf(thisWeek) < 0) { |
| 204 | // 如果到达最大值时 | 204 | // 如果到达最大值时 |
| 205 | - if (Di == DDate.length - 1) { | 205 | + if (Di === DDate.length - 1) { |
| 206 | resetDay(); | 206 | resetDay(); |
| 207 | - if (Mi == MDate.length - 1) { | 207 | + if (Mi === MDate.length - 1) { |
| 208 | resetMonth(); | 208 | resetMonth(); |
| 209 | continue goYear; | 209 | continue goYear; |
| 210 | } | 210 | } |
| @@ -212,7 +212,7 @@ export default { | @@ -212,7 +212,7 @@ export default { | ||
| 212 | } | 212 | } |
| 213 | continue; | 213 | continue; |
| 214 | } | 214 | } |
| 215 | - } else if (this.dayRule == 'assWeek') { | 215 | + } else if (this.dayRule === 'assWeek') { |
| 216 | // 如果指定了是第几周的星期几 | 216 | // 如果指定了是第几周的星期几 |
| 217 | // 获取每月1号是属于星期几 | 217 | // 获取每月1号是属于星期几 |
| 218 | let thisWeek = this.formatDate(new Date(YY + '-' + MM + '-' + DD + ' 00:00:00'), 'week'); | 218 | let thisWeek = this.formatDate(new Date(YY + '-' + MM + '-' + DD + ' 00:00:00'), 'week'); |
| @@ -221,7 +221,7 @@ export default { | @@ -221,7 +221,7 @@ export default { | ||
| 221 | } else { | 221 | } else { |
| 222 | DD = this.dayRuleSup[0] * 7 + this.dayRuleSup[1] - thisWeek + 1; | 222 | DD = this.dayRuleSup[0] * 7 + this.dayRuleSup[1] - thisWeek + 1; |
| 223 | } | 223 | } |
| 224 | - } else if (this.dayRule == 'lastWeek') { | 224 | + } else if (this.dayRule === 'lastWeek') { |
| 225 | // 如果指定了每月最后一个星期几 | 225 | // 如果指定了每月最后一个星期几 |
| 226 | // 校验并调整如果是2月30号这种日期传进来时需调整至正常月底 | 226 | // 校验并调整如果是2月30号这种日期传进来时需调整至正常月底 |
| 227 | if (this.checkDate(YY + '-' + MM + '-' + thisDD + ' 00:00:00') !== true) { | 227 | if (this.checkDate(YY + '-' + MM + '-' + thisDD + ' 00:00:00') !== true) { |
| @@ -249,11 +249,11 @@ export default { | @@ -249,11 +249,11 @@ export default { | ||
| 249 | // 如果到达最大值时 | 249 | // 如果到达最大值时 |
| 250 | if (nMin > mDate[mDate.length - 1]) { | 250 | if (nMin > mDate[mDate.length - 1]) { |
| 251 | resetMin(); | 251 | resetMin(); |
| 252 | - if (hi == hDate.length - 1) { | 252 | + if (hi === hDate.length - 1) { |
| 253 | resetHour(); | 253 | resetHour(); |
| 254 | - if (Di == DDate.length - 1) { | 254 | + if (Di === DDate.length - 1) { |
| 255 | resetDay(); | 255 | resetDay(); |
| 256 | - if (Mi == MDate.length - 1) { | 256 | + if (Mi === MDate.length - 1) { |
| 257 | resetMonth(); | 257 | resetMonth(); |
| 258 | continue goYear; | 258 | continue goYear; |
| 259 | } | 259 | } |
| @@ -270,13 +270,13 @@ export default { | @@ -270,13 +270,13 @@ export default { | ||
| 270 | // 如果到达最大值时 | 270 | // 如果到达最大值时 |
| 271 | if (nSecond > sDate[sDate.length - 1]) { | 271 | if (nSecond > sDate[sDate.length - 1]) { |
| 272 | resetSecond(); | 272 | resetSecond(); |
| 273 | - if (mi == mDate.length - 1) { | 273 | + if (mi === mDate.length - 1) { |
| 274 | resetMin(); | 274 | resetMin(); |
| 275 | - if (hi == hDate.length - 1) { | 275 | + if (hi === hDate.length - 1) { |
| 276 | resetHour(); | 276 | resetHour(); |
| 277 | - if (Di == DDate.length - 1) { | 277 | + if (Di === DDate.length - 1) { |
| 278 | resetDay(); | 278 | resetDay(); |
| 279 | - if (Mi == MDate.length - 1) { | 279 | + if (Mi === MDate.length - 1) { |
| 280 | resetMonth(); | 280 | resetMonth(); |
| 281 | continue goYear; | 281 | continue goYear; |
| 282 | } | 282 | } |
| @@ -297,17 +297,17 @@ export default { | @@ -297,17 +297,17 @@ export default { | ||
| 297 | nums++; | 297 | nums++; |
| 298 | } | 298 | } |
| 299 | // 如果条数满了就退出循环 | 299 | // 如果条数满了就退出循环 |
| 300 | - if (nums == 5) break goYear; | 300 | + if (nums === 5) break goYear; |
| 301 | // 如果到达最大值时 | 301 | // 如果到达最大值时 |
| 302 | - if (si == sDate.length - 1) { | 302 | + if (si === sDate.length - 1) { |
| 303 | resetSecond(); | 303 | resetSecond(); |
| 304 | - if (mi == mDate.length - 1) { | 304 | + if (mi === mDate.length - 1) { |
| 305 | resetMin(); | 305 | resetMin(); |
| 306 | - if (hi == hDate.length - 1) { | 306 | + if (hi === hDate.length - 1) { |
| 307 | resetHour(); | 307 | resetHour(); |
| 308 | - if (Di == DDate.length - 1) { | 308 | + if (Di === DDate.length - 1) { |
| 309 | resetDay(); | 309 | resetDay(); |
| 310 | - if (Mi == MDate.length - 1) { | 310 | + if (Mi === MDate.length - 1) { |
| 311 | resetMonth(); | 311 | resetMonth(); |
| 312 | continue goYear; | 312 | continue goYear; |
| 313 | } | 313 | } |
| @@ -326,7 +326,7 @@ export default { | @@ -326,7 +326,7 @@ export default { | ||
| 326 | }//goMonth | 326 | }//goMonth |
| 327 | } | 327 | } |
| 328 | // 判断100年内的结果条数 | 328 | // 判断100年内的结果条数 |
| 329 | - if (resultArr.length == 0) { | 329 | + if (resultArr.length === 0) { |
| 330 | this.resultList = ['没有达到条件的结果!']; | 330 | this.resultList = ['没有达到条件的结果!']; |
| 331 | } else { | 331 | } else { |
| 332 | this.resultList = resultArr; | 332 | this.resultList = resultArr; |
| @@ -378,23 +378,23 @@ export default { | @@ -378,23 +378,23 @@ export default { | ||
| 378 | // 获取"日"数组-主要为日期规则 | 378 | // 获取"日"数组-主要为日期规则 |
| 379 | getWeekArr(rule) { | 379 | getWeekArr(rule) { |
| 380 | // 只有当日期规则的两个值均为“”时则表达日期是有选项的 | 380 | // 只有当日期规则的两个值均为“”时则表达日期是有选项的 |
| 381 | - if (this.dayRule == '' && this.dayRuleSup == '') { | 381 | + if (this.dayRule === '' && this.dayRuleSup === '') { |
| 382 | if (rule.indexOf('-') >= 0) { | 382 | if (rule.indexOf('-') >= 0) { |
| 383 | this.dayRule = 'weekDay'; | 383 | this.dayRule = 'weekDay'; |
| 384 | this.dayRuleSup = this.getCycleArr(rule, 7, false) | 384 | this.dayRuleSup = this.getCycleArr(rule, 7, false) |
| 385 | } else if (rule.indexOf('#') >= 0) { | 385 | } else if (rule.indexOf('#') >= 0) { |
| 386 | this.dayRule = 'assWeek'; | 386 | this.dayRule = 'assWeek'; |
| 387 | - let matchRule = rule.match(/[0-9]{1}/g); | 387 | + let matchRule = rule.match(/[0-9]/g); |
| 388 | this.dayRuleSup = [Number(matchRule[1]), Number(matchRule[0])]; | 388 | this.dayRuleSup = [Number(matchRule[1]), Number(matchRule[0])]; |
| 389 | this.dateArr[3] = [1]; | 389 | this.dateArr[3] = [1]; |
| 390 | - if (this.dayRuleSup[1] == 7) { | 390 | + if (this.dayRuleSup[1] === 7) { |
| 391 | this.dayRuleSup[1] = 0; | 391 | this.dayRuleSup[1] = 0; |
| 392 | } | 392 | } |
| 393 | } else if (rule.indexOf('L') >= 0) { | 393 | } else if (rule.indexOf('L') >= 0) { |
| 394 | this.dayRule = 'lastWeek'; | 394 | this.dayRule = 'lastWeek'; |
| 395 | this.dayRuleSup = Number(rule.match(/[0-9]{1,2}/g)[0]); | 395 | this.dayRuleSup = Number(rule.match(/[0-9]{1,2}/g)[0]); |
| 396 | this.dateArr[3] = [31]; | 396 | this.dateArr[3] = [31]; |
| 397 | - if (this.dayRuleSup == 7) { | 397 | + if (this.dayRuleSup === 7) { |
| 398 | this.dayRuleSup = 0; | 398 | this.dayRuleSup = 0; |
| 399 | } | 399 | } |
| 400 | } else if (rule !== '*' && rule !== '?') { | 400 | } else if (rule !== '*' && rule !== '?') { |
| @@ -425,7 +425,7 @@ export default { | @@ -425,7 +425,7 @@ export default { | ||
| 425 | } else if (rule !== '*' && rule !== '?') { | 425 | } else if (rule !== '*' && rule !== '?') { |
| 426 | this.dateArr[3] = this.getAssignArr(rule) | 426 | this.dateArr[3] = this.getAssignArr(rule) |
| 427 | this.dayRuleSup = 'null'; | 427 | this.dayRuleSup = 'null'; |
| 428 | - } else if (rule == '*') { | 428 | + } else if (rule === '*') { |
| 429 | this.dayRuleSup = 'null'; | 429 | this.dayRuleSup = 'null'; |
| 430 | } | 430 | } |
| 431 | }, | 431 | }, |
| @@ -504,7 +504,7 @@ export default { | @@ -504,7 +504,7 @@ export default { | ||
| 504 | } | 504 | } |
| 505 | for (let i = min; i <= max; i++) { | 505 | for (let i = min; i <= max; i++) { |
| 506 | let add = 0; | 506 | let add = 0; |
| 507 | - if (status == false && i % limit == 0) { | 507 | + if (status === false && i % limit === 0) { |
| 508 | add = limit; | 508 | add = limit; |
| 509 | } | 509 | } |
| 510 | arr.push(Math.round(i % limit + add)) | 510 | arr.push(Math.round(i % limit + add)) |
| @@ -532,9 +532,9 @@ export default { | @@ -532,9 +532,9 @@ export default { | ||
| 532 | let s = time.getSeconds(); | 532 | let s = time.getSeconds(); |
| 533 | let week = time.getDay(); | 533 | let week = time.getDay(); |
| 534 | // 如果传递了type的话 | 534 | // 如果传递了type的话 |
| 535 | - if (type == undefined) { | 535 | + if (type === undefined) { |
| 536 | return Y + '-' + (M < 10 ? '0' + M : M) + '-' + (D < 10 ? '0' + D : D) + ' ' + (h < 10 ? '0' + h : h) + ':' + (m < 10 ? '0' + m : m) + ':' + (s < 10 ? '0' + s : s); | 536 | return Y + '-' + (M < 10 ? '0' + M : M) + '-' + (D < 10 ? '0' + D : D) + ' ' + (h < 10 ? '0' + h : h) + ':' + (m < 10 ? '0' + m : m) + ':' + (s < 10 ? '0' + s : s); |
| 537 | - } else if (type == 'week') { | 537 | + } else if (type === 'week') { |
| 538 | // 在quartz中 1为星期日 | 538 | // 在quartz中 1为星期日 |
| 539 | return week + 1; | 539 | return week + 1; |
| 540 | } | 540 | } |
yudao-ui-admin/src/components/Crontab/second.vue
| @@ -68,19 +68,19 @@ export default { | @@ -68,19 +68,19 @@ export default { | ||
| 68 | }, | 68 | }, |
| 69 | // 周期两个值变化时 | 69 | // 周期两个值变化时 |
| 70 | cycleChange() { | 70 | cycleChange() { |
| 71 | - if (this.radioValue == '2') { | 71 | + if (this.radioValue === '2') { |
| 72 | this.$emit('update', 'second', this.cycleTotal); | 72 | this.$emit('update', 'second', this.cycleTotal); |
| 73 | } | 73 | } |
| 74 | }, | 74 | }, |
| 75 | // 平均两个值变化时 | 75 | // 平均两个值变化时 |
| 76 | averageChange() { | 76 | averageChange() { |
| 77 | - if (this.radioValue == '3') { | 77 | + if (this.radioValue === '3') { |
| 78 | this.$emit('update', 'second', this.averageTotal); | 78 | this.$emit('update', 'second', this.averageTotal); |
| 79 | } | 79 | } |
| 80 | }, | 80 | }, |
| 81 | // checkbox值变化时 | 81 | // checkbox值变化时 |
| 82 | checkboxChange() { | 82 | checkboxChange() { |
| 83 | - if (this.radioValue == '4') { | 83 | + if (this.radioValue === '4') { |
| 84 | this.$emit('update', 'second', this.checkboxString); | 84 | this.$emit('update', 'second', this.checkboxString); |
| 85 | } | 85 | } |
| 86 | } | 86 | } |
| @@ -110,7 +110,7 @@ export default { | @@ -110,7 +110,7 @@ export default { | ||
| 110 | // 计算勾选的checkbox值合集 | 110 | // 计算勾选的checkbox值合集 |
| 111 | checkboxString: function () { | 111 | checkboxString: function () { |
| 112 | let str = this.checkboxList.join(); | 112 | let str = this.checkboxList.join(); |
| 113 | - return str == '' ? '*' : str; | 113 | + return str === '' ? '*' : str; |
| 114 | } | 114 | } |
| 115 | } | 115 | } |
| 116 | } | 116 | } |
yudao-ui-admin/src/components/Crontab/week.vue
| @@ -144,25 +144,25 @@ export default { | @@ -144,25 +144,25 @@ export default { | ||
| 144 | 144 | ||
| 145 | // 周期两个值变化时 | 145 | // 周期两个值变化时 |
| 146 | cycleChange() { | 146 | cycleChange() { |
| 147 | - if (this.radioValue == '3') { | 147 | + if (this.radioValue === '3') { |
| 148 | this.$emit('update', 'week', this.cycleTotal); | 148 | this.$emit('update', 'week', this.cycleTotal); |
| 149 | } | 149 | } |
| 150 | }, | 150 | }, |
| 151 | // 平均两个值变化时 | 151 | // 平均两个值变化时 |
| 152 | averageChange() { | 152 | averageChange() { |
| 153 | - if (this.radioValue == '4') { | 153 | + if (this.radioValue === '4') { |
| 154 | this.$emit('update', 'week', this.averageTotal); | 154 | this.$emit('update', 'week', this.averageTotal); |
| 155 | } | 155 | } |
| 156 | }, | 156 | }, |
| 157 | // 最近工作日值变化时 | 157 | // 最近工作日值变化时 |
| 158 | weekdayChange() { | 158 | weekdayChange() { |
| 159 | - if (this.radioValue == '5') { | 159 | + if (this.radioValue === '5') { |
| 160 | this.$emit('update', 'week', this.weekday + 'L'); | 160 | this.$emit('update', 'week', this.weekday + 'L'); |
| 161 | } | 161 | } |
| 162 | }, | 162 | }, |
| 163 | // checkbox值变化时 | 163 | // checkbox值变化时 |
| 164 | checkboxChange() { | 164 | checkboxChange() { |
| 165 | - if (this.radioValue == '6') { | 165 | + if (this.radioValue === '6') { |
| 166 | this.$emit('update', 'week', this.checkboxString); | 166 | this.$emit('update', 'week', this.checkboxString); |
| 167 | } | 167 | } |
| 168 | }, | 168 | }, |
| @@ -195,7 +195,7 @@ export default { | @@ -195,7 +195,7 @@ export default { | ||
| 195 | // 计算勾选的checkbox值合集 | 195 | // 计算勾选的checkbox值合集 |
| 196 | checkboxString: function () { | 196 | checkboxString: function () { |
| 197 | let str = this.checkboxList.join(); | 197 | let str = this.checkboxList.join(); |
| 198 | - return str == '' ? '*' : str; | 198 | + return str === '' ? '*' : str; |
| 199 | } | 199 | } |
| 200 | } | 200 | } |
| 201 | } | 201 | } |
yudao-ui-admin/src/components/Crontab/year.vue
| @@ -79,19 +79,19 @@ export default { | @@ -79,19 +79,19 @@ export default { | ||
| 79 | }, | 79 | }, |
| 80 | // 周期两个值变化时 | 80 | // 周期两个值变化时 |
| 81 | cycleChange() { | 81 | cycleChange() { |
| 82 | - if (this.radioValue == '3') { | 82 | + if (this.radioValue === '3') { |
| 83 | this.$emit('update', 'year', this.cycleTotal); | 83 | this.$emit('update', 'year', this.cycleTotal); |
| 84 | } | 84 | } |
| 85 | }, | 85 | }, |
| 86 | // 平均两个值变化时 | 86 | // 平均两个值变化时 |
| 87 | averageChange() { | 87 | averageChange() { |
| 88 | - if (this.radioValue == '4') { | 88 | + if (this.radioValue === '4') { |
| 89 | this.$emit('update', 'year', this.averageTotal); | 89 | this.$emit('update', 'year', this.averageTotal); |
| 90 | } | 90 | } |
| 91 | }, | 91 | }, |
| 92 | // checkbox值变化时 | 92 | // checkbox值变化时 |
| 93 | checkboxChange() { | 93 | checkboxChange() { |
| 94 | - if (this.radioValue == '5') { | 94 | + if (this.radioValue === '5') { |
| 95 | this.$emit('update', 'year', this.checkboxString); | 95 | this.$emit('update', 'year', this.checkboxString); |
| 96 | } | 96 | } |
| 97 | } | 97 | } |
yudao-ui-admin/src/components/HeaderSearch/index.vue
| @@ -167,7 +167,7 @@ export default { | @@ -167,7 +167,7 @@ export default { | ||
| 167 | display: inline-block; | 167 | display: inline-block; |
| 168 | vertical-align: middle; | 168 | vertical-align: middle; |
| 169 | 169 | ||
| 170 | - ::v-deep .el-input__inner { | 170 | + :deep(.el-input__inner) { |
| 171 | border-radius: 0; | 171 | border-radius: 0; |
| 172 | border: 0; | 172 | border: 0; |
| 173 | padding-left: 0; | 173 | padding-left: 0; |
yudao-ui-admin/src/components/ImagePreview/index.vue
| @@ -64,14 +64,14 @@ export default { | @@ -64,14 +64,14 @@ export default { | ||
| 64 | border-radius: 5px; | 64 | border-radius: 5px; |
| 65 | background-color: #ebeef5; | 65 | background-color: #ebeef5; |
| 66 | box-shadow: 0 0 5px 1px #ccc; | 66 | box-shadow: 0 0 5px 1px #ccc; |
| 67 | - ::v-deep .el-image__inner { | 67 | + :deep(.el-image__inner) { |
| 68 | transition: all 0.3s; | 68 | transition: all 0.3s; |
| 69 | cursor: pointer; | 69 | cursor: pointer; |
| 70 | &:hover { | 70 | &:hover { |
| 71 | transform: scale(1.2); | 71 | transform: scale(1.2); |
| 72 | } | 72 | } |
| 73 | } | 73 | } |
| 74 | - ::v-deep .image-slot { | 74 | + :deep(.image-slot) { |
| 75 | display: flex; | 75 | display: flex; |
| 76 | justify-content: center; | 76 | justify-content: center; |
| 77 | align-items: center; | 77 | align-items: center; |
yudao-ui-admin/src/components/ImageUpload/index.vue
| @@ -141,8 +141,7 @@ export default { | @@ -141,8 +141,7 @@ export default { | ||
| 141 | } | 141 | } |
| 142 | isImg = this.fileType.some(type => { | 142 | isImg = this.fileType.some(type => { |
| 143 | if (file.type.indexOf(type) > -1) return true; | 143 | if (file.type.indexOf(type) > -1) return true; |
| 144 | - if (fileExtension && fileExtension.indexOf(type) > -1) return true; | ||
| 145 | - return false; | 144 | + return !!(fileExtension && fileExtension.indexOf(type) > -1); |
| 146 | }); | 145 | }); |
| 147 | } else { | 146 | } else { |
| 148 | isImg = file.type.indexOf("image") > -1; | 147 | isImg = file.type.indexOf("image") > -1; |
| @@ -190,16 +189,15 @@ export default { | @@ -190,16 +189,15 @@ export default { | ||
| 190 | </script> | 189 | </script> |
| 191 | <style scoped lang="scss"> | 190 | <style scoped lang="scss"> |
| 192 | // .el-upload--picture-card 控制加号部分 | 191 | // .el-upload--picture-card 控制加号部分 |
| 193 | -::v-deep.hide .el-upload--picture-card { | 192 | +:deep(.hide .el-upload--picture-card) { |
| 194 | display: none; | 193 | display: none; |
| 195 | } | 194 | } |
| 196 | // 去掉动画效果 | 195 | // 去掉动画效果 |
| 197 | -::v-deep .el-list-enter-active, | ||
| 198 | -::v-deep .el-list-leave-active { | 196 | +:deep(.el-list-enter-active, .el-list-leave-active) { |
| 199 | transition: all 0s; | 197 | transition: all 0s; |
| 200 | } | 198 | } |
| 201 | 199 | ||
| 202 | -::v-deep .el-list-enter, .el-list-leave-active { | 200 | +:deep(.el-list-enter, .el-list-leave-active) { |
| 203 | opacity: 0; | 201 | opacity: 0; |
| 204 | transform: translateY(0); | 202 | transform: translateY(0); |
| 205 | } | 203 | } |
yudao-ui-admin/src/components/PanThumb/index.vue
| @@ -108,7 +108,6 @@ export default { | @@ -108,7 +108,6 @@ export default { | ||
| 108 | 108 | ||
| 109 | .pan-info p a { | 109 | .pan-info p a { |
| 110 | display: block; | 110 | display: block; |
| 111 | - color: #333; | ||
| 112 | width: 80px; | 111 | width: 80px; |
| 113 | height: 80px; | 112 | height: 80px; |
| 114 | background: rgba(255, 255, 255, 0.3); | 113 | background: rgba(255, 255, 255, 0.3); |
yudao-ui-admin/src/components/RightToolbar/index.vue
| @@ -62,7 +62,7 @@ export default { | @@ -62,7 +62,7 @@ export default { | ||
| 62 | }, | 62 | }, |
| 63 | // 右侧列表元素变化 | 63 | // 右侧列表元素变化 |
| 64 | dataChange(data) { | 64 | dataChange(data) { |
| 65 | - for (var item in this.columns) { | 65 | + for (let item in this.columns) { |
| 66 | const key = this.columns[item].key; | 66 | const key = this.columns[item].key; |
| 67 | this.columns[item].visible = !data.includes(key); | 67 | this.columns[item].visible = !data.includes(key); |
| 68 | } | 68 | } |
| @@ -75,13 +75,13 @@ export default { | @@ -75,13 +75,13 @@ export default { | ||
| 75 | }; | 75 | }; |
| 76 | </script> | 76 | </script> |
| 77 | <style lang="scss" scoped> | 77 | <style lang="scss" scoped> |
| 78 | -::v-deep .el-transfer__button { | 78 | +:deep(.el-transfer__button) { |
| 79 | border-radius: 50%; | 79 | border-radius: 50%; |
| 80 | padding: 12px; | 80 | padding: 12px; |
| 81 | display: block; | 81 | display: block; |
| 82 | - margin-left: 0px; | 82 | + margin-left: 0; |
| 83 | } | 83 | } |
| 84 | -::v-deep .el-transfer__button:first-child { | 84 | +:deep(.el-transfer__button:first-child) { |
| 85 | margin-bottom: 10px; | 85 | margin-bottom: 10px; |
| 86 | } | 86 | } |
| 87 | </style> | 87 | </style> |
yudao-ui-admin/src/components/TopNav/index.vue
| @@ -69,7 +69,7 @@ export default { | @@ -69,7 +69,7 @@ export default { | ||
| 69 | childrenMenus() { | 69 | childrenMenus() { |
| 70 | const childrenMenus = []; | 70 | const childrenMenus = []; |
| 71 | this.routers.map((router) => { | 71 | this.routers.map((router) => { |
| 72 | - for (var item in router.children) { | 72 | + for (let item in router.children) { |
| 73 | if (router.children[item].parentPath === undefined) { | 73 | if (router.children[item].parentPath === undefined) { |
| 74 | if(router.path === "/") { | 74 | if(router.path === "/") { |
| 75 | router.children[item].path = "/" + router.children[item].path; | 75 | router.children[item].path = "/" + router.children[item].path; |
| @@ -135,10 +135,10 @@ export default { | @@ -135,10 +135,10 @@ export default { | ||
| 135 | }, | 135 | }, |
| 136 | // 当前激活的路由 | 136 | // 当前激活的路由 |
| 137 | activeRoutes(key) { | 137 | activeRoutes(key) { |
| 138 | - var routes = []; | 138 | + const routes = [] |
| 139 | if (this.childrenMenus && this.childrenMenus.length > 0) { | 139 | if (this.childrenMenus && this.childrenMenus.length > 0) { |
| 140 | this.childrenMenus.map((item) => { | 140 | this.childrenMenus.map((item) => { |
| 141 | - if (key == item.parentPath || (key == "index" && "" == item.path)) { | 141 | + if (key === item.parentPath || (key === "index" && "" === item.path)) { |
| 142 | routes.push(item); | 142 | routes.push(item); |
| 143 | } | 143 | } |
| 144 | }); | 144 | }); |
yudao-ui-admin/src/components/Verifition/Verify.vue
| @@ -440,7 +440,6 @@ export default { | @@ -440,7 +440,6 @@ export default { | ||
| 440 | right: 0; | 440 | right: 0; |
| 441 | top: 0; | 441 | top: 0; |
| 442 | bottom: 0; | 442 | bottom: 0; |
| 443 | - background-size: cover; | ||
| 444 | z-index: 9999; | 443 | z-index: 9999; |
| 445 | background-image: url("data:image/png;base64,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"); | 444 | background-image: url("data:image/png;base64,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"); |
| 446 | background-size: contain; | 445 | background-size: contain; |
yudao-ui-admin/src/components/Verifition/Verify/VerifyPoints.vue
| @@ -58,7 +58,7 @@ | @@ -58,7 +58,7 @@ | ||
| 58 | * VerifyPoints | 58 | * VerifyPoints |
| 59 | * @description 点选 | 59 | * @description 点选 |
| 60 | * */ | 60 | * */ |
| 61 | -import { resetSize, _code_chars, _code_color1, _code_color2 } from './../utils/util' | 61 | +import { resetSize } from './../utils/util' |
| 62 | import { aesEncrypt } from '@/utils/ase' | 62 | import { aesEncrypt } from '@/utils/ase' |
| 63 | import { reqGet, reqCheck } from './../api/index' | 63 | import { reqGet, reqCheck } from './../api/index' |
| 64 | 64 | ||
| @@ -167,7 +167,7 @@ export default { | @@ -167,7 +167,7 @@ export default { | ||
| 167 | setTimeout(() => { | 167 | setTimeout(() => { |
| 168 | // var flag = this.comparePos(this.fontPos, this.checkPosArr); | 168 | // var flag = this.comparePos(this.fontPos, this.checkPosArr); |
| 169 | // 发送后端请求 | 169 | // 发送后端请求 |
| 170 | - var captchaVerification = this.secretKey ? aesEncrypt(this.backToken + '---' + JSON.stringify(this.checkPosArr), this.secretKey) : this.backToken + '---' + JSON.stringify(this.checkPosArr) | 170 | + const captchaVerification = this.secretKey ? aesEncrypt(this.backToken + '---' + JSON.stringify(this.checkPosArr), this.secretKey) : this.backToken + '---' + JSON.stringify(this.checkPosArr) |
| 171 | const data = { | 171 | const data = { |
| 172 | captchaType: this.captchaType, | 172 | captchaType: this.captchaType, |
| 173 | 'pointJson': this.secretKey ? aesEncrypt(JSON.stringify(this.checkPosArr), this.secretKey) : JSON.stringify(this.checkPosArr), | 173 | 'pointJson': this.secretKey ? aesEncrypt(JSON.stringify(this.checkPosArr), this.secretKey) : JSON.stringify(this.checkPosArr), |
| @@ -205,8 +205,8 @@ export default { | @@ -205,8 +205,8 @@ export default { | ||
| 205 | 205 | ||
| 206 | // 获取坐标 | 206 | // 获取坐标 |
| 207 | getMousePos: function(obj, e) { | 207 | getMousePos: function(obj, e) { |
| 208 | - var x = e.offsetX | ||
| 209 | - var y = e.offsetY | 208 | + const x = e.offsetX |
| 209 | + const y = e.offsetY | ||
| 210 | return { x, y } | 210 | return { x, y } |
| 211 | }, | 211 | }, |
| 212 | // 创建坐标点 | 212 | // 创建坐标点 |
| @@ -253,7 +253,7 @@ export default { | @@ -253,7 +253,7 @@ export default { | ||
| 253 | }, | 253 | }, |
| 254 | // 坐标转换函数 | 254 | // 坐标转换函数 |
| 255 | pointTransfrom(pointArr, imgSize) { | 255 | pointTransfrom(pointArr, imgSize) { |
| 256 | - var newPointArr = pointArr.map(p => { | 256 | + const newPointArr = pointArr.map(p => { |
| 257 | const x = Math.round(310 * p.x / parseInt(imgSize.imgWidth)) | 257 | const x = Math.round(310 * p.x / parseInt(imgSize.imgWidth)) |
| 258 | const y = Math.round(155 * p.y / parseInt(imgSize.imgHeight)) | 258 | const y = Math.round(155 * p.y / parseInt(imgSize.imgHeight)) |
| 259 | return { x, y } | 259 | return { x, y } |
yudao-ui-admin/src/components/Verifition/Verify/VerifySlide.vue
| @@ -193,7 +193,7 @@ export default { | @@ -193,7 +193,7 @@ export default { | ||
| 193 | this.$parent.$emit('ready', this) | 193 | this.$parent.$emit('ready', this) |
| 194 | }) | 194 | }) |
| 195 | 195 | ||
| 196 | - var _this = this | 196 | + const _this = this |
| 197 | 197 | ||
| 198 | window.removeEventListener('touchmove', function(e) { | 198 | window.removeEventListener('touchmove', function(e) { |
| 199 | _this.move(e) | 199 | _this.move(e) |
| @@ -228,11 +228,12 @@ export default { | @@ -228,11 +228,12 @@ export default { | ||
| 228 | 228 | ||
| 229 | // 鼠标按下 | 229 | // 鼠标按下 |
| 230 | start: function(e) { | 230 | start: function(e) { |
| 231 | + let x | ||
| 231 | e = e || window.event | 232 | e = e || window.event |
| 232 | if (!e.touches) { // 兼容PC端 | 233 | if (!e.touches) { // 兼容PC端 |
| 233 | - var x = e.clientX | 234 | + x = e.clientX |
| 234 | } else { // 兼容移动端 | 235 | } else { // 兼容移动端 |
| 235 | - var x = e.touches[0].pageX | 236 | + x = e.touches[0].pageX |
| 236 | } | 237 | } |
| 237 | this.startLeft = Math.floor(x - this.barArea.getBoundingClientRect().left) | 238 | this.startLeft = Math.floor(x - this.barArea.getBoundingClientRect().left) |
| 238 | this.startMoveTime = +new Date() // 开始滑动的时间 | 239 | this.startMoveTime = +new Date() // 开始滑动的时间 |
| @@ -247,15 +248,16 @@ export default { | @@ -247,15 +248,16 @@ export default { | ||
| 247 | }, | 248 | }, |
| 248 | // 鼠标移动 | 249 | // 鼠标移动 |
| 249 | move: function(e) { | 250 | move: function(e) { |
| 251 | + let x | ||
| 250 | e = e || window.event | 252 | e = e || window.event |
| 251 | if (this.status && this.isEnd === false) { | 253 | if (this.status && this.isEnd === false) { |
| 252 | if (!e.touches) { // 兼容PC端 | 254 | if (!e.touches) { // 兼容PC端 |
| 253 | - var x = e.clientX | 255 | + x = e.clientX |
| 254 | } else { // 兼容移动端 | 256 | } else { // 兼容移动端 |
| 255 | - var x = e.touches[0].pageX | 257 | + x = e.touches[0].pageX |
| 256 | } | 258 | } |
| 257 | - var bar_area_left = this.barArea.getBoundingClientRect().left | ||
| 258 | - var move_block_left = x - bar_area_left // 小方块相对于父元素的left值 | 259 | + const bar_area_left = this.barArea.getBoundingClientRect().left |
| 260 | + let move_block_left = x - bar_area_left // 小方块相对于父元素的left值 | ||
| 259 | if (move_block_left >= this.barArea.offsetWidth - parseInt(parseInt(this.blockSize.width) / 2) - 2) { | 261 | if (move_block_left >= this.barArea.offsetWidth - parseInt(parseInt(this.blockSize.width) / 2) - 2) { |
| 260 | move_block_left = this.barArea.offsetWidth - parseInt(parseInt(this.blockSize.width) / 2) - 2 | 262 | move_block_left = this.barArea.offsetWidth - parseInt(parseInt(this.blockSize.width) / 2) - 2 |
| 261 | } | 263 | } |
| @@ -271,10 +273,10 @@ export default { | @@ -271,10 +273,10 @@ export default { | ||
| 271 | // 鼠标松开 | 273 | // 鼠标松开 |
| 272 | end: function() { | 274 | end: function() { |
| 273 | this.endMovetime = +new Date() | 275 | this.endMovetime = +new Date() |
| 274 | - var _this = this | 276 | + const _this = this |
| 275 | // 判断是否重合 | 277 | // 判断是否重合 |
| 276 | if (this.status && this.isEnd === false) { | 278 | if (this.status && this.isEnd === false) { |
| 277 | - var moveLeftDistance = parseInt((this.moveBlockLeft || '').replace('px', '')) | 279 | + const moveLeftDistance = parseInt((this.moveBlockLeft || '').replace('px', '')) |
| 278 | moveLeftDistance = moveLeftDistance * 310 / parseInt(this.setSize.imgWidth) | 280 | moveLeftDistance = moveLeftDistance * 310 / parseInt(this.setSize.imgWidth) |
| 279 | const data = { | 281 | const data = { |
| 280 | captchaType: this.captchaType, | 282 | captchaType: this.captchaType, |
| @@ -297,7 +299,10 @@ export default { | @@ -297,7 +299,10 @@ export default { | ||
| 297 | } | 299 | } |
| 298 | this.passFlag = true | 300 | this.passFlag = true |
| 299 | this.tipWords = `${((this.endMovetime - this.startMoveTime) / 1000).toFixed(2)}s验证成功` | 301 | this.tipWords = `${((this.endMovetime - this.startMoveTime) / 1000).toFixed(2)}s验证成功` |
| 300 | - var captchaVerification = this.secretKey ? aesEncrypt(this.backToken + '---' + JSON.stringify({ x: moveLeftDistance, y: 5.0 }), this.secretKey) : this.backToken + '---' + JSON.stringify({ x: moveLeftDistance, y: 5.0 }) | 302 | + const captchaVerification = this.secretKey ? aesEncrypt(this.backToken + '---' + JSON.stringify({ |
| 303 | + x: moveLeftDistance, | ||
| 304 | + y: 5.0 | ||
| 305 | + }), this.secretKey) : this.backToken + '---' + JSON.stringify({ x: moveLeftDistance, y: 5.0 }) | ||
| 301 | setTimeout(() => { | 306 | setTimeout(() => { |
| 302 | this.tipWords = '' | 307 | this.tipWords = '' |
| 303 | this.$parent.closeBox() | 308 | this.$parent.closeBox() |
yudao-ui-admin/src/components/Verifition/utils/axios.js
| @@ -21,8 +21,7 @@ service.interceptors.request.use( | @@ -21,8 +21,7 @@ service.interceptors.request.use( | ||
| 21 | // response interceptor | 21 | // response interceptor |
| 22 | service.interceptors.response.use( | 22 | service.interceptors.response.use( |
| 23 | response => { | 23 | response => { |
| 24 | - const res = response.data | ||
| 25 | - return res | 24 | + return response.data |
| 26 | }, | 25 | }, |
| 27 | error => { | 26 | error => { |
| 28 | } | 27 | } |
yudao-ui-admin/src/components/bpmnProcessDesigner/package/designer/ProcessViewer.vue
| @@ -346,13 +346,13 @@ export default { | @@ -346,13 +346,13 @@ export default { | ||
| 346 | fill-opacity: 0.2 !important; | 346 | fill-opacity: 0.2 !important; |
| 347 | } | 347 | } |
| 348 | 348 | ||
| 349 | -/deep/.highlight-todo.djs-connection > .djs-visual > path { | 349 | +:deep(.highlight-todo.djs-connection > .djs-visual > path) { |
| 350 | stroke: #1890ff !important; | 350 | stroke: #1890ff !important; |
| 351 | stroke-dasharray: 4px !important; | 351 | stroke-dasharray: 4px !important; |
| 352 | fill-opacity: 0.2 !important; | 352 | fill-opacity: 0.2 !important; |
| 353 | marker-end: url(#sequenceflow-end-_E7DFDF-_E7DFDF-803g1kf6zwzmcig1y2ulm5egr); | 353 | marker-end: url(#sequenceflow-end-_E7DFDF-_E7DFDF-803g1kf6zwzmcig1y2ulm5egr); |
| 354 | } | 354 | } |
| 355 | -/deep/.highlight-todo.djs-shape .djs-visual > :nth-child(1) { | 355 | +:deep(.highlight-todo.djs-shape .djs-visual > :nth-child(1)) { |
| 356 | fill: #1890ff !important; | 356 | fill: #1890ff !important; |
| 357 | stroke: #1890ff !important; | 357 | stroke: #1890ff !important; |
| 358 | stroke-dasharray: 4px !important; | 358 | stroke-dasharray: 4px !important; |
| @@ -381,20 +381,20 @@ export default { | @@ -381,20 +381,20 @@ export default { | ||
| 381 | fill: green !important; /* color elements as green */ | 381 | fill: green !important; /* color elements as green */ |
| 382 | } | 382 | } |
| 383 | 383 | ||
| 384 | -/deep/.highlight.djs-shape .djs-visual > :nth-child(1) { | 384 | +:deep(.highlight.djs-shape .djs-visual > :nth-child(1)) { |
| 385 | fill: green !important; | 385 | fill: green !important; |
| 386 | stroke: green !important; | 386 | stroke: green !important; |
| 387 | fill-opacity: 0.2 !important; | 387 | fill-opacity: 0.2 !important; |
| 388 | } | 388 | } |
| 389 | -/deep/.highlight.djs-shape .djs-visual > :nth-child(2) { | 389 | +:deep(.highlight.djs-shape .djs-visual > :nth-child(2)) { |
| 390 | fill: green !important; | 390 | fill: green !important; |
| 391 | } | 391 | } |
| 392 | -/deep/.highlight.djs-shape .djs-visual > path { | 392 | +:deep(.highlight.djs-shape .djs-visual > path) { |
| 393 | fill: green !important; | 393 | fill: green !important; |
| 394 | fill-opacity: 0.2 !important; | 394 | fill-opacity: 0.2 !important; |
| 395 | stroke: green !important; | 395 | stroke: green !important; |
| 396 | } | 396 | } |
| 397 | -/deep/.highlight.djs-connection > .djs-visual > path { | 397 | +:deep(.highlight.djs-connection > .djs-visual > path) { |
| 398 | stroke: green !important; | 398 | stroke: green !important; |
| 399 | } | 399 | } |
| 400 | 400 | ||
| @@ -420,20 +420,20 @@ export default { | @@ -420,20 +420,20 @@ export default { | ||
| 420 | fill: red !important; /* color elements as green */ | 420 | fill: red !important; /* color elements as green */ |
| 421 | } | 421 | } |
| 422 | 422 | ||
| 423 | -/deep/.highlight-reject.djs-shape .djs-visual > :nth-child(1) { | 423 | +:deep(.highlight-reject.djs-shape .djs-visual > :nth-child(1)) { |
| 424 | fill: red !important; | 424 | fill: red !important; |
| 425 | stroke: red !important; | 425 | stroke: red !important; |
| 426 | fill-opacity: 0.2 !important; | 426 | fill-opacity: 0.2 !important; |
| 427 | } | 427 | } |
| 428 | -/deep/.highlight-reject.djs-shape .djs-visual > :nth-child(2) { | 428 | +:deep(.highlight-reject.djs-shape .djs-visual > :nth-child(2)) { |
| 429 | fill: red !important; | 429 | fill: red !important; |
| 430 | } | 430 | } |
| 431 | -/deep/.highlight-reject.djs-shape .djs-visual > path { | 431 | +:deep(.highlight-reject.djs-shape .djs-visual > path) { |
| 432 | fill: red !important; | 432 | fill: red !important; |
| 433 | fill-opacity: 0.2 !important; | 433 | fill-opacity: 0.2 !important; |
| 434 | stroke: red !important; | 434 | stroke: red !important; |
| 435 | } | 435 | } |
| 436 | -/deep/.highlight-reject.djs-connection > .djs-visual > path { | 436 | +:deep(.highlight-reject.djs-connection > .djs-visual > path) { |
| 437 | stroke: red !important; | 437 | stroke: red !important; |
| 438 | } | 438 | } |
| 439 | 439 | ||
| @@ -459,20 +459,20 @@ export default { | @@ -459,20 +459,20 @@ export default { | ||
| 459 | fill: grey !important; /* color elements as green */ | 459 | fill: grey !important; /* color elements as green */ |
| 460 | } | 460 | } |
| 461 | 461 | ||
| 462 | -/deep/.highlight-cancel.djs-shape .djs-visual > :nth-child(1) { | 462 | +:deep(.highlight-cancel.djs-shape .djs-visual > :nth-child(1)) { |
| 463 | fill: grey !important; | 463 | fill: grey !important; |
| 464 | stroke: grey !important; | 464 | stroke: grey !important; |
| 465 | fill-opacity: 0.2 !important; | 465 | fill-opacity: 0.2 !important; |
| 466 | } | 466 | } |
| 467 | -/deep/.highlight-cancel.djs-shape .djs-visual > :nth-child(2) { | 467 | +:deep(.highlight-cancel.djs-shape .djs-visual > :nth-child(2)) { |
| 468 | fill: grey !important; | 468 | fill: grey !important; |
| 469 | } | 469 | } |
| 470 | -/deep/.highlight-cancel.djs-shape .djs-visual > path { | 470 | +:deep(.highlight-cancel.djs-shape .djs-visual > path) { |
| 471 | fill: grey !important; | 471 | fill: grey !important; |
| 472 | fill-opacity: 0.2 !important; | 472 | fill-opacity: 0.2 !important; |
| 473 | stroke: grey !important; | 473 | stroke: grey !important; |
| 474 | } | 474 | } |
| 475 | -/deep/.highlight-cancel.djs-connection > .djs-visual > path { | 475 | +:deep(.highlight-cancel.djs-connection > .djs-visual > path) { |
| 476 | stroke: grey !important; | 476 | stroke: grey !important; |
| 477 | } | 477 | } |
| 478 | 478 | ||
| @@ -484,4 +484,4 @@ export default { | @@ -484,4 +484,4 @@ export default { | ||
| 484 | color: #fafafa; | 484 | color: #fafafa; |
| 485 | width: 200px; | 485 | width: 200px; |
| 486 | } | 486 | } |
| 487 | -</style> | ||
| 488 | \ No newline at end of file | 487 | \ No newline at end of file |
| 488 | +</style> |
yudao-ui-admin/src/components/bpmnProcessDesigner/package/designer/plugins/content-pad/contentPadProvider.js
| @@ -49,14 +49,14 @@ export default function ContextPadProvider( | @@ -49,14 +49,14 @@ export default function ContextPadProvider( | ||
| 49 | } | 49 | } |
| 50 | 50 | ||
| 51 | eventBus.on("create.end", 250, function(event) { | 51 | eventBus.on("create.end", 250, function(event) { |
| 52 | - var context = event.context, | ||
| 53 | - shape = context.shape; | 52 | + const context = event.context, |
| 53 | + shape = context.shape | ||
| 54 | 54 | ||
| 55 | if (!hasPrimaryModifier(event) || !contextPad.isOpen(shape)) { | 55 | if (!hasPrimaryModifier(event) || !contextPad.isOpen(shape)) { |
| 56 | return; | 56 | return; |
| 57 | } | 57 | } |
| 58 | 58 | ||
| 59 | - var entries = contextPad.getEntries(shape); | 59 | + const entries = contextPad.getEntries(shape) |
| 60 | 60 | ||
| 61 | if (entries.replace) { | 61 | if (entries.replace) { |
| 62 | entries.replace.action.click(event, shape); | 62 | entries.replace.action.click(event, shape); |
| @@ -81,7 +81,7 @@ ContextPadProvider.$inject = [ | @@ -81,7 +81,7 @@ ContextPadProvider.$inject = [ | ||
| 81 | ]; | 81 | ]; |
| 82 | 82 | ||
| 83 | ContextPadProvider.prototype.getContextPadEntries = function(element) { | 83 | ContextPadProvider.prototype.getContextPadEntries = function(element) { |
| 84 | - var contextPad = this._contextPad, | 84 | + const contextPad = this._contextPad, |
| 85 | modeling = this._modeling, | 85 | modeling = this._modeling, |
| 86 | elementFactory = this._elementFactory, | 86 | elementFactory = this._elementFactory, |
| 87 | connect = this._connect, | 87 | connect = this._connect, |
| @@ -90,15 +90,15 @@ ContextPadProvider.prototype.getContextPadEntries = function(element) { | @@ -90,15 +90,15 @@ ContextPadProvider.prototype.getContextPadEntries = function(element) { | ||
| 90 | canvas = this._canvas, | 90 | canvas = this._canvas, |
| 91 | rules = this._rules, | 91 | rules = this._rules, |
| 92 | autoPlace = this._autoPlace, | 92 | autoPlace = this._autoPlace, |
| 93 | - translate = this._translate; | 93 | + translate = this._translate |
| 94 | 94 | ||
| 95 | - var actions = {}; | 95 | + const actions = {} |
| 96 | 96 | ||
| 97 | if (element.type === "label") { | 97 | if (element.type === "label") { |
| 98 | return actions; | 98 | return actions; |
| 99 | } | 99 | } |
| 100 | 100 | ||
| 101 | - var businessObject = element.businessObject; | 101 | + const businessObject = element.businessObject |
| 102 | 102 | ||
| 103 | function startConnect(event, element) { | 103 | function startConnect(event, element) { |
| 104 | connect.start(event, element); | 104 | connect.start(event, element); |
| @@ -109,21 +109,21 @@ ContextPadProvider.prototype.getContextPadEntries = function(element) { | @@ -109,21 +109,21 @@ ContextPadProvider.prototype.getContextPadEntries = function(element) { | ||
| 109 | } | 109 | } |
| 110 | 110 | ||
| 111 | function getReplaceMenuPosition(element) { | 111 | function getReplaceMenuPosition(element) { |
| 112 | - var Y_OFFSET = 5; | 112 | + const Y_OFFSET = 5 |
| 113 | 113 | ||
| 114 | - var diagramContainer = canvas.getContainer(), | ||
| 115 | - pad = contextPad.getPad(element).html; | 114 | + const diagramContainer = canvas.getContainer(), |
| 115 | + pad = contextPad.getPad(element).html | ||
| 116 | 116 | ||
| 117 | - var diagramRect = diagramContainer.getBoundingClientRect(), | ||
| 118 | - padRect = pad.getBoundingClientRect(); | 117 | + const diagramRect = diagramContainer.getBoundingClientRect(), |
| 118 | + padRect = pad.getBoundingClientRect() | ||
| 119 | 119 | ||
| 120 | - var top = padRect.top - diagramRect.top; | ||
| 121 | - var left = padRect.left - diagramRect.left; | 120 | + const top = padRect.top - diagramRect.top |
| 121 | + const left = padRect.left - diagramRect.left | ||
| 122 | 122 | ||
| 123 | - var pos = { | 123 | + const pos = { |
| 124 | x: left, | 124 | x: left, |
| 125 | y: top + padRect.height + Y_OFFSET | 125 | y: top + padRect.height + Y_OFFSET |
| 126 | - }; | 126 | + } |
| 127 | 127 | ||
| 128 | return pos; | 128 | return pos; |
| 129 | } | 129 | } |
| @@ -145,19 +145,19 @@ ContextPadProvider.prototype.getContextPadEntries = function(element) { | @@ -145,19 +145,19 @@ ContextPadProvider.prototype.getContextPadEntries = function(element) { | ||
| 145 | } | 145 | } |
| 146 | 146 | ||
| 147 | function appendStart(event, element) { | 147 | function appendStart(event, element) { |
| 148 | - var shape = elementFactory.createShape(assign({ type: type }, options)); | 148 | + const shape = elementFactory.createShape(assign({ type: type }, options)) |
| 149 | create.start(event, shape, { | 149 | create.start(event, shape, { |
| 150 | source: element | 150 | source: element |
| 151 | }); | 151 | }); |
| 152 | } | 152 | } |
| 153 | 153 | ||
| 154 | - var append = autoPlace | 154 | + const append = autoPlace |
| 155 | ? function(event, element) { | 155 | ? function(event, element) { |
| 156 | - var shape = elementFactory.createShape(assign({ type: type }, options)); | 156 | + const shape = elementFactory.createShape(assign({ type: type }, options)) |
| 157 | 157 | ||
| 158 | - autoPlace.append(element, shape); | ||
| 159 | - } | ||
| 160 | - : appendStart; | 158 | + autoPlace.append(element, shape) |
| 159 | + } | ||
| 160 | + : appendStart | ||
| 161 | 161 | ||
| 162 | return { | 162 | return { |
| 163 | group: "model", | 163 | group: "model", |
| @@ -182,7 +182,7 @@ ContextPadProvider.prototype.getContextPadEntries = function(element) { | @@ -182,7 +182,7 @@ ContextPadProvider.prototype.getContextPadEntries = function(element) { | ||
| 182 | } | 182 | } |
| 183 | 183 | ||
| 184 | if (isAny(businessObject, ["bpmn:Lane", "bpmn:Participant"]) && isExpanded(businessObject)) { | 184 | if (isAny(businessObject, ["bpmn:Lane", "bpmn:Participant"]) && isExpanded(businessObject)) { |
| 185 | - var childLanes = getChildLanes(element); | 185 | + const childLanes = getChildLanes(element) |
| 186 | 186 | ||
| 187 | assign(actions, { | 187 | assign(actions, { |
| 188 | "lane-insert-above": { | 188 | "lane-insert-above": { |
| @@ -302,9 +302,9 @@ ContextPadProvider.prototype.getContextPadEntries = function(element) { | @@ -302,9 +302,9 @@ ContextPadProvider.prototype.getContextPadEntries = function(element) { | ||
| 302 | title: translate("Change type"), | 302 | title: translate("Change type"), |
| 303 | action: { | 303 | action: { |
| 304 | click: function(event, element) { | 304 | click: function(event, element) { |
| 305 | - var position = assign(getReplaceMenuPosition(element), { | 305 | + const position = assign(getReplaceMenuPosition(element), { |
| 306 | cursor: { x: event.x, y: event.y } | 306 | cursor: { x: event.x, y: event.y } |
| 307 | - }); | 307 | + }) |
| 308 | 308 | ||
| 309 | popupMenu.open(element, "bpmn-replace", position); | 309 | popupMenu.open(element, "bpmn-replace", position); |
| 310 | } | 310 | } |
| @@ -350,7 +350,7 @@ ContextPadProvider.prototype.getContextPadEntries = function(element) { | @@ -350,7 +350,7 @@ ContextPadProvider.prototype.getContextPadEntries = function(element) { | ||
| 350 | } | 350 | } |
| 351 | 351 | ||
| 352 | // delete element entry, only show if allowed by rules | 352 | // delete element entry, only show if allowed by rules |
| 353 | - var deleteAllowed = rules.allowed("elements.delete", { elements: [element] }); | 353 | + let deleteAllowed = rules.allowed('elements.delete', { elements: [element] }) |
| 354 | 354 | ||
| 355 | if (isArray(deleteAllowed)) { | 355 | if (isArray(deleteAllowed)) { |
| 356 | // was the element returned as a deletion candidate? | 356 | // was the element returned as a deletion candidate? |
| @@ -376,10 +376,10 @@ ContextPadProvider.prototype.getContextPadEntries = function(element) { | @@ -376,10 +376,10 @@ ContextPadProvider.prototype.getContextPadEntries = function(element) { | ||
| 376 | // helpers ///////// | 376 | // helpers ///////// |
| 377 | 377 | ||
| 378 | function isEventType(eventBo, type, definition) { | 378 | function isEventType(eventBo, type, definition) { |
| 379 | - var isType = eventBo.$instanceOf(type); | ||
| 380 | - var isDefinition = false; | 379 | + const isType = eventBo.$instanceOf(type) |
| 380 | + let isDefinition = false | ||
| 381 | 381 | ||
| 382 | - var definitions = eventBo.eventDefinitions || []; | 382 | + const definitions = eventBo.eventDefinitions || [] |
| 383 | forEach(definitions, function(def) { | 383 | forEach(definitions, function(def) { |
| 384 | if (def.$type === definition) { | 384 | if (def.$type === definition) { |
| 385 | isDefinition = true; | 385 | isDefinition = true; |
yudao-ui-admin/src/components/bpmnProcessDesigner/package/designer/plugins/extension-moddle/activiti/activitiExtension.js
| 1 | "use strict"; | 1 | "use strict"; |
| 2 | 2 | ||
| 3 | -var some = require("min-dash").some; | 3 | +const some = require('min-dash').some |
| 4 | 4 | ||
| 5 | -var ALLOWED_TYPES = { | ||
| 6 | - FailedJobRetryTimeCycle: ["bpmn:StartEvent", "bpmn:BoundaryEvent", "bpmn:IntermediateCatchEvent", "bpmn:Activity"], | ||
| 7 | - Connector: ["bpmn:EndEvent", "bpmn:IntermediateThrowEvent"], | ||
| 8 | - Field: ["bpmn:EndEvent", "bpmn:IntermediateThrowEvent"] | ||
| 9 | -}; | 5 | +const ALLOWED_TYPES = { |
| 6 | + FailedJobRetryTimeCycle: ['bpmn:StartEvent', 'bpmn:BoundaryEvent', 'bpmn:IntermediateCatchEvent', 'bpmn:Activity'], | ||
| 7 | + Connector: ['bpmn:EndEvent', 'bpmn:IntermediateThrowEvent'], | ||
| 8 | + Field: ['bpmn:EndEvent', 'bpmn:IntermediateThrowEvent'] | ||
| 9 | +} | ||
| 10 | 10 | ||
| 11 | function is(element, type) { | 11 | function is(element, type) { |
| 12 | return element && typeof element.$instanceOf === "function" && element.$instanceOf(type); | 12 | return element && typeof element.$instanceOf === "function" && element.$instanceOf(type); |
| @@ -32,8 +32,8 @@ function anyType(element, types) { | @@ -32,8 +32,8 @@ function anyType(element, types) { | ||
| 32 | } | 32 | } |
| 33 | 33 | ||
| 34 | function isAllowed(propName, propDescriptor, newElement) { | 34 | function isAllowed(propName, propDescriptor, newElement) { |
| 35 | - var name = propDescriptor.name, | ||
| 36 | - types = ALLOWED_TYPES[name.replace(/activiti:/, "")]; | 35 | + const name = propDescriptor.name, |
| 36 | + types = ALLOWED_TYPES[name.replace(/activiti:/, '')] | ||
| 37 | 37 | ||
| 38 | return name === propName && anyType(newElement, types); | 38 | return name === propName && anyType(newElement, types); |
| 39 | } | 39 | } |
| @@ -42,8 +42,8 @@ function ActivitiModdleExtension(eventBus) { | @@ -42,8 +42,8 @@ function ActivitiModdleExtension(eventBus) { | ||
| 42 | eventBus.on( | 42 | eventBus.on( |
| 43 | "property.clone", | 43 | "property.clone", |
| 44 | function(context) { | 44 | function(context) { |
| 45 | - var newElement = context.newElement, | ||
| 46 | - propDescriptor = context.propertyDescriptor; | 45 | + const newElement = context.newElement, |
| 46 | + propDescriptor = context.propertyDescriptor | ||
| 47 | 47 | ||
| 48 | this.canCloneProperty(newElement, propDescriptor); | 48 | this.canCloneProperty(newElement, propDescriptor); |
| 49 | }, | 49 | }, |
yudao-ui-admin/src/components/bpmnProcessDesigner/package/designer/plugins/extension-moddle/camunda/extension.js
| 1 | "use strict"; | 1 | "use strict"; |
| 2 | 2 | ||
| 3 | -var isFunction = require("min-dash").isFunction, | ||
| 4 | - isObject = require("min-dash").isObject, | ||
| 5 | - some = require("min-dash").some; | 3 | +const isFunction = require('min-dash').isFunction, |
| 4 | + isObject = require('min-dash').isObject, | ||
| 5 | + some = require('min-dash').some | ||
| 6 | 6 | ||
| 7 | -var WILDCARD = "*"; | 7 | +const WILDCARD = '*' |
| 8 | 8 | ||
| 9 | function CamundaModdleExtension(eventBus) { | 9 | function CamundaModdleExtension(eventBus) { |
| 10 | - var self = this; | 10 | + const self = this |
| 11 | 11 | ||
| 12 | eventBus.on("moddleCopy.canCopyProperty", function(context) { | 12 | eventBus.on("moddleCopy.canCopyProperty", function(context) { |
| 13 | - var property = context.property, | ||
| 14 | - parent = context.parent; | 13 | + const property = context.property, |
| 14 | + parent = context.parent | ||
| 15 | 15 | ||
| 16 | return self.canCopyProperty(property, parent); | 16 | return self.canCopyProperty(property, parent); |
| 17 | }); | 17 | }); |
| @@ -45,14 +45,14 @@ CamundaModdleExtension.prototype.canCopyProperty = function(property, parent) { | @@ -45,14 +45,14 @@ CamundaModdleExtension.prototype.canCopyProperty = function(property, parent) { | ||
| 45 | 45 | ||
| 46 | CamundaModdleExtension.prototype.canHostInputOutput = function(parent) { | 46 | CamundaModdleExtension.prototype.canHostInputOutput = function(parent) { |
| 47 | // allowed in camunda:Connector | 47 | // allowed in camunda:Connector |
| 48 | - var connector = getParent(parent, "camunda:Connector"); | 48 | + const connector = getParent(parent, 'camunda:Connector') |
| 49 | 49 | ||
| 50 | if (connector) { | 50 | if (connector) { |
| 51 | return true; | 51 | return true; |
| 52 | } | 52 | } |
| 53 | 53 | ||
| 54 | // special rules inside bpmn:FlowNode | 54 | // special rules inside bpmn:FlowNode |
| 55 | - var flowNode = getParent(parent, "bpmn:FlowNode"); | 55 | + const flowNode = getParent(parent, 'bpmn:FlowNode') |
| 56 | 56 | ||
| 57 | if (!flowNode) { | 57 | if (!flowNode) { |
| 58 | return false; | 58 | return false; |
| @@ -62,15 +62,13 @@ CamundaModdleExtension.prototype.canHostInputOutput = function(parent) { | @@ -62,15 +62,13 @@ CamundaModdleExtension.prototype.canHostInputOutput = function(parent) { | ||
| 62 | return false; | 62 | return false; |
| 63 | } | 63 | } |
| 64 | 64 | ||
| 65 | - if (is(flowNode, "bpmn:SubProcess") && flowNode.get("triggeredByEvent")) { | ||
| 66 | - return false; | ||
| 67 | - } | 65 | + return !(is(flowNode, "bpmn:SubProcess") && flowNode.get("triggeredByEvent")); |
| 66 | + | ||
| 68 | 67 | ||
| 69 | - return true; | ||
| 70 | }; | 68 | }; |
| 71 | 69 | ||
| 72 | CamundaModdleExtension.prototype.canHostConnector = function(parent) { | 70 | CamundaModdleExtension.prototype.canHostConnector = function(parent) { |
| 73 | - var serviceTaskLike = getParent(parent, "camunda:ServiceTaskLike"); | 71 | + const serviceTaskLike = getParent(parent, 'camunda:ServiceTaskLike') |
| 74 | 72 | ||
| 75 | if (is(serviceTaskLike, "bpmn:MessageEventDefinition")) { | 73 | if (is(serviceTaskLike, "bpmn:MessageEventDefinition")) { |
| 76 | // only allow on throw and end events | 74 | // only allow on throw and end events |
| @@ -81,13 +79,13 @@ CamundaModdleExtension.prototype.canHostConnector = function(parent) { | @@ -81,13 +79,13 @@ CamundaModdleExtension.prototype.canHostConnector = function(parent) { | ||
| 81 | }; | 79 | }; |
| 82 | 80 | ||
| 83 | CamundaModdleExtension.prototype.canHostIn = function(parent) { | 81 | CamundaModdleExtension.prototype.canHostIn = function(parent) { |
| 84 | - var callActivity = getParent(parent, "bpmn:CallActivity"); | 82 | + const callActivity = getParent(parent, 'bpmn:CallActivity') |
| 85 | 83 | ||
| 86 | if (callActivity) { | 84 | if (callActivity) { |
| 87 | return true; | 85 | return true; |
| 88 | } | 86 | } |
| 89 | 87 | ||
| 90 | - var signalEventDefinition = getParent(parent, "bpmn:SignalEventDefinition"); | 88 | + const signalEventDefinition = getParent(parent, 'bpmn:SignalEventDefinition') |
| 91 | 89 | ||
| 92 | if (signalEventDefinition) { | 90 | if (signalEventDefinition) { |
| 93 | // only allow on throw and end events | 91 | // only allow on throw and end events |
| @@ -129,9 +127,9 @@ function getParent(element, type) { | @@ -129,9 +127,9 @@ function getParent(element, type) { | ||
| 129 | 127 | ||
| 130 | function isAllowedInParent(property, parent) { | 128 | function isAllowedInParent(property, parent) { |
| 131 | // (1) find property descriptor | 129 | // (1) find property descriptor |
| 132 | - var descriptor = property.$type && property.$model.getTypeDescriptor(property.$type); | 130 | + const descriptor = property.$type && property.$model.getTypeDescriptor(property.$type) |
| 133 | 131 | ||
| 134 | - var allowedIn = descriptor && descriptor.meta && descriptor.meta.allowedIn; | 132 | + const allowedIn = descriptor && descriptor.meta && descriptor.meta.allowedIn |
| 135 | 133 | ||
| 136 | if (!allowedIn || isWildcard(allowedIn)) { | 134 | if (!allowedIn || isWildcard(allowedIn)) { |
| 137 | return true; | 135 | return true; |
yudao-ui-admin/src/components/bpmnProcessDesigner/package/designer/plugins/extension-moddle/flowable/flowableExtension.js
| 1 | "use strict"; | 1 | "use strict"; |
| 2 | 2 | ||
| 3 | -var some = require("min-dash").some; | 3 | +const some = require('min-dash').some |
| 4 | 4 | ||
| 5 | -var ALLOWED_TYPES = { | ||
| 6 | - FailedJobRetryTimeCycle: ["bpmn:StartEvent", "bpmn:BoundaryEvent", "bpmn:IntermediateCatchEvent", "bpmn:Activity"], | ||
| 7 | - Connector: ["bpmn:EndEvent", "bpmn:IntermediateThrowEvent"], | ||
| 8 | - Field: ["bpmn:EndEvent", "bpmn:IntermediateThrowEvent"] | ||
| 9 | -}; | 5 | +const ALLOWED_TYPES = { |
| 6 | + FailedJobRetryTimeCycle: ['bpmn:StartEvent', 'bpmn:BoundaryEvent', 'bpmn:IntermediateCatchEvent', 'bpmn:Activity'], | ||
| 7 | + Connector: ['bpmn:EndEvent', 'bpmn:IntermediateThrowEvent'], | ||
| 8 | + Field: ['bpmn:EndEvent', 'bpmn:IntermediateThrowEvent'] | ||
| 9 | +} | ||
| 10 | 10 | ||
| 11 | function is(element, type) { | 11 | function is(element, type) { |
| 12 | return element && typeof element.$instanceOf === "function" && element.$instanceOf(type); | 12 | return element && typeof element.$instanceOf === "function" && element.$instanceOf(type); |
| @@ -32,8 +32,8 @@ function anyType(element, types) { | @@ -32,8 +32,8 @@ function anyType(element, types) { | ||
| 32 | } | 32 | } |
| 33 | 33 | ||
| 34 | function isAllowed(propName, propDescriptor, newElement) { | 34 | function isAllowed(propName, propDescriptor, newElement) { |
| 35 | - var name = propDescriptor.name, | ||
| 36 | - types = ALLOWED_TYPES[name.replace(/flowable:/, "")]; | 35 | + const name = propDescriptor.name, |
| 36 | + types = ALLOWED_TYPES[name.replace(/flowable:/, '')] | ||
| 37 | 37 | ||
| 38 | return name === propName && anyType(newElement, types); | 38 | return name === propName && anyType(newElement, types); |
| 39 | } | 39 | } |
| @@ -42,8 +42,8 @@ function FlowableModdleExtension(eventBus) { | @@ -42,8 +42,8 @@ function FlowableModdleExtension(eventBus) { | ||
| 42 | eventBus.on( | 42 | eventBus.on( |
| 43 | "property.clone", | 43 | "property.clone", |
| 44 | function(context) { | 44 | function(context) { |
| 45 | - var newElement = context.newElement, | ||
| 46 | - propDescriptor = context.propertyDescriptor; | 45 | + const newElement = context.newElement, |
| 46 | + propDescriptor = context.propertyDescriptor | ||
| 47 | 47 | ||
| 48 | this.canCloneProperty(newElement, propDescriptor); | 48 | this.canCloneProperty(newElement, propDescriptor); |
| 49 | }, | 49 | }, |
yudao-ui-admin/src/components/bpmnProcessDesigner/package/designer/plugins/palette/CustomPalette.js
| @@ -10,18 +10,18 @@ F.prototype = PaletteProvider.prototype; // 核心,将父类的原型赋值给 | @@ -10,18 +10,18 @@ F.prototype = PaletteProvider.prototype; // 核心,将父类的原型赋值给 | ||
| 10 | 10 | ||
| 11 | // 利用中介函数重写原型链方法 | 11 | // 利用中介函数重写原型链方法 |
| 12 | F.prototype.getPaletteEntries = function() { | 12 | F.prototype.getPaletteEntries = function() { |
| 13 | - var actions = {}, | 13 | + const actions = {}, |
| 14 | create = this._create, | 14 | create = this._create, |
| 15 | elementFactory = this._elementFactory, | 15 | elementFactory = this._elementFactory, |
| 16 | spaceTool = this._spaceTool, | 16 | spaceTool = this._spaceTool, |
| 17 | lassoTool = this._lassoTool, | 17 | lassoTool = this._lassoTool, |
| 18 | handTool = this._handTool, | 18 | handTool = this._handTool, |
| 19 | globalConnect = this._globalConnect, | 19 | globalConnect = this._globalConnect, |
| 20 | - translate = this._translate; | 20 | + translate = this._translate |
| 21 | 21 | ||
| 22 | function createAction(type, group, className, title, options) { | 22 | function createAction(type, group, className, title, options) { |
| 23 | function createListener(event) { | 23 | function createListener(event) { |
| 24 | - var shape = elementFactory.createShape(assign({ type: type }, options)); | 24 | + const shape = elementFactory.createShape(assign({ type: type }, options)) |
| 25 | 25 | ||
| 26 | if (options) { | 26 | if (options) { |
| 27 | shape.businessObject.di.isExpanded = options.isExpanded; | 27 | shape.businessObject.di.isExpanded = options.isExpanded; |
| @@ -30,7 +30,7 @@ F.prototype.getPaletteEntries = function() { | @@ -30,7 +30,7 @@ F.prototype.getPaletteEntries = function() { | ||
| 30 | create.start(event, shape); | 30 | create.start(event, shape); |
| 31 | } | 31 | } |
| 32 | 32 | ||
| 33 | - var shortType = type.replace(/^bpmn:/, ""); | 33 | + const shortType = type.replace(/^bpmn:/, '') |
| 34 | 34 | ||
| 35 | return { | 35 | return { |
| 36 | group: group, | 36 | group: group, |
| @@ -44,19 +44,19 @@ F.prototype.getPaletteEntries = function() { | @@ -44,19 +44,19 @@ F.prototype.getPaletteEntries = function() { | ||
| 44 | } | 44 | } |
| 45 | 45 | ||
| 46 | function createSubprocess(event) { | 46 | function createSubprocess(event) { |
| 47 | - var subProcess = elementFactory.createShape({ | ||
| 48 | - type: "bpmn:SubProcess", | 47 | + const subProcess = elementFactory.createShape({ |
| 48 | + type: 'bpmn:SubProcess', | ||
| 49 | x: 0, | 49 | x: 0, |
| 50 | y: 0, | 50 | y: 0, |
| 51 | isExpanded: true | 51 | isExpanded: true |
| 52 | - }); | 52 | + }) |
| 53 | 53 | ||
| 54 | - var startEvent = elementFactory.createShape({ | ||
| 55 | - type: "bpmn:StartEvent", | 54 | + const startEvent = elementFactory.createShape({ |
| 55 | + type: 'bpmn:StartEvent', | ||
| 56 | x: 40, | 56 | x: 40, |
| 57 | y: 82, | 57 | y: 82, |
| 58 | parent: subProcess | 58 | parent: subProcess |
| 59 | - }); | 59 | + }) |
| 60 | 60 | ||
| 61 | create.start(event, [subProcess, startEvent], { | 61 | create.start(event, [subProcess, startEvent], { |
| 62 | hints: { | 62 | hints: { |
yudao-ui-admin/src/components/bpmnProcessDesigner/package/designer/plugins/palette/paletteProvider.js
| @@ -19,18 +19,18 @@ export default function PaletteProvider(palette, create, elementFactory, spaceTo | @@ -19,18 +19,18 @@ export default function PaletteProvider(palette, create, elementFactory, spaceTo | ||
| 19 | PaletteProvider.$inject = ["palette", "create", "elementFactory", "spaceTool", "lassoTool", "handTool", "globalConnect", "translate"]; | 19 | PaletteProvider.$inject = ["palette", "create", "elementFactory", "spaceTool", "lassoTool", "handTool", "globalConnect", "translate"]; |
| 20 | 20 | ||
| 21 | PaletteProvider.prototype.getPaletteEntries = function() { | 21 | PaletteProvider.prototype.getPaletteEntries = function() { |
| 22 | - var actions = {}, | 22 | + const actions = {}, |
| 23 | create = this._create, | 23 | create = this._create, |
| 24 | elementFactory = this._elementFactory, | 24 | elementFactory = this._elementFactory, |
| 25 | spaceTool = this._spaceTool, | 25 | spaceTool = this._spaceTool, |
| 26 | lassoTool = this._lassoTool, | 26 | lassoTool = this._lassoTool, |
| 27 | handTool = this._handTool, | 27 | handTool = this._handTool, |
| 28 | globalConnect = this._globalConnect, | 28 | globalConnect = this._globalConnect, |
| 29 | - translate = this._translate; | 29 | + translate = this._translate |
| 30 | 30 | ||
| 31 | function createAction(type, group, className, title, options) { | 31 | function createAction(type, group, className, title, options) { |
| 32 | function createListener(event) { | 32 | function createListener(event) { |
| 33 | - var shape = elementFactory.createShape(assign({ type: type }, options)); | 33 | + const shape = elementFactory.createShape(assign({ type: type }, options)) |
| 34 | 34 | ||
| 35 | if (options) { | 35 | if (options) { |
| 36 | shape.businessObject.di.isExpanded = options.isExpanded; | 36 | shape.businessObject.di.isExpanded = options.isExpanded; |
| @@ -39,7 +39,7 @@ PaletteProvider.prototype.getPaletteEntries = function() { | @@ -39,7 +39,7 @@ PaletteProvider.prototype.getPaletteEntries = function() { | ||
| 39 | create.start(event, shape); | 39 | create.start(event, shape); |
| 40 | } | 40 | } |
| 41 | 41 | ||
| 42 | - var shortType = type.replace(/^bpmn:/, ""); | 42 | + const shortType = type.replace(/^bpmn:/, '') |
| 43 | 43 | ||
| 44 | return { | 44 | return { |
| 45 | group: group, | 45 | group: group, |
| @@ -53,19 +53,19 @@ PaletteProvider.prototype.getPaletteEntries = function() { | @@ -53,19 +53,19 @@ PaletteProvider.prototype.getPaletteEntries = function() { | ||
| 53 | } | 53 | } |
| 54 | 54 | ||
| 55 | function createSubprocess(event) { | 55 | function createSubprocess(event) { |
| 56 | - var subProcess = elementFactory.createShape({ | ||
| 57 | - type: "bpmn:SubProcess", | 56 | + const subProcess = elementFactory.createShape({ |
| 57 | + type: 'bpmn:SubProcess', | ||
| 58 | x: 0, | 58 | x: 0, |
| 59 | y: 0, | 59 | y: 0, |
| 60 | isExpanded: true | 60 | isExpanded: true |
| 61 | - }); | 61 | + }) |
| 62 | 62 | ||
| 63 | - var startEvent = elementFactory.createShape({ | ||
| 64 | - type: "bpmn:StartEvent", | 63 | + const startEvent = elementFactory.createShape({ |
| 64 | + type: 'bpmn:StartEvent', | ||
| 65 | x: 40, | 65 | x: 40, |
| 66 | y: 82, | 66 | y: 82, |
| 67 | parent: subProcess | 67 | parent: subProcess |
| 68 | - }); | 68 | + }) |
| 69 | 69 | ||
| 70 | create.start(event, [subProcess, startEvent], { | 70 | create.start(event, [subProcess, startEvent], { |
| 71 | hints: { | 71 | hints: { |
yudao-ui-admin/src/components/bpmnProcessDesigner/package/penal/base/ElementBaseInfo.vue
| @@ -76,7 +76,7 @@ export default { | @@ -76,7 +76,7 @@ export default { | ||
| 76 | if (!value) { | 76 | if (!value) { |
| 77 | return; | 77 | return; |
| 78 | } | 78 | } |
| 79 | - if (!value.match(/[a-zA-Z_][\-_.0-9_a-zA-Z$]*/)) { | 79 | + if (!value.match(/[a-zA-Z_][\-_.0-9a-zA-Z$]*/)) { |
| 80 | console.log('key 不满足 XML NCName 规则,所以不进行赋值'); | 80 | console.log('key 不满足 XML NCName 规则,所以不进行赋值'); |
| 81 | return; | 81 | return; |
| 82 | } | 82 | } |
yudao-ui-admin/src/components/generator/js.js
| 1 | import { isArray } from 'util' | 1 | import { isArray } from 'util' |
| 2 | -import { exportDefault, titleCase, deepClone } from '@/utils/index' | 2 | +import { exportDefault, titleCase, deepClone } from '@/utils' |
| 3 | import ruleTrigger from './ruleTrigger' | 3 | import ruleTrigger from './ruleTrigger' |
| 4 | 4 | ||
| 5 | const units = { | 5 | const units = { |
yudao-ui-admin/src/directive/dialog/drag.js
| @@ -5,7 +5,7 @@ | @@ -5,7 +5,7 @@ | ||
| 5 | export default { | 5 | export default { |
| 6 | bind(el, binding, vnode, oldVnode) { | 6 | bind(el, binding, vnode, oldVnode) { |
| 7 | const value = binding.value | 7 | const value = binding.value |
| 8 | - if (value == false) return | 8 | + if (value === false) return |
| 9 | // 获取拖拽内容头部 | 9 | // 获取拖拽内容头部 |
| 10 | const dialogHeaderEl = el.querySelector('.el-dialog__header'); | 10 | const dialogHeaderEl = el.querySelector('.el-dialog__header'); |
| 11 | const dragDom = el.querySelector('.el-dialog'); | 11 | const dragDom = el.querySelector('.el-dialog'); |
| @@ -16,7 +16,7 @@ export default { | @@ -16,7 +16,7 @@ export default { | ||
| 16 | dragDom.style.marginTop = 0; | 16 | dragDom.style.marginTop = 0; |
| 17 | let width = dragDom.style.width; | 17 | let width = dragDom.style.width; |
| 18 | if (width.includes('%')) { | 18 | if (width.includes('%')) { |
| 19 | - width = +document.body.clientWidth * (+width.replace(/\%/g, '') / 100); | 19 | + width = +document.body.clientWidth * (+width.replace(/%/g, '') / 100); |
| 20 | } else { | 20 | } else { |
| 21 | width = +width.replace(/\px/g, ''); | 21 | width = +width.replace(/\px/g, ''); |
| 22 | } | 22 | } |
| @@ -32,12 +32,12 @@ export default { | @@ -32,12 +32,12 @@ export default { | ||
| 32 | 32 | ||
| 33 | // 注意在ie中 第一次获取到的值为组件自带50% 移动之后赋值为px | 33 | // 注意在ie中 第一次获取到的值为组件自带50% 移动之后赋值为px |
| 34 | if (sty.left.includes('%')) { | 34 | if (sty.left.includes('%')) { |
| 35 | - styL = +document.body.clientWidth * (+sty.left.replace(/\%/g, '') / 100); | ||
| 36 | - styT = +document.body.clientHeight * (+sty.top.replace(/\%/g, '') / 100); | 35 | + styL = +document.body.clientWidth * (+sty.left.replace(/%/g, '') / 100); |
| 36 | + styT = +document.body.clientHeight * (+sty.top.replace(/%/g, '') / 100); | ||
| 37 | } else { | 37 | } else { |
| 38 | styL = +sty.left.replace(/\px/g, ''); | 38 | styL = +sty.left.replace(/\px/g, ''); |
| 39 | styT = +sty.top.replace(/\px/g, ''); | 39 | styT = +sty.top.replace(/\px/g, ''); |
| 40 | - }; | 40 | + } |
| 41 | 41 | ||
| 42 | // 鼠标拖拽事件 | 42 | // 鼠标拖拽事件 |
| 43 | document.onmousemove = function (e) { | 43 | document.onmousemove = function (e) { |
yudao-ui-admin/src/layout/components/TagsView/ScrollPane.vue
| @@ -82,13 +82,11 @@ export default { | @@ -82,13 +82,11 @@ export default { | ||
| 82 | position: relative; | 82 | position: relative; |
| 83 | overflow: hidden; | 83 | overflow: hidden; |
| 84 | width: 100%; | 84 | width: 100%; |
| 85 | - ::v-deep { | ||
| 86 | - .el-scrollbar__bar { | ||
| 87 | - bottom: 0px; | 85 | + :deep(.el-scrollbar__bar) { |
| 86 | + bottom: 0; | ||
| 88 | } | 87 | } |
| 89 | - .el-scrollbar__wrap { | 88 | + :deep(.el-scrollbar__wrap) { |
| 90 | height: 49px; | 89 | height: 49px; |
| 91 | } | 90 | } |
| 92 | - } | ||
| 93 | } | 91 | } |
| 94 | </style> | 92 | </style> |
yudao-ui-admin/src/plugins/tab.js
| @@ -56,7 +56,7 @@ export default { | @@ -56,7 +56,7 @@ export default { | ||
| 56 | }, | 56 | }, |
| 57 | // 添加tab页签 | 57 | // 添加tab页签 |
| 58 | openPage(title, url, params) { | 58 | openPage(title, url, params) { |
| 59 | - var obj = { path: url, meta: { title: title } } | 59 | + const obj = { path: url, meta: { title: title } } |
| 60 | store.dispatch('tagsView/addView', obj); | 60 | store.dispatch('tagsView/addView', obj); |
| 61 | return router.push({ path: url, query: params }); | 61 | return router.push({ path: url, query: params }); |
| 62 | }, | 62 | }, |
yudao-ui-admin/src/store/modules/permission.js
| @@ -86,7 +86,7 @@ function filterAsyncRouter(asyncRouterMap, lastRouter = false, type = false) { | @@ -86,7 +86,7 @@ function filterAsyncRouter(asyncRouterMap, lastRouter = false, type = false) { | ||
| 86 | } | 86 | } |
| 87 | 87 | ||
| 88 | function filterChildren(childrenMap, lastRouter = false) { | 88 | function filterChildren(childrenMap, lastRouter = false) { |
| 89 | - var children = [] | 89 | + let children = [] |
| 90 | childrenMap.forEach((el, index) => { | 90 | childrenMap.forEach((el, index) => { |
| 91 | if (el.children && el.children.length) { | 91 | if (el.children && el.children.length) { |
| 92 | if (el.component === 'ParentView' && !lastRouter) { | 92 | if (el.component === 'ParentView' && !lastRouter) { |
yudao-ui-admin/src/store/modules/user.js
| 1 | -import {login, logout, getInfo, socialLogin, socialBindLogin, smsLogin} from '@/api/login' | 1 | +import {login, logout, getInfo, socialLogin, smsLogin} from '@/api/login' |
| 2 | import {setToken, removeToken} from '@/utils/auth' | 2 | import {setToken, removeToken} from '@/utils/auth' |
| 3 | 3 | ||
| 4 | const user = { | 4 | const user = { |
yudao-ui-admin/src/utils/index.js
| @@ -4,14 +4,14 @@ import { parseTime } from './ruoyi' | @@ -4,14 +4,14 @@ import { parseTime } from './ruoyi' | ||
| 4 | * 表格时间格式化 | 4 | * 表格时间格式化 |
| 5 | */ | 5 | */ |
| 6 | export function formatDate(cellValue) { | 6 | export function formatDate(cellValue) { |
| 7 | - if (cellValue == null || cellValue == "") return ""; | ||
| 8 | - var date = new Date(cellValue) | ||
| 9 | - var year = date.getFullYear() | ||
| 10 | - var month = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1 | ||
| 11 | - var day = date.getDate() < 10 ? '0' + date.getDate() : date.getDate() | ||
| 12 | - var hours = date.getHours() < 10 ? '0' + date.getHours() : date.getHours() | ||
| 13 | - var minutes = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes() | ||
| 14 | - var seconds = date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds() | 7 | + if (cellValue == null || cellValue === "") return ""; |
| 8 | + const date = new Date(cellValue) | ||
| 9 | + const year = date.getFullYear() | ||
| 10 | + const month = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1 | ||
| 11 | + const day = date.getDate() < 10 ? '0' + date.getDate() : date.getDate() | ||
| 12 | + const hours = date.getHours() < 10 ? '0' + date.getHours() : date.getHours() | ||
| 13 | + const minutes = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes() | ||
| 14 | + const seconds = date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds() | ||
| 15 | return year + '-' + month + '-' + day + ' ' + hours + ':' + minutes + ':' + seconds | 15 | return year + '-' + month + '-' + day + ' ' + hours + ':' + minutes + ':' + seconds |
| 16 | } | 16 | } |
| 17 | 17 | ||
| @@ -78,13 +78,13 @@ export function getQueryObject(url) { | @@ -78,13 +78,13 @@ export function getQueryObject(url) { | ||
| 78 | } | 78 | } |
| 79 | 79 | ||
| 80 | /** | 80 | /** |
| 81 | - * @param {string} input value | ||
| 82 | - * @returns {number} output value | 81 | + * @param str |
| 82 | + * @param str | ||
| 83 | */ | 83 | */ |
| 84 | export function byteLength(str) { | 84 | export function byteLength(str) { |
| 85 | // returns the byte length of an utf8 string | 85 | // returns the byte length of an utf8 string |
| 86 | let s = str.length | 86 | let s = str.length |
| 87 | - for (var i = str.length - 1; i >= 0; i--) { | 87 | + for (let i = str.length - 1; i >= 0; i--) { |
| 88 | const code = str.charCodeAt(i) | 88 | const code = str.charCodeAt(i) |
| 89 | if (code > 0x7f && code <= 0x7ff) s++ | 89 | if (code > 0x7f && code <= 0x7ff) s++ |
| 90 | else if (code > 0x7ff && code <= 0xffff) s += 2 | 90 | else if (code > 0x7ff && code <= 0xffff) s += 2 |
| @@ -136,8 +136,7 @@ export function param2Obj(url) { | @@ -136,8 +136,7 @@ export function param2Obj(url) { | ||
| 136 | const index = v.indexOf('=') | 136 | const index = v.indexOf('=') |
| 137 | if (index !== -1) { | 137 | if (index !== -1) { |
| 138 | const name = v.substring(0, index) | 138 | const name = v.substring(0, index) |
| 139 | - const val = v.substring(index + 1, v.length) | ||
| 140 | - obj[name] = val | 139 | + obj[name] = v.substring(index + 1, v.length) |
| 141 | } | 140 | } |
| 142 | }) | 141 | }) |
| 143 | return obj | 142 | return obj |
| @@ -330,7 +329,7 @@ export function createUniqueString() { | @@ -330,7 +329,7 @@ export function createUniqueString() { | ||
| 330 | 329 | ||
| 331 | /** | 330 | /** |
| 332 | * Check if an element has a class | 331 | * Check if an element has a class |
| 333 | - * @param {HTMLElement} elm | 332 | + * @param ele |
| 334 | * @param {string} cls | 333 | * @param {string} cls |
| 335 | * @returns {boolean} | 334 | * @returns {boolean} |
| 336 | */ | 335 | */ |
| @@ -340,7 +339,7 @@ export function hasClass(ele, cls) { | @@ -340,7 +339,7 @@ export function hasClass(ele, cls) { | ||
| 340 | 339 | ||
| 341 | /** | 340 | /** |
| 342 | * Add class to element | 341 | * Add class to element |
| 343 | - * @param {HTMLElement} elm | 342 | + * @param ele |
| 344 | * @param {string} cls | 343 | * @param {string} cls |
| 345 | */ | 344 | */ |
| 346 | export function addClass(ele, cls) { | 345 | export function addClass(ele, cls) { |
| @@ -349,7 +348,7 @@ export function addClass(ele, cls) { | @@ -349,7 +348,7 @@ export function addClass(ele, cls) { | ||
| 349 | 348 | ||
| 350 | /** | 349 | /** |
| 351 | * Remove class from element | 350 | * Remove class from element |
| 352 | - * @param {HTMLElement} elm | 351 | + * @param ele |
| 353 | * @param {string} cls | 352 | * @param {string} cls |
| 354 | */ | 353 | */ |
| 355 | export function removeClass(ele, cls) { | 354 | export function removeClass(ele, cls) { |
yudao-ui-admin/src/utils/permission.js
| @@ -15,10 +15,8 @@ export function checkPermi(value) { | @@ -15,10 +15,8 @@ export function checkPermi(value) { | ||
| 15 | return all_permission === permission || permissionDatas.includes(permission) | 15 | return all_permission === permission || permissionDatas.includes(permission) |
| 16 | }) | 16 | }) |
| 17 | 17 | ||
| 18 | - if (!hasPermission) { | ||
| 19 | - return false | ||
| 20 | - } | ||
| 21 | - return true | 18 | + return hasPermission; |
| 19 | + | ||
| 22 | } else { | 20 | } else { |
| 23 | console.error(`need roles! Like checkPermi="['system:user:add','system:user:edit']"`) | 21 | console.error(`need roles! Like checkPermi="['system:user:add','system:user:edit']"`) |
| 24 | return false | 22 | return false |
| @@ -40,12 +38,10 @@ export function checkRole(value) { | @@ -40,12 +38,10 @@ export function checkRole(value) { | ||
| 40 | return super_admin === role || permissionRoles.includes(role) | 38 | return super_admin === role || permissionRoles.includes(role) |
| 41 | }) | 39 | }) |
| 42 | 40 | ||
| 43 | - if (!hasRole) { | ||
| 44 | - return false | ||
| 45 | - } | ||
| 46 | - return true | 41 | + return hasRole; |
| 42 | + | ||
| 47 | } else { | 43 | } else { |
| 48 | console.error(`need roles! Like checkRole="['admin','editor']"`) | 44 | console.error(`need roles! Like checkRole="['admin','editor']"`) |
| 49 | return false | 45 | return false |
| 50 | } | 46 | } |
| 51 | -} | ||
| 52 | \ No newline at end of file | 47 | \ No newline at end of file |
| 48 | +} |
yudao-ui-admin/src/utils/request.js
| @@ -49,12 +49,12 @@ service.interceptors.request.use(config => { | @@ -49,12 +49,12 @@ service.interceptors.request.use(config => { | ||
| 49 | let url = config.url + '?'; | 49 | let url = config.url + '?'; |
| 50 | for (const propName of Object.keys(config.params)) { | 50 | for (const propName of Object.keys(config.params)) { |
| 51 | const value = config.params[propName]; | 51 | const value = config.params[propName]; |
| 52 | - var part = encodeURIComponent(propName) + "="; | 52 | + const part = encodeURIComponent(propName) + '=' |
| 53 | if (value !== null && typeof(value) !== "undefined") { | 53 | if (value !== null && typeof(value) !== "undefined") { |
| 54 | if (typeof value === 'object') { | 54 | if (typeof value === 'object') { |
| 55 | for (const key of Object.keys(value)) { | 55 | for (const key of Object.keys(value)) { |
| 56 | let params = propName + '[' + key + ']'; | 56 | let params = propName + '[' + key + ']'; |
| 57 | - var subPart = encodeURIComponent(params) + "="; | 57 | + const subPart = encodeURIComponent(params) + '=' |
| 58 | url += subPart + encodeURIComponent(value[key]) + "&"; | 58 | url += subPart + encodeURIComponent(value[key]) + "&"; |
| 59 | } | 59 | } |
| 60 | } else { | 60 | } else { |
yudao-ui-admin/src/utils/ruoyi.js
| @@ -18,7 +18,7 @@ export function parseTime(time, pattern) { | @@ -18,7 +18,7 @@ export function parseTime(time, pattern) { | ||
| 18 | if ((typeof time === 'string') && (/^[0-9]+$/.test(time))) { | 18 | if ((typeof time === 'string') && (/^[0-9]+$/.test(time))) { |
| 19 | time = parseInt(time) | 19 | time = parseInt(time) |
| 20 | } else if (typeof time === 'string') { | 20 | } else if (typeof time === 'string') { |
| 21 | - time = time.replace(new RegExp(/-/gm), '/').replace('T', ' ').replace(new RegExp(/\.[\d]{3}/gm),''); | 21 | + time = time.replace(new RegExp(/-/gm), '/').replace('T', ' ').replace(new RegExp(/\.\d{3}/gm),''); |
| 22 | } | 22 | } |
| 23 | if ((typeof time === 'number') && (time.toString().length === 10)) { | 23 | if ((typeof time === 'number') && (time.toString().length === 10)) { |
| 24 | time = time * 1000 | 24 | time = time * 1000 |
| @@ -34,7 +34,7 @@ export function parseTime(time, pattern) { | @@ -34,7 +34,7 @@ export function parseTime(time, pattern) { | ||
| 34 | s: date.getSeconds(), | 34 | s: date.getSeconds(), |
| 35 | a: date.getDay() | 35 | a: date.getDay() |
| 36 | } | 36 | } |
| 37 | - const time_str = format.replace(/{(y|m|d|h|i|s|a)+}/g, (result, key) => { | 37 | + const time_str = format.replace(/{([ymdhisa])+}/g, (result, key) => { |
| 38 | let value = formatObj[key] | 38 | let value = formatObj[key] |
| 39 | // Note: getDay() returns 0 on Sunday | 39 | // Note: getDay() returns 0 on Sunday |
| 40 | if (key === 'a') { | 40 | if (key === 'a') { |
| @@ -102,9 +102,11 @@ export function addBeginAndEndTime(params, dateRange, propName) { | @@ -102,9 +102,11 @@ export function addBeginAndEndTime(params, dateRange, propName) { | ||
| 102 | 102 | ||
| 103 | // 字符串格式化(%s ) | 103 | // 字符串格式化(%s ) |
| 104 | export function sprintf(str) { | 104 | export function sprintf(str) { |
| 105 | - var args = arguments, flag = true, i = 1; | 105 | + const args = arguments |
| 106 | + let flag = true | ||
| 107 | + const i = 1 | ||
| 106 | str = str.replace(/%s/g, function () { | 108 | str = str.replace(/%s/g, function () { |
| 107 | - var arg = args[i++]; | 109 | + const arg = args[i++] |
| 108 | if (typeof arg === 'undefined') { | 110 | if (typeof arg === 'undefined') { |
| 109 | flag = false; | 111 | flag = false; |
| 110 | return ''; | 112 | return ''; |
| @@ -116,7 +118,7 @@ export function sprintf(str) { | @@ -116,7 +118,7 @@ export function sprintf(str) { | ||
| 116 | 118 | ||
| 117 | // 转换字符串,undefined,null等转化为"" | 119 | // 转换字符串,undefined,null等转化为"" |
| 118 | export function praseStrEmpty(str) { | 120 | export function praseStrEmpty(str) { |
| 119 | - if (!str || str == "undefined" || str == "null") { | 121 | + if (!str || str === "undefined" || str === "null") { |
| 120 | return ""; | 122 | return ""; |
| 121 | } | 123 | } |
| 122 | return str; | 124 | return str; |
| @@ -244,7 +246,7 @@ export function getPath(path) { | @@ -244,7 +246,7 @@ export function getPath(path) { | ||
| 244 | * @returns | 246 | * @returns |
| 245 | */ | 247 | */ |
| 246 | export function divide(divisor, dividend) { | 248 | export function divide(divisor, dividend) { |
| 247 | - if(divisor == null || dividend == null || dividend == 0){ | 249 | + if(divisor == null || dividend == null || dividend === 0){ |
| 248 | return null; | 250 | return null; |
| 249 | } | 251 | } |
| 250 | return Math.floor(divisor/dividend*100)/100; | 252 | return Math.floor(divisor/dividend*100)/100; |
yudao-ui-admin/src/utils/scroll-to.js
| @@ -8,8 +8,10 @@ Math.easeInOutQuad = function(t, b, c, d) { | @@ -8,8 +8,10 @@ Math.easeInOutQuad = function(t, b, c, d) { | ||
| 8 | } | 8 | } |
| 9 | 9 | ||
| 10 | // requestAnimationFrame for Smart Animating http://goo.gl/sx5sts | 10 | // requestAnimationFrame for Smart Animating http://goo.gl/sx5sts |
| 11 | -var requestAnimFrame = (function() { | ||
| 12 | - return window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || function(callback) { window.setTimeout(callback, 1000 / 60) } | 11 | +const requestAnimFrame = (function() { |
| 12 | + return window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || function(callback) { | ||
| 13 | + window.setTimeout(callback, 1000 / 60) | ||
| 14 | + } | ||
| 13 | })() | 15 | })() |
| 14 | 16 | ||
| 15 | /** | 17 | /** |
| @@ -37,11 +39,11 @@ export function scrollTo(to, duration, callback) { | @@ -37,11 +39,11 @@ export function scrollTo(to, duration, callback) { | ||
| 37 | const increment = 20 | 39 | const increment = 20 |
| 38 | let currentTime = 0 | 40 | let currentTime = 0 |
| 39 | duration = (typeof (duration) === 'undefined') ? 500 : duration | 41 | duration = (typeof (duration) === 'undefined') ? 500 : duration |
| 40 | - var animateScroll = function() { | 42 | + const animateScroll = function() { |
| 41 | // increment the time | 43 | // increment the time |
| 42 | currentTime += increment | 44 | currentTime += increment |
| 43 | // find the value with the quadratic in-out easing function | 45 | // find the value with the quadratic in-out easing function |
| 44 | - var val = Math.easeInOutQuad(currentTime, start, change, duration) | 46 | + const val = Math.easeInOutQuad(currentTime, start, change, duration) |
| 45 | // move the document.body | 47 | // move the document.body |
| 46 | move(val) | 48 | move(val) |
| 47 | // do the animation unless its over | 49 | // do the animation unless its over |
yudao-ui-admin/src/utils/validate.js
| @@ -56,7 +56,7 @@ export function validAlphabets(str) { | @@ -56,7 +56,7 @@ export function validAlphabets(str) { | ||
| 56 | * @returns {Boolean} | 56 | * @returns {Boolean} |
| 57 | */ | 57 | */ |
| 58 | export function validEmail(email) { | 58 | export function validEmail(email) { |
| 59 | - const reg = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/ | 59 | + const reg = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/ |
| 60 | return reg.test(email) | 60 | return reg.test(email) |
| 61 | } | 61 | } |
| 62 | 62 | ||
| @@ -65,10 +65,8 @@ export function validEmail(email) { | @@ -65,10 +65,8 @@ export function validEmail(email) { | ||
| 65 | * @returns {Boolean} | 65 | * @returns {Boolean} |
| 66 | */ | 66 | */ |
| 67 | export function isString(str) { | 67 | export function isString(str) { |
| 68 | - if (typeof str === 'string' || str instanceof String) { | ||
| 69 | - return true | ||
| 70 | - } | ||
| 71 | - return false | 68 | + return typeof str === 'string' || str instanceof String; |
| 69 | + | ||
| 72 | } | 70 | } |
| 73 | 71 | ||
| 74 | /** | 72 | /** |
yudao-ui-admin/src/views/bpm/definition/index.vue
| @@ -6,19 +6,19 @@ | @@ -6,19 +6,19 @@ | ||
| 6 | <el-table v-loading="loading" :data="list"> | 6 | <el-table v-loading="loading" :data="list"> |
| 7 | <el-table-column label="定义编号" align="center" prop="id" width="400" /> | 7 | <el-table-column label="定义编号" align="center" prop="id" width="400" /> |
| 8 | <el-table-column label="定义名称" align="center" prop="name" width="100"> | 8 | <el-table-column label="定义名称" align="center" prop="name" width="100"> |
| 9 | - <template slot-scope="scope"> | 9 | + <template v-slot="scope"> |
| 10 | <el-button type="text" @click="handleBpmnDetail(scope.row)"> | 10 | <el-button type="text" @click="handleBpmnDetail(scope.row)"> |
| 11 | <span>{{ scope.row.name }}</span> | 11 | <span>{{ scope.row.name }}</span> |
| 12 | </el-button> | 12 | </el-button> |
| 13 | </template> | 13 | </template> |
| 14 | </el-table-column> | 14 | </el-table-column> |
| 15 | <el-table-column label="定义分类" align="center" prop="category" width="100"> | 15 | <el-table-column label="定义分类" align="center" prop="category" width="100"> |
| 16 | - <template slot-scope="scope"> | 16 | + <template v-slot="scope"> |
| 17 | <dict-tag :type="DICT_TYPE.BPM_MODEL_CATEGORY" :value="scope.row.category" /> | 17 | <dict-tag :type="DICT_TYPE.BPM_MODEL_CATEGORY" :value="scope.row.category" /> |
| 18 | </template> | 18 | </template> |
| 19 | </el-table-column> | 19 | </el-table-column> |
| 20 | <el-table-column label="表单信息" align="center" prop="formType" width="200"> | 20 | <el-table-column label="表单信息" align="center" prop="formType" width="200"> |
| 21 | - <template slot-scope="scope"> | 21 | + <template v-slot="scope"> |
| 22 | <el-button v-if="scope.row.formId" type="text" @click="handleFormDetail(scope.row)"> | 22 | <el-button v-if="scope.row.formId" type="text" @click="handleFormDetail(scope.row)"> |
| 23 | <span>{{ scope.row.formName }}</span> | 23 | <span>{{ scope.row.formName }}</span> |
| 24 | </el-button> | 24 | </el-button> |
| @@ -29,25 +29,25 @@ | @@ -29,25 +29,25 @@ | ||
| 29 | </template> | 29 | </template> |
| 30 | </el-table-column> | 30 | </el-table-column> |
| 31 | <el-table-column label="流程版本" align="center" prop="processDefinition.version" width="80"> | 31 | <el-table-column label="流程版本" align="center" prop="processDefinition.version" width="80"> |
| 32 | - <template slot-scope="scope"> | 32 | + <template v-slot="scope"> |
| 33 | <el-tag size="medium" v-if="scope.row">v{{ scope.row.version }}</el-tag> | 33 | <el-tag size="medium" v-if="scope.row">v{{ scope.row.version }}</el-tag> |
| 34 | <el-tag size="medium" type="warning" v-else>未部署</el-tag> | 34 | <el-tag size="medium" type="warning" v-else>未部署</el-tag> |
| 35 | </template> | 35 | </template> |
| 36 | </el-table-column> | 36 | </el-table-column> |
| 37 | <el-table-column label="状态" align="center" prop="version" width="80"> | 37 | <el-table-column label="状态" align="center" prop="version" width="80"> |
| 38 | - <template slot-scope="scope"> | 38 | + <template v-slot="scope"> |
| 39 | <el-tag type="success" v-if="scope.row.suspensionState === 1">激活</el-tag> | 39 | <el-tag type="success" v-if="scope.row.suspensionState === 1">激活</el-tag> |
| 40 | <el-tag type="warning" v-if="scope.row.suspensionState === 2">挂起</el-tag> | 40 | <el-tag type="warning" v-if="scope.row.suspensionState === 2">挂起</el-tag> |
| 41 | </template> | 41 | </template> |
| 42 | </el-table-column> | 42 | </el-table-column> |
| 43 | <el-table-column label="部署时间" align="center" prop="deploymentTime" width="180"> | 43 | <el-table-column label="部署时间" align="center" prop="deploymentTime" width="180"> |
| 44 | - <template slot-scope="scope"> | 44 | + <template v-slot="scope"> |
| 45 | <span>{{ parseTime(scope.row.deploymentTime) }}</span> | 45 | <span>{{ parseTime(scope.row.deploymentTime) }}</span> |
| 46 | </template> | 46 | </template> |
| 47 | </el-table-column> | 47 | </el-table-column> |
| 48 | <el-table-column label="定义描述" align="center" prop="description" width="300" show-overflow-tooltip /> | 48 | <el-table-column label="定义描述" align="center" prop="description" width="300" show-overflow-tooltip /> |
| 49 | <el-table-column label="操作" align="center" width="150" fixed="right"> | 49 | <el-table-column label="操作" align="center" width="150" fixed="right"> |
| 50 | - <template slot-scope="scope"> | 50 | + <template v-slot="scope"> |
| 51 | <el-button size="mini" type="text" icon="el-icon-s-custom" @click="handleAssignRule(scope.row)" | 51 | <el-button size="mini" type="text" icon="el-icon-s-custom" @click="handleAssignRule(scope.row)" |
| 52 | v-hasPermi="['bpm:task-assign-rule:update']">分配规则</el-button> | 52 | v-hasPermi="['bpm:task-assign-rule:update']">分配规则</el-button> |
| 53 | </template> | 53 | </template> |
| @@ -76,7 +76,6 @@ | @@ -76,7 +76,6 @@ | ||
| 76 | <script> | 76 | <script> |
| 77 | import {getProcessDefinitionBpmnXML, getProcessDefinitionPage} from "@/api/bpm/definition"; | 77 | import {getProcessDefinitionBpmnXML, getProcessDefinitionPage} from "@/api/bpm/definition"; |
| 78 | import {DICT_TYPE, getDictDatas} from "@/utils/dict"; | 78 | import {DICT_TYPE, getDictDatas} from "@/utils/dict"; |
| 79 | -import {getForm} from "@/api/bpm/form"; | ||
| 80 | import {decodeFields} from "@/utils/formGenerator"; | 79 | import {decodeFields} from "@/utils/formGenerator"; |
| 81 | import Parser from '@/components/parser/Parser' | 80 | import Parser from '@/components/parser/Parser' |
| 82 | import taskAssignRuleDialog from "../taskAssignRule/taskAssignRuleDialog"; | 81 | import taskAssignRuleDialog from "../taskAssignRule/taskAssignRuleDialog"; |
yudao-ui-admin/src/views/bpm/form/formEditor.vue
| @@ -151,9 +151,7 @@ import RightPanel from '@/views/infra/build/RightPanel' | @@ -151,9 +151,7 @@ import RightPanel from '@/views/infra/build/RightPanel' | ||
| 151 | import { | 151 | import { |
| 152 | inputComponents, selectComponents, layoutComponents, formConf | 152 | inputComponents, selectComponents, layoutComponents, formConf |
| 153 | } from '@/components/generator/config' | 153 | } from '@/components/generator/config' |
| 154 | -import { | ||
| 155 | - exportDefault, beautifierConf, isNumberStr, titleCase, deepClone, isObjectObject | ||
| 156 | -} from '@/utils/index' | 154 | +import {beautifierConf, titleCase, deepClone, isObjectObject} from '@/utils' |
| 157 | import { | 155 | import { |
| 158 | makeUpHtml, vueTemplate, vueScript, cssStyle | 156 | makeUpHtml, vueTemplate, vueScript, cssStyle |
| 159 | } from '@/components/generator/html' | 157 | } from '@/components/generator/html' |
yudao-ui-admin/src/views/bpm/form/index.vue
| @@ -27,18 +27,18 @@ | @@ -27,18 +27,18 @@ | ||
| 27 | <el-table-column label="编号" align="center" prop="id" /> | 27 | <el-table-column label="编号" align="center" prop="id" /> |
| 28 | <el-table-column label="表单名" align="center" prop="name" /> | 28 | <el-table-column label="表单名" align="center" prop="name" /> |
| 29 | <el-table-column label="开启状态" align="center" prop="status"> | 29 | <el-table-column label="开启状态" align="center" prop="status"> |
| 30 | - <template slot-scope="scope"> | 30 | + <template v-slot="scope"> |
| 31 | <dict-tag :type="DICT_TYPE.COMMON_STATUS" :value="scope.row.status"/> | 31 | <dict-tag :type="DICT_TYPE.COMMON_STATUS" :value="scope.row.status"/> |
| 32 | </template> | 32 | </template> |
| 33 | </el-table-column> | 33 | </el-table-column> |
| 34 | <el-table-column label="备注" align="center" prop="remark" /> | 34 | <el-table-column label="备注" align="center" prop="remark" /> |
| 35 | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> | 35 | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> |
| 36 | - <template slot-scope="scope"> | 36 | + <template v-slot="scope"> |
| 37 | <span>{{ parseTime(scope.row.createTime) }}</span> | 37 | <span>{{ parseTime(scope.row.createTime) }}</span> |
| 38 | </template> | 38 | </template> |
| 39 | </el-table-column> | 39 | </el-table-column> |
| 40 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> | 40 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
| 41 | - <template slot-scope="scope"> | 41 | + <template v-slot="scope"> |
| 42 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleDetail(scope.row)" | 42 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleDetail(scope.row)" |
| 43 | v-hasPermi="['bpm:form:query']">详情</el-button> | 43 | v-hasPermi="['bpm:form:query']">详情</el-button> |
| 44 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" | 44 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" |
yudao-ui-admin/src/views/bpm/group/index.vue
| @@ -38,24 +38,24 @@ | @@ -38,24 +38,24 @@ | ||
| 38 | <el-table-column label="组名" align="center" prop="name" /> | 38 | <el-table-column label="组名" align="center" prop="name" /> |
| 39 | <el-table-column label="描述" align="center" prop="description" /> | 39 | <el-table-column label="描述" align="center" prop="description" /> |
| 40 | <el-table-column label="成员" align="center"> | 40 | <el-table-column label="成员" align="center"> |
| 41 | - <template slot-scope="scope"> | 41 | + <template v-slot="scope"> |
| 42 | <span v-for="userId in scope.row.memberUserIds"> | 42 | <span v-for="userId in scope.row.memberUserIds"> |
| 43 | {{ getUserNickname(userId) }} | 43 | {{ getUserNickname(userId) }} |
| 44 | </span> | 44 | </span> |
| 45 | </template> | 45 | </template> |
| 46 | </el-table-column> | 46 | </el-table-column> |
| 47 | <el-table-column label="状态" align="center" prop="status"> | 47 | <el-table-column label="状态" align="center" prop="status"> |
| 48 | - <template slot-scope="scope"> | 48 | + <template v-slot="scope"> |
| 49 | <dict-tag :type="DICT_TYPE.COMMON_STATUS" :value="scope.row.status" /> | 49 | <dict-tag :type="DICT_TYPE.COMMON_STATUS" :value="scope.row.status" /> |
| 50 | </template> | 50 | </template> |
| 51 | </el-table-column> | 51 | </el-table-column> |
| 52 | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> | 52 | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> |
| 53 | - <template slot-scope="scope"> | 53 | + <template v-slot="scope"> |
| 54 | <span>{{ parseTime(scope.row.createTime) }}</span> | 54 | <span>{{ parseTime(scope.row.createTime) }}</span> |
| 55 | </template> | 55 | </template> |
| 56 | </el-table-column> | 56 | </el-table-column> |
| 57 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> | 57 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
| 58 | - <template slot-scope="scope"> | 58 | + <template v-slot="scope"> |
| 59 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" | 59 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" |
| 60 | v-hasPermi="['bpm:user-group:update']">修改</el-button> | 60 | v-hasPermi="['bpm:user-group:update']">修改</el-button> |
| 61 | <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" | 61 | <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" |
yudao-ui-admin/src/views/bpm/model/index.vue
| @@ -40,19 +40,19 @@ | @@ -40,19 +40,19 @@ | ||
| 40 | <el-table v-loading="loading" :data="list"> | 40 | <el-table v-loading="loading" :data="list"> |
| 41 | <el-table-column label="流程标识" align="center" prop="key" /> | 41 | <el-table-column label="流程标识" align="center" prop="key" /> |
| 42 | <el-table-column label="流程名称" align="center" prop="name" width="200"> | 42 | <el-table-column label="流程名称" align="center" prop="name" width="200"> |
| 43 | - <template slot-scope="scope"> | 43 | + <template v-slot="scope"> |
| 44 | <el-button type="text" @click="handleBpmnDetail(scope.row)"> | 44 | <el-button type="text" @click="handleBpmnDetail(scope.row)"> |
| 45 | <span>{{ scope.row.name }}</span> | 45 | <span>{{ scope.row.name }}</span> |
| 46 | </el-button> | 46 | </el-button> |
| 47 | </template> | 47 | </template> |
| 48 | </el-table-column> | 48 | </el-table-column> |
| 49 | <el-table-column label="流程分类" align="center" prop="category" width="100"> | 49 | <el-table-column label="流程分类" align="center" prop="category" width="100"> |
| 50 | - <template slot-scope="scope"> | 50 | + <template v-slot="scope"> |
| 51 | <dict-tag :type="DICT_TYPE.BPM_MODEL_CATEGORY" :value="scope.row.category" /> | 51 | <dict-tag :type="DICT_TYPE.BPM_MODEL_CATEGORY" :value="scope.row.category" /> |
| 52 | </template> | 52 | </template> |
| 53 | </el-table-column> | 53 | </el-table-column> |
| 54 | <el-table-column label="表单信息" align="center" prop="formType" width="200"> | 54 | <el-table-column label="表单信息" align="center" prop="formType" width="200"> |
| 55 | - <template slot-scope="scope"> | 55 | + <template v-slot="scope"> |
| 56 | <el-button v-if="scope.row.formId" type="text" @click="handleFormDetail(scope.row)"> | 56 | <el-button v-if="scope.row.formId" type="text" @click="handleFormDetail(scope.row)"> |
| 57 | <span>{{ scope.row.formName }}</span> | 57 | <span>{{ scope.row.formName }}</span> |
| 58 | </el-button> | 58 | </el-button> |
| @@ -63,31 +63,31 @@ | @@ -63,31 +63,31 @@ | ||
| 63 | </template> | 63 | </template> |
| 64 | </el-table-column> | 64 | </el-table-column> |
| 65 | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> | 65 | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> |
| 66 | - <template slot-scope="scope"> | 66 | + <template v-slot="scope"> |
| 67 | <span>{{ parseTime(scope.row.createTime) }}</span> | 67 | <span>{{ parseTime(scope.row.createTime) }}</span> |
| 68 | </template> | 68 | </template> |
| 69 | </el-table-column> | 69 | </el-table-column> |
| 70 | <el-table-column label="最新部署的流程定义" align="center"> | 70 | <el-table-column label="最新部署的流程定义" align="center"> |
| 71 | <el-table-column label="流程版本" align="center" prop="processDefinition.version" width="80"> | 71 | <el-table-column label="流程版本" align="center" prop="processDefinition.version" width="80"> |
| 72 | - <template slot-scope="scope"> | 72 | + <template v-slot="scope"> |
| 73 | <el-tag size="medium" v-if="scope.row.processDefinition">v{{ scope.row.processDefinition.version }}</el-tag> | 73 | <el-tag size="medium" v-if="scope.row.processDefinition">v{{ scope.row.processDefinition.version }}</el-tag> |
| 74 | <el-tag size="medium" type="warning" v-else>未部署</el-tag> | 74 | <el-tag size="medium" type="warning" v-else>未部署</el-tag> |
| 75 | </template> | 75 | </template> |
| 76 | </el-table-column> | 76 | </el-table-column> |
| 77 | <el-table-column label="激活状态" align="center" prop="processDefinition.version" width="80"> | 77 | <el-table-column label="激活状态" align="center" prop="processDefinition.version" width="80"> |
| 78 | - <template slot-scope="scope"> | 78 | + <template v-slot="scope"> |
| 79 | <el-switch v-if="scope.row.processDefinition" v-model="scope.row.processDefinition.suspensionState" | 79 | <el-switch v-if="scope.row.processDefinition" v-model="scope.row.processDefinition.suspensionState" |
| 80 | :active-value="1" :inactive-value="2" @change="handleChangeState(scope.row)" /> | 80 | :active-value="1" :inactive-value="2" @change="handleChangeState(scope.row)" /> |
| 81 | </template> | 81 | </template> |
| 82 | </el-table-column> | 82 | </el-table-column> |
| 83 | <el-table-column label="部署时间" align="center" prop="deploymentTime" width="180"> | 83 | <el-table-column label="部署时间" align="center" prop="deploymentTime" width="180"> |
| 84 | - <template slot-scope="scope"> | 84 | + <template v-slot="scope"> |
| 85 | <span v-if="scope.row.processDefinition">{{ parseTime(scope.row.processDefinition.deploymentTime) }}</span> | 85 | <span v-if="scope.row.processDefinition">{{ parseTime(scope.row.processDefinition.deploymentTime) }}</span> |
| 86 | </template> | 86 | </template> |
| 87 | </el-table-column> | 87 | </el-table-column> |
| 88 | </el-table-column> | 88 | </el-table-column> |
| 89 | <el-table-column label="操作" align="center" width="450" fixed="right"> | 89 | <el-table-column label="操作" align="center" width="450" fixed="right"> |
| 90 | - <template slot-scope="scope"> | 90 | + <template v-slot="scope"> |
| 91 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" | 91 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" |
| 92 | v-hasPermi="['bpm:model:update']">修改流程</el-button> | 92 | v-hasPermi="['bpm:model:update']">修改流程</el-button> |
| 93 | <el-button size="mini" type="text" icon="el-icon-setting" @click="handleDesign(scope.row)" | 93 | <el-button size="mini" type="text" icon="el-icon-setting" @click="handleDesign(scope.row)" |
yudao-ui-admin/src/views/bpm/oa/leave/index.vue
| @@ -41,33 +41,33 @@ | @@ -41,33 +41,33 @@ | ||
| 41 | <el-table v-loading="loading" :data="list"> | 41 | <el-table v-loading="loading" :data="list"> |
| 42 | <el-table-column label="申请编号" align="center" prop="id" /> | 42 | <el-table-column label="申请编号" align="center" prop="id" /> |
| 43 | <el-table-column label="状态" align="center" prop="result"> | 43 | <el-table-column label="状态" align="center" prop="result"> |
| 44 | - <template slot-scope="scope"> | 44 | + <template v-slot="scope"> |
| 45 | <dict-tag :type="DICT_TYPE.BPM_PROCESS_INSTANCE_RESULT" :value="scope.row.result"/> | 45 | <dict-tag :type="DICT_TYPE.BPM_PROCESS_INSTANCE_RESULT" :value="scope.row.result"/> |
| 46 | </template> | 46 | </template> |
| 47 | </el-table-column> | 47 | </el-table-column> |
| 48 | <el-table-column label="开始时间" align="center" prop="startTime" width="180"> | 48 | <el-table-column label="开始时间" align="center" prop="startTime" width="180"> |
| 49 | - <template slot-scope="scope"> | 49 | + <template v-slot="scope"> |
| 50 | <span>{{ parseTime(scope.row.startTime) }}</span> | 50 | <span>{{ parseTime(scope.row.startTime) }}</span> |
| 51 | </template> | 51 | </template> |
| 52 | </el-table-column> | 52 | </el-table-column> |
| 53 | <el-table-column label="结束时间" align="center" prop="endTime" width="180"> | 53 | <el-table-column label="结束时间" align="center" prop="endTime" width="180"> |
| 54 | - <template slot-scope="scope"> | 54 | + <template v-slot="scope"> |
| 55 | <span>{{ parseTime(scope.row.endTime) }}</span> | 55 | <span>{{ parseTime(scope.row.endTime) }}</span> |
| 56 | </template> | 56 | </template> |
| 57 | </el-table-column> | 57 | </el-table-column> |
| 58 | <el-table-column label="请假类型" align="center" prop="type"> | 58 | <el-table-column label="请假类型" align="center" prop="type"> |
| 59 | - <template slot-scope="scope"> | 59 | + <template v-slot="scope"> |
| 60 | <dict-tag :type="DICT_TYPE.BPM_OA_LEAVE_TYPE" :value="scope.row.type"/> | 60 | <dict-tag :type="DICT_TYPE.BPM_OA_LEAVE_TYPE" :value="scope.row.type"/> |
| 61 | </template> | 61 | </template> |
| 62 | </el-table-column> | 62 | </el-table-column> |
| 63 | <el-table-column label="原因" align="center" prop="reason" /> | 63 | <el-table-column label="原因" align="center" prop="reason" /> |
| 64 | <el-table-column label="申请时间" align="center" prop="applyTime" width="180"> | 64 | <el-table-column label="申请时间" align="center" prop="applyTime" width="180"> |
| 65 | - <template slot-scope="scope"> | 65 | + <template v-slot="scope"> |
| 66 | <span>{{ parseTime(scope.row.createTime) }}</span> | 66 | <span>{{ parseTime(scope.row.createTime) }}</span> |
| 67 | </template> | 67 | </template> |
| 68 | </el-table-column> | 68 | </el-table-column> |
| 69 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="200"> | 69 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="200"> |
| 70 | - <template slot-scope="scope"> | 70 | + <template v-slot="scope"> |
| 71 | <el-button size="mini" type="text" icon="el-icon-delete" @click="handleCancel(scope.row)" | 71 | <el-button size="mini" type="text" icon="el-icon-delete" @click="handleCancel(scope.row)" |
| 72 | v-hasPermi="['bpm:oa-leave:create']" v-if="scope.row.result === 1">取消请假</el-button> | 72 | v-hasPermi="['bpm:oa-leave:create']" v-if="scope.row.result === 1">取消请假</el-button> |
| 73 | <el-button size="mini" type="text" icon="el-icon-view" @click="handleDetail(scope.row)" | 73 | <el-button size="mini" type="text" icon="el-icon-view" @click="handleDetail(scope.row)" |
| @@ -159,7 +159,7 @@ export default { | @@ -159,7 +159,7 @@ export default { | ||
| 159 | type: 'warning', | 159 | type: 'warning', |
| 160 | confirmButtonText: "确定", | 160 | confirmButtonText: "确定", |
| 161 | cancelButtonText: "取消", | 161 | cancelButtonText: "取消", |
| 162 | - inputPattern: /^[\s\S]*.*[^\s][\s\S]*$/, // 判断非空,且非空格 | 162 | + inputPattern: /^[\s\S]*.*\S[\s\S]*$/, // 判断非空,且非空格 |
| 163 | inputErrorMessage: "取消原因不能为空", | 163 | inputErrorMessage: "取消原因不能为空", |
| 164 | }).then(({ value }) => { | 164 | }).then(({ value }) => { |
| 165 | return cancelProcessInstance(id, value); | 165 | return cancelProcessInstance(id, value); |
yudao-ui-admin/src/views/bpm/processInstance/create.vue
| @@ -4,25 +4,25 @@ | @@ -4,25 +4,25 @@ | ||
| 4 | <div v-if="!selectProcessInstance"> | 4 | <div v-if="!selectProcessInstance"> |
| 5 | <el-table v-loading="loading" :data="list"> | 5 | <el-table v-loading="loading" :data="list"> |
| 6 | <el-table-column label="流程名称" align="center" prop="name" width="200"> | 6 | <el-table-column label="流程名称" align="center" prop="name" width="200"> |
| 7 | - <template slot-scope="scope"> | 7 | + <template v-slot="scope"> |
| 8 | <el-button type="text" @click="handleBpmnDetail(scope.row)"> | 8 | <el-button type="text" @click="handleBpmnDetail(scope.row)"> |
| 9 | <span>{{ scope.row.name }}</span> | 9 | <span>{{ scope.row.name }}</span> |
| 10 | </el-button> | 10 | </el-button> |
| 11 | </template> | 11 | </template> |
| 12 | </el-table-column> | 12 | </el-table-column> |
| 13 | <el-table-column label="流程分类" align="center" prop="category" width="100"> | 13 | <el-table-column label="流程分类" align="center" prop="category" width="100"> |
| 14 | - <template slot-scope="scope"> | 14 | + <template v-slot="scope"> |
| 15 | <dict-tag :type="DICT_TYPE.BPM_MODEL_CATEGORY" :value="scope.row.category" /> | 15 | <dict-tag :type="DICT_TYPE.BPM_MODEL_CATEGORY" :value="scope.row.category" /> |
| 16 | </template> | 16 | </template> |
| 17 | </el-table-column> | 17 | </el-table-column> |
| 18 | <el-table-column label="流程版本" align="center" prop="processDefinition.version" width="80"> | 18 | <el-table-column label="流程版本" align="center" prop="processDefinition.version" width="80"> |
| 19 | - <template slot-scope="scope"> | 19 | + <template v-slot="scope"> |
| 20 | <el-tag size="medium" v-if="scope.row">v{{ scope.row.version }}</el-tag> | 20 | <el-tag size="medium" v-if="scope.row">v{{ scope.row.version }}</el-tag> |
| 21 | </template> | 21 | </template> |
| 22 | </el-table-column> | 22 | </el-table-column> |
| 23 | <el-table-column label="流程描述" align="center" prop="description" width="300" show-overflow-tooltip /> | 23 | <el-table-column label="流程描述" align="center" prop="description" width="300" show-overflow-tooltip /> |
| 24 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> | 24 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
| 25 | - <template slot-scope="scope"> | 25 | + <template v-slot="scope"> |
| 26 | <el-button type="text" size="small" icon="el-icon-plus" @click="handleSelect(scope.row)">选择</el-button> | 26 | <el-button type="text" size="small" icon="el-icon-plus" @click="handleSelect(scope.row)">选择</el-button> |
| 27 | </template> | 27 | </template> |
| 28 | </el-table-column> | 28 | </el-table-column> |
yudao-ui-admin/src/views/bpm/processInstance/detail.vue
| @@ -110,8 +110,8 @@ import {DICT_TYPE, getDictDatas} from "@/utils/dict"; | @@ -110,8 +110,8 @@ import {DICT_TYPE, getDictDatas} from "@/utils/dict"; | ||
| 110 | import store from "@/store"; | 110 | import store from "@/store"; |
| 111 | import {decodeFields} from "@/utils/formGenerator"; | 111 | import {decodeFields} from "@/utils/formGenerator"; |
| 112 | import Parser from '@/components/parser/Parser' | 112 | import Parser from '@/components/parser/Parser' |
| 113 | -import {createProcessInstance, getProcessInstance} from "@/api/bpm/processInstance"; | ||
| 114 | -import {approveTask, getTaskListByProcessInstanceId, rejectTask, updateTaskAssignee,backTask} from "@/api/bpm/task"; | 113 | +import {getProcessInstance} from "@/api/bpm/processInstance"; |
| 114 | +import {approveTask, getTaskListByProcessInstanceId, rejectTask, updateTaskAssignee} from "@/api/bpm/task"; | ||
| 115 | import {getDate} from "@/utils/dateUtils"; | 115 | import {getDate} from "@/utils/dateUtils"; |
| 116 | import {listSimpleUsers} from "@/api/system/user"; | 116 | import {listSimpleUsers} from "@/api/system/user"; |
| 117 | import {getActivityList} from "@/api/bpm/activity"; | 117 | import {getActivityList} from "@/api/bpm/activity"; |
yudao-ui-admin/src/views/bpm/processInstance/index.vue
| @@ -52,39 +52,39 @@ | @@ -52,39 +52,39 @@ | ||
| 52 | <el-table-column label="编号" align="center" prop="id" width="320" /> | 52 | <el-table-column label="编号" align="center" prop="id" width="320" /> |
| 53 | <el-table-column label="流程名" align="center" prop="name" /> | 53 | <el-table-column label="流程名" align="center" prop="name" /> |
| 54 | <el-table-column label="流程分类" align="center" prop="category"> | 54 | <el-table-column label="流程分类" align="center" prop="category"> |
| 55 | - <template slot-scope="scope"> | 55 | + <template v-slot="scope"> |
| 56 | <dict-tag :type="DICT_TYPE.BPM_MODEL_CATEGORY" :value="scope.row.category" /> | 56 | <dict-tag :type="DICT_TYPE.BPM_MODEL_CATEGORY" :value="scope.row.category" /> |
| 57 | </template> | 57 | </template> |
| 58 | </el-table-column> | 58 | </el-table-column> |
| 59 | <el-table-column label="当前审批任务" align="center" prop="tasks"> | 59 | <el-table-column label="当前审批任务" align="center" prop="tasks"> |
| 60 | - <template slot-scope="scope"> | 60 | + <template v-slot="scope"> |
| 61 | <el-button v-for="task in scope.row.tasks" :key="task.id" type="text" @click="handleFormDetail(task.id)"> | 61 | <el-button v-for="task in scope.row.tasks" :key="task.id" type="text" @click="handleFormDetail(task.id)"> |
| 62 | <span>{{ task.name }}</span> | 62 | <span>{{ task.name }}</span> |
| 63 | </el-button> | 63 | </el-button> |
| 64 | </template> | 64 | </template> |
| 65 | </el-table-column> | 65 | </el-table-column> |
| 66 | <el-table-column label="状态" align="center" prop="status"> | 66 | <el-table-column label="状态" align="center" prop="status"> |
| 67 | - <template slot-scope="scope"> | 67 | + <template v-slot="scope"> |
| 68 | <dict-tag :type="DICT_TYPE.BPM_PROCESS_INSTANCE_STATUS" :value="scope.row.status" /> | 68 | <dict-tag :type="DICT_TYPE.BPM_PROCESS_INSTANCE_STATUS" :value="scope.row.status" /> |
| 69 | </template> | 69 | </template> |
| 70 | </el-table-column> | 70 | </el-table-column> |
| 71 | <el-table-column label="结果" align="center" prop="result"> | 71 | <el-table-column label="结果" align="center" prop="result"> |
| 72 | - <template slot-scope="scope"> | 72 | + <template v-slot="scope"> |
| 73 | <dict-tag :type="DICT_TYPE.BPM_PROCESS_INSTANCE_RESULT" :value="scope.row.result"/> | 73 | <dict-tag :type="DICT_TYPE.BPM_PROCESS_INSTANCE_RESULT" :value="scope.row.result"/> |
| 74 | </template> | 74 | </template> |
| 75 | </el-table-column> | 75 | </el-table-column> |
| 76 | <el-table-column label="提交时间" align="center" prop="createTime" width="180"> | 76 | <el-table-column label="提交时间" align="center" prop="createTime" width="180"> |
| 77 | - <template slot-scope="scope"> | 77 | + <template v-slot="scope"> |
| 78 | <span>{{ parseTime(scope.row.createTime) }}</span> | 78 | <span>{{ parseTime(scope.row.createTime) }}</span> |
| 79 | </template> | 79 | </template> |
| 80 | </el-table-column> | 80 | </el-table-column> |
| 81 | <el-table-column label="结束时间" align="center" prop="createTime" width="180"> | 81 | <el-table-column label="结束时间" align="center" prop="createTime" width="180"> |
| 82 | - <template slot-scope="scope"> | 82 | + <template v-slot="scope"> |
| 83 | <span>{{ parseTime(scope.row.endTime) }}</span> | 83 | <span>{{ parseTime(scope.row.endTime) }}</span> |
| 84 | </template> | 84 | </template> |
| 85 | </el-table-column> | 85 | </el-table-column> |
| 86 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> | 86 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
| 87 | - <template slot-scope="scope"> | 87 | + <template v-slot="scope"> |
| 88 | <el-button type="text" size="small" icon="el-icon-delete" v-if="scope.row.result === 1" | 88 | <el-button type="text" size="small" icon="el-icon-delete" v-if="scope.row.result === 1" |
| 89 | v-hasPermi="['bpm:process-instance:cancel']" @click="handleCancel(scope.row)">取消</el-button> | 89 | v-hasPermi="['bpm:process-instance:cancel']" @click="handleCancel(scope.row)">取消</el-button> |
| 90 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleDetail(scope.row)" | 90 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleDetail(scope.row)" |
| @@ -164,7 +164,7 @@ export default { | @@ -164,7 +164,7 @@ export default { | ||
| 164 | type: 'warning', | 164 | type: 'warning', |
| 165 | confirmButtonText: "确定", | 165 | confirmButtonText: "确定", |
| 166 | cancelButtonText: "取消", | 166 | cancelButtonText: "取消", |
| 167 | - inputPattern: /^[\s\S]*.*[^\s][\s\S]*$/, // 判断非空,且非空格 | 167 | + inputPattern: /^[\s\S]*.*\S[\s\S]*$/, // 判断非空,且非空格 |
| 168 | inputErrorMessage: "取消原因不能为空", | 168 | inputErrorMessage: "取消原因不能为空", |
| 169 | }).then(({ value }) => { | 169 | }).then(({ value }) => { |
| 170 | return cancelProcessInstance(id, value); | 170 | return cancelProcessInstance(id, value); |
yudao-ui-admin/src/views/bpm/task/done.vue
| @@ -24,28 +24,28 @@ | @@ -24,28 +24,28 @@ | ||
| 24 | <el-table-column label="所属流程" align="center" prop="processInstance.name" width="200" /> | 24 | <el-table-column label="所属流程" align="center" prop="processInstance.name" width="200" /> |
| 25 | <el-table-column label="流程发起人" align="center" prop="processInstance.startUserNickname" width="120" /> | 25 | <el-table-column label="流程发起人" align="center" prop="processInstance.startUserNickname" width="120" /> |
| 26 | <el-table-column label="结果" align="center" prop="result"> | 26 | <el-table-column label="结果" align="center" prop="result"> |
| 27 | - <template slot-scope="scope"> | 27 | + <template v-slot="scope"> |
| 28 | <dict-tag :type="DICT_TYPE.BPM_PROCESS_INSTANCE_RESULT" :value="scope.row.result"/> | 28 | <dict-tag :type="DICT_TYPE.BPM_PROCESS_INSTANCE_RESULT" :value="scope.row.result"/> |
| 29 | </template> | 29 | </template> |
| 30 | </el-table-column> | 30 | </el-table-column> |
| 31 | <el-table-column label="审批意见" align="center" prop="reason" width="200" /> | 31 | <el-table-column label="审批意见" align="center" prop="reason" width="200" /> |
| 32 | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> | 32 | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> |
| 33 | - <template slot-scope="scope"> | 33 | + <template v-slot="scope"> |
| 34 | <span>{{ parseTime(scope.row.createTime) }}</span> | 34 | <span>{{ parseTime(scope.row.createTime) }}</span> |
| 35 | </template> | 35 | </template> |
| 36 | </el-table-column> | 36 | </el-table-column> |
| 37 | <el-table-column label="审批时间" align="center" prop="endTime" width="180"> | 37 | <el-table-column label="审批时间" align="center" prop="endTime" width="180"> |
| 38 | - <template slot-scope="scope"> | 38 | + <template v-slot="scope"> |
| 39 | <span>{{ parseTime(scope.row.endTime) }}</span> | 39 | <span>{{ parseTime(scope.row.endTime) }}</span> |
| 40 | </template> | 40 | </template> |
| 41 | </el-table-column> | 41 | </el-table-column> |
| 42 | <el-table-column label="耗时" align="center" prop="durationInMillis" width="180"> | 42 | <el-table-column label="耗时" align="center" prop="durationInMillis" width="180"> |
| 43 | - <template slot-scope="scope"> | 43 | + <template v-slot="scope"> |
| 44 | <span>{{ getDateStar(scope.row.durationInMillis) }}</span> | 44 | <span>{{ getDateStar(scope.row.durationInMillis) }}</span> |
| 45 | </template> | 45 | </template> |
| 46 | </el-table-column> | 46 | </el-table-column> |
| 47 | <el-table-column label="操作" align="center" fixed="right" class-name="small-padding fixed-width"> | 47 | <el-table-column label="操作" align="center" fixed="right" class-name="small-padding fixed-width"> |
| 48 | - <template slot-scope="scope"> | 48 | + <template v-slot="scope"> |
| 49 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleAudit(scope.row)" | 49 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleAudit(scope.row)" |
| 50 | v-hasPermi="['bpm:task:query']">详情</el-button> | 50 | v-hasPermi="['bpm:task:query']">详情</el-button> |
| 51 | </template> | 51 | </template> |
yudao-ui-admin/src/views/bpm/task/todo.vue
| @@ -24,18 +24,18 @@ | @@ -24,18 +24,18 @@ | ||
| 24 | <el-table-column label="所属流程" align="center" prop="processInstance.name" /> | 24 | <el-table-column label="所属流程" align="center" prop="processInstance.name" /> |
| 25 | <el-table-column label="流程发起人" align="center" prop="processInstance.startUserNickname" /> | 25 | <el-table-column label="流程发起人" align="center" prop="processInstance.startUserNickname" /> |
| 26 | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> | 26 | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> |
| 27 | - <template slot-scope="scope"> | 27 | + <template v-slot="scope"> |
| 28 | <span>{{ parseTime(scope.row.createTime) }}</span> | 28 | <span>{{ parseTime(scope.row.createTime) }}</span> |
| 29 | </template> | 29 | </template> |
| 30 | </el-table-column> | 30 | </el-table-column> |
| 31 | <el-table-column label="状态" align="center" prop="version" width="80"> | 31 | <el-table-column label="状态" align="center" prop="version" width="80"> |
| 32 | - <template slot-scope="scope"> | 32 | + <template v-slot="scope"> |
| 33 | <el-tag type="success" v-if="scope.row.suspensionState === 1">激活</el-tag> | 33 | <el-tag type="success" v-if="scope.row.suspensionState === 1">激活</el-tag> |
| 34 | <el-tag type="warning" v-if="scope.row.suspensionState === 2">挂起</el-tag> | 34 | <el-tag type="warning" v-if="scope.row.suspensionState === 2">挂起</el-tag> |
| 35 | </template> | 35 | </template> |
| 36 | </el-table-column> | 36 | </el-table-column> |
| 37 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> | 37 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
| 38 | - <template slot-scope="scope"> | 38 | + <template v-slot="scope"> |
| 39 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleAudit(scope.row)" | 39 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleAudit(scope.row)" |
| 40 | v-hasPermi="['bpm:task:update']">审批</el-button> | 40 | v-hasPermi="['bpm:task:update']">审批</el-button> |
| 41 | </template> | 41 | </template> |
| @@ -50,7 +50,6 @@ | @@ -50,7 +50,6 @@ | ||
| 50 | 50 | ||
| 51 | <script> | 51 | <script> |
| 52 | import {getTodoTaskPage} from '@/api/bpm/task' | 52 | import {getTodoTaskPage} from '@/api/bpm/task' |
| 53 | -import {listSimpleUsers} from "@/api/system/user"; | ||
| 54 | 53 | ||
| 55 | export default { | 54 | export default { |
| 56 | name: "Todo", | 55 | name: "Todo", |
yudao-ui-admin/src/views/bpm/taskAssignRule/taskAssignRuleDialog.vue
| @@ -6,19 +6,19 @@ | @@ -6,19 +6,19 @@ | ||
| 6 | <el-table-column label="任务名" align="center" prop="taskDefinitionName" width="120" fixed /> | 6 | <el-table-column label="任务名" align="center" prop="taskDefinitionName" width="120" fixed /> |
| 7 | <el-table-column label="任务标识" align="center" prop="taskDefinitionKey" width="120" show-tooltip-when-overflow /> | 7 | <el-table-column label="任务标识" align="center" prop="taskDefinitionKey" width="120" show-tooltip-when-overflow /> |
| 8 | <el-table-column label="规则类型" align="center" prop="type" width="120"> | 8 | <el-table-column label="规则类型" align="center" prop="type" width="120"> |
| 9 | - <template slot-scope="scope"> | 9 | + <template v-slot="scope"> |
| 10 | <dict-tag :type="DICT_TYPE.BPM_TASK_ASSIGN_RULE_TYPE" :value="scope.row.type" /> | 10 | <dict-tag :type="DICT_TYPE.BPM_TASK_ASSIGN_RULE_TYPE" :value="scope.row.type" /> |
| 11 | </template> | 11 | </template> |
| 12 | </el-table-column> | 12 | </el-table-column> |
| 13 | <el-table-column label="规则范围" align="center" prop="options" width="440px"> | 13 | <el-table-column label="规则范围" align="center" prop="options" width="440px"> |
| 14 | - <template slot-scope="scope"> | 14 | + <template v-slot="scope"> |
| 15 | <el-tag size="medium" v-if="scope.row.options" :key="option" v-for="option in scope.row.options"> | 15 | <el-tag size="medium" v-if="scope.row.options" :key="option" v-for="option in scope.row.options"> |
| 16 | {{ getAssignRuleOptionName(scope.row.type, option) }} | 16 | {{ getAssignRuleOptionName(scope.row.type, option) }} |
| 17 | </el-tag> | 17 | </el-tag> |
| 18 | </template> | 18 | </template> |
| 19 | </el-table-column> | 19 | </el-table-column> |
| 20 | <el-table-column v-if="modelId" label="操作" align="center" width="80" fixed="right"> | 20 | <el-table-column v-if="modelId" label="操作" align="center" width="80" fixed="right"> |
| 21 | - <template slot-scope="scope"> | 21 | + <template v-slot="scope"> |
| 22 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdateTaskAssignRule(scope.row)" | 22 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdateTaskAssignRule(scope.row)" |
| 23 | v-hasPermi="['bpm:task-assign-rule:update']">修改</el-button> | 23 | v-hasPermi="['bpm:task-assign-rule:update']">修改</el-button> |
| 24 | </template> | 24 | </template> |
yudao-ui-admin/src/views/dashboard/PanelGroup.vue
| @@ -143,8 +143,7 @@ export default { | @@ -143,8 +143,7 @@ export default { | ||
| 143 | .card-panel-description { | 143 | .card-panel-description { |
| 144 | float: right; | 144 | float: right; |
| 145 | font-weight: bold; | 145 | font-weight: bold; |
| 146 | - margin: 26px; | ||
| 147 | - margin-left: 0px; | 146 | + margin: 26px 26px 26px 0; |
| 148 | 147 | ||
| 149 | .card-panel-text { | 148 | .card-panel-text { |
| 150 | line-height: 18px; | 149 | line-height: 18px; |
yudao-ui-admin/src/views/index_old.vue deleted
| 1 | -<template> | ||
| 2 | - <div class="app-container home"> | ||
| 3 | - <el-row :gutter="20"> | ||
| 4 | - <el-col :sm="24" :lg="24"> | ||
| 5 | - <blockquote class="text-warning" style="font-size: 14px"> | ||
| 6 | - 领取阿里云通用云产品1888优惠券 | ||
| 7 | - <br /> | ||
| 8 | - <el-link | ||
| 9 | - href="https://www.aliyun.com/minisite/goods?userCode=brki8iof" | ||
| 10 | - type="primary" | ||
| 11 | - target="_blank" | ||
| 12 | - >https://www.aliyun.com/minisite/goods?userCode=brki8iof</el-link | ||
| 13 | - > | ||
| 14 | - <br /> | ||
| 15 | - 领取腾讯云通用云产品2860优惠券 | ||
| 16 | - <br /> | ||
| 17 | - <el-link | ||
| 18 | - href="https://cloud.tencent.com/redirect.php?redirect=1025&cps_key=198c8df2ed259157187173bc7f4f32fd&from=console" | ||
| 19 | - type="primary" | ||
| 20 | - target="_blank" | ||
| 21 | - >https://cloud.tencent.com/redirect.php?redirect=1025&cps_key=198c8df2ed259157187173bc7f4f32fd&from=console</el-link | ||
| 22 | - > | ||
| 23 | - <br /> | ||
| 24 | - 阿里云服务器折扣区 | ||
| 25 | - <el-link href="http://aly.ruoyi.vip" type="primary" target="_blank" | ||
| 26 | - >>☛☛点我进入☚☚</el-link | ||
| 27 | - > | ||
| 28 | - 腾讯云服务器秒杀区 | ||
| 29 | - <el-link href="http://txy.ruoyi.vip" type="primary" target="_blank" | ||
| 30 | - >>☛☛点我进入☚☚</el-link | ||
| 31 | - ><br /> | ||
| 32 | - <h4 class="text-danger"> | ||
| 33 | - 云产品通用红包,可叠加官网常规优惠使用。(仅限新用户) | ||
| 34 | - </h4> | ||
| 35 | - </blockquote> | ||
| 36 | - | ||
| 37 | - <hr /> | ||
| 38 | - </el-col> | ||
| 39 | - </el-row> | ||
| 40 | - <el-row :gutter="20"> | ||
| 41 | - <el-col :sm="24" :lg="12" style="padding-left: 20px"> | ||
| 42 | - <h2>芋道后台管理框架</h2> | ||
| 43 | - <p> | ||
| 44 | - 一直想做一款后台管理系统,看了很多优秀的开源项目但是发现没有合适自己的。于是利用空闲休息时间开始自己写一套后台系统。如此有了芋道管理系统。,她可以用于所有的Web应用程序,如网站管理后台,网站会员中心,CMS,CRM,OA等等,当然,您也可以对她进行深度定制,以做出更强系统。所有前端后台代码封装过后十分精简易上手,出错概率低。同时支持移动客户端访问。系统会陆续更新一些实用功能。 | ||
| 45 | - </p> | ||
| 46 | - <p> | ||
| 47 | - <b>当前版本:</b> <span>v{{ version }}</span> | ||
| 48 | - </p> | ||
| 49 | - <p> | ||
| 50 | - <el-tag type="danger">¥免费开源</el-tag> | ||
| 51 | - </p> | ||
| 52 | - <p> | ||
| 53 | - <el-button | ||
| 54 | - type="primary" | ||
| 55 | - size="mini" | ||
| 56 | - icon="el-icon-cloudy" | ||
| 57 | - plain | ||
| 58 | - @click="goTarget('https://gitee.com/zhijiantianya/ruoyi-vue-pro')" | ||
| 59 | - >访问码云</el-button | ||
| 60 | - > | ||
| 61 | - <el-button | ||
| 62 | - size="mini" | ||
| 63 | - icon="el-icon-s-home" | ||
| 64 | - plain | ||
| 65 | - @click="goTarget('http://ruoyi.vip')" | ||
| 66 | - >访问主页</el-button | ||
| 67 | - > | ||
| 68 | - </p> | ||
| 69 | - </el-col> | ||
| 70 | - | ||
| 71 | - <el-col :sm="24" :lg="12" style="padding-left: 50px"> | ||
| 72 | - <el-row> | ||
| 73 | - <el-col :span="12"> | ||
| 74 | - <h2>技术选型</h2> | ||
| 75 | - </el-col> | ||
| 76 | - </el-row> | ||
| 77 | - <el-row> | ||
| 78 | - <el-col :span="6"> | ||
| 79 | - <h4>后端技术</h4> | ||
| 80 | - <ul> | ||
| 81 | - <li>SpringBoot</li> | ||
| 82 | - <li>Spring Security</li> | ||
| 83 | - <li>JWT</li> | ||
| 84 | - <li>MyBatis</li> | ||
| 85 | - <li>Druid</li> | ||
| 86 | - <li>Fastjson</li> | ||
| 87 | - <li>...</li> | ||
| 88 | - </ul> | ||
| 89 | - </el-col> | ||
| 90 | - <el-col :span="6"> | ||
| 91 | - <h4>前端技术</h4> | ||
| 92 | - <ul> | ||
| 93 | - <li>Vue</li> | ||
| 94 | - <li>Vuex</li> | ||
| 95 | - <li>Element-ui</li> | ||
| 96 | - <li>Axios</li> | ||
| 97 | - <li>Sass</li> | ||
| 98 | - <li>Quill</li> | ||
| 99 | - <li>...</li> | ||
| 100 | - </ul> | ||
| 101 | - </el-col> | ||
| 102 | - </el-row> | ||
| 103 | - </el-col> | ||
| 104 | - </el-row> | ||
| 105 | - <el-divider /> | ||
| 106 | - <el-row :gutter="20"> | ||
| 107 | - <el-col :xs="24" :sm="24" :md="12" :lg="8"> | ||
| 108 | - <el-card class="update-log"> | ||
| 109 | - <div slot="header" class="clearfix"> | ||
| 110 | - <span>联系信息</span> | ||
| 111 | - </div> | ||
| 112 | - <div class="body"> | ||
| 113 | - <p> | ||
| 114 | - <i class="el-icon-s-promotion"></i> 官网:<el-link | ||
| 115 | - href="http://www.ruoyi.vip" | ||
| 116 | - target="_blank" | ||
| 117 | - >http://www.ruoyi.vip</el-link | ||
| 118 | - > | ||
| 119 | - </p> | ||
| 120 | - <p> | ||
| 121 | - <i class="el-icon-user-solid"></i> QQ群:<s>满937441</s> | ||
| 122 | - <s>满887144332</s> <s>满180251782</s> | ||
| 123 | - <a href="https://jq.qq.com/?_wv=1027&k=4WWwqNxN" target="_blank" | ||
| 124 | - > 104180207</a | ||
| 125 | - > | ||
| 126 | - </p> | ||
| 127 | - <p> | ||
| 128 | - <i class="el-icon-chat-dot-round"></i> 微信:<a | ||
| 129 | - href="javascript:;" | ||
| 130 | - >/ *芋道</a | ||
| 131 | - > | ||
| 132 | - </p> | ||
| 133 | - <p> | ||
| 134 | - <i class="el-icon-money"></i> 支付宝:<a | ||
| 135 | - href="javascript:;" | ||
| 136 | - class="支付宝信息" | ||
| 137 | - >/ *芋道</a | ||
| 138 | - > | ||
| 139 | - </p> | ||
| 140 | - </div> | ||
| 141 | - </el-card> | ||
| 142 | - </el-col> | ||
| 143 | - <el-col :xs="24" :sm="24" :md="12" :lg="8"> | ||
| 144 | - <el-card class="update-log"> | ||
| 145 | - <div slot="header" class="clearfix"> | ||
| 146 | - <span>更新日志</span> | ||
| 147 | - </div> | ||
| 148 | - <el-collapse accordion> | ||
| 149 | - <el-collapse-item title="v3.3.0 - 2020-12-14"> | ||
| 150 | - <ol> | ||
| 151 | - <li>新增缓存监控功能</li> | ||
| 152 | - <li>支持主题风格配置</li> | ||
| 153 | - <li>修复多级菜单之间切换无法缓存的问题</li> | ||
| 154 | - <li>多级菜单自动配置组件</li> | ||
| 155 | - <li>代码生成预览支持高亮显示</li> | ||
| 156 | - <li>支持Get请求映射Params参数</li> | ||
| 157 | - <li>删除用户和角色解绑关联</li> | ||
| 158 | - <li>去除用户手机邮箱部门必填验证</li> | ||
| 159 | - <li>Excel支持注解align对齐方式</li> | ||
| 160 | - <li>Excel支持导入Boolean型数据</li> | ||
| 161 | - <li>优化头像样式,鼠标移入悬停遮罩</li> | ||
| 162 | - <li>代码生成预览提供滚动机制</li> | ||
| 163 | - <li>代码生成删除多余的数字float类型</li> | ||
| 164 | - <li>修正转换字符串的目标字符集属性</li> | ||
| 165 | - <li>回显数据字典防止空值报错</li> | ||
| 166 | - <li>日志记录增加过滤多文件场景</li> | ||
| 167 | - <li>修改缓存Set方法可能导致嵌套的问题</li> | ||
| 168 | - <li>移除前端一些多余的依赖</li> | ||
| 169 | - <li>防止安全扫描YUI出现的风险提示</li> | ||
| 170 | - <li>修改node-sass为dart-sass</li> | ||
| 171 | - <li>升级SpringBoot到最新版本2.1.18</li> | ||
| 172 | - <li>升级poi到最新版本4.1.2</li> | ||
| 173 | - <li>升级oshi到最新版本v5.3.6</li> | ||
| 174 | - <li>升级bitwalker到最新版本1.21</li> | ||
| 175 | - <li>升级axios到最新版本0.21.0</li> | ||
| 176 | - <li>升级element-ui到最新版本2.14.1</li> | ||
| 177 | - <li>升级vue到最新版本2.6.12</li> | ||
| 178 | - <li>升级vuex到最新版本3.6.0</li> | ||
| 179 | - <li>升级vue-cli到版本4.5.9</li> | ||
| 180 | - <li>升级vue-router到最新版本3.4.9</li> | ||
| 181 | - <li>升级vue-cli到最新版本4.4.6</li> | ||
| 182 | - <li>升级vue-cropper到最新版本0.5.5</li> | ||
| 183 | - <li>升级clipboard到最新版本2.0.6</li> | ||
| 184 | - <li>升级core-js到最新版本3.8.1</li> | ||
| 185 | - <li>升级echarts到最新版本4.9.0</li> | ||
| 186 | - <li>升级file-saver到最新版本2.0.4</li> | ||
| 187 | - <li>升级fuse.js到最新版本6.4.3</li> | ||
| 188 | - <li>升级js-beautify到最新版本1.13.0</li> | ||
| 189 | - <li>升级js-cookie到最新版本2.2.1</li> | ||
| 190 | - <li>升级path-to-regexp到最新版本6.2.0</li> | ||
| 191 | - <li>升级quill到最新版本1.3.7</li> | ||
| 192 | - <li>升级screenfull到最新版本5.0.2</li> | ||
| 193 | - <li>升级sortablejs到最新版本1.10.2</li> | ||
| 194 | - <li>升级vuedraggable到最新版本2.24.3</li> | ||
| 195 | - <li>升级chalk到最新版本4.1.0</li> | ||
| 196 | - <li>升级eslint到最新版本7.15.0</li> | ||
| 197 | - <li>升级eslint-plugin-vue到最新版本7.2.0</li> | ||
| 198 | - <li>升级lint-staged到最新版本10.5.3</li> | ||
| 199 | - <li>升级runjs到最新版本4.4.2</li> | ||
| 200 | - <li>升级sass-loader到最新版本10.1.0</li> | ||
| 201 | - <li>升级script-ext-html-webpack-plugin到最新版本2.1.5</li> | ||
| 202 | - <li>升级svg-sprite-loader到最新版本5.1.1</li> | ||
| 203 | - <li>升级vue-template-compiler到最新版本2.6.12</li> | ||
| 204 | - <li>其他细节优化</li> | ||
| 205 | - </ol> | ||
| 206 | - </el-collapse-item> | ||
| 207 | - <el-collapse-item title="v3.2.1 - 2020-11-18"> | ||
| 208 | - <ol> | ||
| 209 | - <li>阻止任意文件下载漏洞</li> | ||
| 210 | - <li>代码生成支持上传控件</li> | ||
| 211 | - <li>新增图片上传组件</li> | ||
| 212 | - <li>调整默认首页</li> | ||
| 213 | - <li>升级druid到最新版本v1.2.2</li> | ||
| 214 | - <li>mapperLocations配置支持分隔符</li> | ||
| 215 | - <li>权限信息调整</li> | ||
| 216 | - <li>调整sql默认时间</li> | ||
| 217 | - <li>解决代码生成没有bit类型的问题</li> | ||
| 218 | - <li>升级pagehelper到最新版1.3.0</li> | ||
| 219 | - </ol> | ||
| 220 | - </el-collapse-item> | ||
| 221 | - <el-collapse-item title="v3.2.0 - 2020-10-10"> | ||
| 222 | - <ol> | ||
| 223 | - <li>升级springboot版本到2.1.17 提升安全性</li> | ||
| 224 | - <li>升级oshi到最新版本v5.2.5</li> | ||
| 225 | - <li>升级druid到最新版本v1.2.1</li> | ||
| 226 | - <li>升级jjwt到版本0.9.1</li> | ||
| 227 | - <li>升级fastjson到最新版1.2.74</li> | ||
| 228 | - <li>修改sass为node-sass,避免el-icon图标乱码</li> | ||
| 229 | - <li>代码生成支持同步数据库</li> | ||
| 230 | - <li>代码生成支持富文本控件</li> | ||
| 231 | - <li>代码生成页面时不忽略remark属性</li> | ||
| 232 | - <li>代码生成添加select必填选项</li> | ||
| 233 | - <li>Excel导出类型NUMERIC支持精度浮点类型</li> | ||
| 234 | - <li>Excel导出targetAttr优化获取值,防止get方法不规范</li> | ||
| 235 | - <li>Excel注解支持自动统计数据总和</li> | ||
| 236 | - <li>Excel注解支持设置BigDecimal精度&舍入规则</li> | ||
| 237 | - <li>菜单&数据权限新增(展开/折叠 全选/全不选 父子联动)</li> | ||
| 238 | - <li>允许用户分配到部门父节点</li> | ||
| 239 | - <li>菜单新增是否缓存keep-alive</li> | ||
| 240 | - <li>表格操作列间距调整</li> | ||
| 241 | - <li>限制系统内置参数不允许删除</li> | ||
| 242 | - <li>富文本组件优化,支持自定义高度&图片冲突问题</li> | ||
| 243 | - <li>富文本工具栏样式对齐</li> | ||
| 244 | - <li>导入excel整形值校验优化</li> | ||
| 245 | - <li>修复页签关闭所有时固定标签路由不刷新问题</li> | ||
| 246 | - <li>表单构建布局型组件新增按钮</li> | ||
| 247 | - <li>左侧菜单文字过长显示省略号</li> | ||
| 248 | - <li>修正根节点为子部门时,树状结构显示问题</li> | ||
| 249 | - <li>修正调用目标字符串最大长度</li> | ||
| 250 | - <li>修正菜单提示信息错误</li> | ||
| 251 | - <li>修正定时任务执行一次权限标识</li> | ||
| 252 | - <li>修正数据库字符串类型nvarchar</li> | ||
| 253 | - <li>优化递归子节点</li> | ||
| 254 | - <li>优化数据权限判断</li> | ||
| 255 | - <li>其他细节优化</li> | ||
| 256 | - </ol> | ||
| 257 | - </el-collapse-item> | ||
| 258 | - | ||
| 259 | - <el-collapse-item title="v3.1.0 - 2020-08-13"> | ||
| 260 | - <ol> | ||
| 261 | - <li>表格工具栏右侧添加刷新&显隐查询组件</li> | ||
| 262 | - <li>后端支持CORS跨域请求</li> | ||
| 263 | - <li>代码生成支持选择上级菜单</li> | ||
| 264 | - <li>代码生成支持自定义路径</li> | ||
| 265 | - <li>代码生成支持复选框</li> | ||
| 266 | - <li>Excel导出导入支持dictType字典类型</li> | ||
| 267 | - <li>Excel支持分割字符串组内容</li> | ||
| 268 | - <li>验证码类型支持(数组计算、字符验证)</li> | ||
| 269 | - <li>升级vue-cli版本到4.4.4</li> | ||
| 270 | - <li>修改 node-sass 为 dart-sass</li> | ||
| 271 | - <li>表单类型为Integer/Long设置整形默认值</li> | ||
| 272 | - <li>代码生成器默认mapper路径与默认mapperScan路径不一致</li> | ||
| 273 | - <li>优化防重复提交拦截器</li> | ||
| 274 | - <li>优化上级菜单不能选择自己</li> | ||
| 275 | - <li>修复角色的权限分配后,未实时生效问题</li> | ||
| 276 | - <li>修复在线用户日志记录类型</li> | ||
| 277 | - <li>修复富文本空格和缩进保存后不生效问题</li> | ||
| 278 | - <li>修复在线用户判断逻辑</li> | ||
| 279 | - <li>唯一限制条件只返回单条数据</li> | ||
| 280 | - <li>添加获取当前的环境配置方法</li> | ||
| 281 | - <li>超时登录后页面跳转到首页</li> | ||
| 282 | - <li>全局异常状态汉化拦截处理</li> | ||
| 283 | - <li>HTML过滤器改为将html转义</li> | ||
| 284 | - <li>检查字符支持小数点&降级改成异常提醒</li> | ||
| 285 | - <li>其他细节优化</li> | ||
| 286 | - </ol> | ||
| 287 | - </el-collapse-item> | ||
| 288 | - | ||
| 289 | - <el-collapse-item title="v3.0.0 - 2020-07-20"> | ||
| 290 | - <ol> | ||
| 291 | - <li>单应用调整为多模块项目</li> | ||
| 292 | - <li>升级element-ui版本到2.13.2</li> | ||
| 293 | - <li>删除babel,提高编译速度。</li> | ||
| 294 | - <li>新增菜单默认主类目</li> | ||
| 295 | - <li>编码文件名修改为uuid方式</li> | ||
| 296 | - <li>定时任务cron表达式验证</li> | ||
| 297 | - <li>角色权限修改时已有权限未自动勾选异常修复</li> | ||
| 298 | - <li>防止切换权限用户后登录出现404</li> | ||
| 299 | - <li>Excel支持sort导出排序</li> | ||
| 300 | - <li>创建用户不允许选择超级管理员角色</li> | ||
| 301 | - <li>修复代码生成导入表结构出现异常页面不提醒问题</li> | ||
| 302 | - <li>修复代码生成点击多次表修改数据不变化的问题</li> | ||
| 303 | - <li>修复头像上传成功二次打开无法改变裁剪框大小和位置问题</li> | ||
| 304 | - <li>修复布局为small者mini用户表单显示错位问题</li> | ||
| 305 | - <li>修复热部署导致的强换异常问题</li> | ||
| 306 | - <li>修改用户管理复选框宽度,防止部分浏览器出现省略号</li> | ||
| 307 | - <li>IpUtils工具,清除Xss特殊字符,防止Xff注入攻击</li> | ||
| 308 | - <li>生成domain 如果是浮点型 统一用BigDecimal</li> | ||
| 309 | - <li>定时任务调整label-width,防止部署出现错位</li> | ||
| 310 | - <li>调整表头固定列默认样式</li> | ||
| 311 | - <li>代码生成模板调整,字段为String并且必填则加空串条件</li> | ||
| 312 | - <li>代码生成字典Integer/Long使用parseInt</li> | ||
| 313 | - <li> | ||
| 314 | - 修复dict_sort不可update为0的问题&查询返回增加dict_sort升序排序 | ||
| 315 | - </li> | ||
| 316 | - <li>修正岗位导出权限注解</li> | ||
| 317 | - <li>禁止加密密文返回前端</li> | ||
| 318 | - <li>修复代码生成页面中的查询条件创建时间未生效的问题</li> | ||
| 319 | - <li>修复首页搜索菜单外链无法点击跳转问题</li> | ||
| 320 | - <li>修复菜单管理选择图标,backspace删除时不过滤数据</li> | ||
| 321 | - <li>用户管理部门分支节点不可检查&显示计数</li> | ||
| 322 | - <li>数据范围过滤属性调整</li> | ||
| 323 | - <li>其他细节优化</li> | ||
| 324 | - </ol> | ||
| 325 | - </el-collapse-item> | ||
| 326 | - | ||
| 327 | - <el-collapse-item title="v2.3.0 - 2020-06-01"> | ||
| 328 | - <ol> | ||
| 329 | - <li>升级fastjson到最新版1.2.70 修复高危安全漏洞</li> | ||
| 330 | - <li>dev启动默认打开浏览器</li> | ||
| 331 | - <li>vue-cli使用默认source-map</li> | ||
| 332 | - <li>slidebar eslint报错优化</li> | ||
| 333 | - <li>当tags-view滚动关闭右键菜单</li> | ||
| 334 | - <li>字典管理添加缓存读取</li> | ||
| 335 | - <li>参数管理支持缓存操作</li> | ||
| 336 | - <li>支持一级菜单(和主页同级)在main区域显示</li> | ||
| 337 | - <li>限制外链地址必须以http(s)开头</li> | ||
| 338 | - <li>tagview & sidebar 主题颜色与element ui(全局)同步</li> | ||
| 339 | - <li>修改数据源类型优先级,先根据方法,再根据类</li> | ||
| 340 | - <li>支持是否需要设置token属性,自定义返回码消息。</li> | ||
| 341 | - <li>swagger请求前缀加入配置。</li> | ||
| 342 | - <li>登录地点设置内容过长则隐藏显示</li> | ||
| 343 | - <li>修复定时任务执行一次按钮后不提示消息问题</li> | ||
| 344 | - <li>修改上级部门(选择项排除本身和下级)</li> | ||
| 345 | - <li>通用http发送方法增加参数 contentType 编码类型</li> | ||
| 346 | - <li>更换IP地址查询接口</li> | ||
| 347 | - <li>修复页签变量undefined</li> | ||
| 348 | - <li>添加校验部门包含未停用的子部门</li> | ||
| 349 | - <li>修改定时任务详情下次执行时间日期显示错误</li> | ||
| 350 | - <li>角色管理查询设置默认排序字段</li> | ||
| 351 | - <li>swagger添加enable参数控制是否启用</li> | ||
| 352 | - <li>只对json类型请求构建可重复读取inputStream的request</li> | ||
| 353 | - <li>修改代码生成字典字段int类型没有自动选中问题</li> | ||
| 354 | - <li>vuex用户名取值修正</li> | ||
| 355 | - <li>表格树模板去掉多余的)</li> | ||
| 356 | - <li>代码生成序号修正</li> | ||
| 357 | - <li>全屏情况下不调整上外边距</li> | ||
| 358 | - <li>代码生成Date字段添加默认格式</li> | ||
| 359 | - <li>用户管理角色选择权限控制</li> | ||
| 360 | - <li>修复路由懒加载报错问题</li> | ||
| 361 | - <li>模板sql.vm添加菜单状态</li> | ||
| 362 | - <li>设置用户名称不能修改</li> | ||
| 363 | - <li>dialog添加append-to-body属性,防止ie遮罩</li> | ||
| 364 | - <li>菜单区分状态和显示隐藏功能</li> | ||
| 365 | - <li>升级fastjson到最新版1.2.68 修复安全加固</li> | ||
| 366 | - <li>修复代码生成如果选择字典类型缺失逗号问题</li> | ||
| 367 | - <li>登录请求params更换为data,防止暴露url</li> | ||
| 368 | - <li>日志返回时间格式处理</li> | ||
| 369 | - <li>添加handle控制允许拖动的元素</li> | ||
| 370 | - <li>布局设置点击扩大范围</li> | ||
| 371 | - <li>代码生成列属性排序查询</li> | ||
| 372 | - <li>代码生成列支持拖动排序</li> | ||
| 373 | - <li>修复时间格式不支持ios问题</li> | ||
| 374 | - <li>表单构建添加父级class,防止冲突</li> | ||
| 375 | - <li>定时任务并发属性修正</li> | ||
| 376 | - <li>角色禁用&菜单隐藏不查询权限</li> | ||
| 377 | - <li>其他细节优化</li> | ||
| 378 | - </ol> | ||
| 379 | - </el-collapse-item> | ||
| 380 | - | ||
| 381 | - <el-collapse-item title="v2.2.0 - 2020-03-18"> | ||
| 382 | - <ol> | ||
| 383 | - <li>系统监控新增定时任务功能</li> | ||
| 384 | - <li>添加一个打包Web工程bat</li> | ||
| 385 | - <li>修复页签鼠标滚轮按下的时候,可以关闭不可关闭的tag</li> | ||
| 386 | - <li>修复点击退出登录有时会无提示问题</li> | ||
| 387 | - <li>修复防重复提交注解无效问题</li> | ||
| 388 | - <li>修复通知公告批量删除异常问题</li> | ||
| 389 | - <li>添加菜单时路由地址必填限制</li> | ||
| 390 | - <li>代码生成字段描述可编辑</li> | ||
| 391 | - <li>修复用户修改个人信息导致缓存不过期问题</li> | ||
| 392 | - <li>个人信息创建时间获取正确属性值</li> | ||
| 393 | - <li>操作日志详细显示正确类型</li> | ||
| 394 | - <li>导入表单击行数据时选中对应的复选框</li> | ||
| 395 | - <li>批量替换表前缀逻辑调整</li> | ||
| 396 | - <li>固定重定向路径表达式</li> | ||
| 397 | - <li>升级element-ui版本到2.13.0</li> | ||
| 398 | - <li>操作日志排序调整</li> | ||
| 399 | - <li>修复charts切换侧边栏或者缩放窗口显示bug</li> | ||
| 400 | - <li>其他细节优化</li> | ||
| 401 | - </ol> | ||
| 402 | - </el-collapse-item> | ||
| 403 | - | ||
| 404 | - <el-collapse-item title="v2.1.0 - 2020-02-24"> | ||
| 405 | - <ol> | ||
| 406 | - <li>新增表单构建</li> | ||
| 407 | - <li>代码生成支持树表结构</li> | ||
| 408 | - <li>新增用户导入</li> | ||
| 409 | - <li>修复动态加载路由页面刷新问题</li> | ||
| 410 | - <li>修复地址开关无效问题</li> | ||
| 411 | - <li>汉化错误提示页面</li> | ||
| 412 | - <li>代码生成已知问题修改</li> | ||
| 413 | - <li>修复多数据源下配置关闭出现异常处理</li> | ||
| 414 | - <li>添加HTML过滤器,用于去除XSS漏洞隐患</li> | ||
| 415 | - <li>修复上传头像控制台出现异常</li> | ||
| 416 | - <li>修改用户管理分页不正确的问题</li> | ||
| 417 | - <li>修复验证码记录提示错误</li> | ||
| 418 | - <li>修复request.js缺少Message引用</li> | ||
| 419 | - <li>修复表格时间为空出现的异常</li> | ||
| 420 | - <li>添加Jackson日期反序列化时区配置</li> | ||
| 421 | - <li>调整根据用户权限加载菜单数据树形结构</li> | ||
| 422 | - <li>调整成功登录不恢复按钮,防止多次点击</li> | ||
| 423 | - <li>修改用户个人资料同步缓存信息</li> | ||
| 424 | - <li>修复页面同时出现el-upload和Editor不显示处理</li> | ||
| 425 | - <li>修复在角色管理页修改菜单权限偶尔未选中问题</li> | ||
| 426 | - <li>配置文件新增redis密码属性</li> | ||
| 427 | - <li>设置mybatis全局的配置文件</li> | ||
| 428 | - <li>其他细节优化</li> | ||
| 429 | - </ol> | ||
| 430 | - </el-collapse-item> | ||
| 431 | - | ||
| 432 | - <el-collapse-item title="v2.0.0 - 2019-12-02"> | ||
| 433 | - <ol> | ||
| 434 | - <li>新增代码生成</li> | ||
| 435 | - <li>新增@RepeatSubmit注解,防止重复提交</li> | ||
| 436 | - <li>新增菜单主目录添加/删除操作</li> | ||
| 437 | - <li>日志记录过滤特殊对象,防止转换异常</li> | ||
| 438 | - <li>修改代码生成路由脚本错误</li> | ||
| 439 | - <li>用户上传头像实时同步缓存,无需重新登录</li> | ||
| 440 | - <li>调整切换页签后不重新加载数据</li> | ||
| 441 | - <li>添加jsencrypt实现参数的前端加密</li> | ||
| 442 | - <li>系统退出删除用户缓存记录</li> | ||
| 443 | - <li>其他细节优化</li> | ||
| 444 | - </ol> | ||
| 445 | - </el-collapse-item> | ||
| 446 | - <el-collapse-item title="v1.1.0 - 2019-11-11"> | ||
| 447 | - <ol> | ||
| 448 | - <li>新增在线用户管理</li> | ||
| 449 | - <li>新增按钮组功能实现(批量删除、导出、清空)</li> | ||
| 450 | - <li>新增查询条件重置按钮</li> | ||
| 451 | - <li>新增Swagger全局Token配置</li> | ||
| 452 | - <li>新增后端参数校验</li> | ||
| 453 | - <li>修复字典管理页面的日期查询异常</li> | ||
| 454 | - <li>修改时间函数命名防止冲突</li> | ||
| 455 | - <li>去除菜单上级校验,默认为顶级</li> | ||
| 456 | - <li>修复用户密码无法修改问题</li> | ||
| 457 | - <li>修复菜单类型为按钮时不显示权限标识</li> | ||
| 458 | - <li>其他细节优化</li> | ||
| 459 | - </ol> | ||
| 460 | - </el-collapse-item> | ||
| 461 | - <el-collapse-item title="v1.0.0 - 2019-10-08"> | ||
| 462 | - <ol> | ||
| 463 | - <li>芋道前后端分离系统正式发布</li> | ||
| 464 | - </ol> | ||
| 465 | - </el-collapse-item> | ||
| 466 | - </el-collapse> | ||
| 467 | - </el-card> | ||
| 468 | - </el-col> | ||
| 469 | - <el-col :xs="24" :sm="24" :md="12" :lg="8"> | ||
| 470 | - <el-card class="update-log"> | ||
| 471 | - <div slot="header" class="clearfix"> | ||
| 472 | - <span>捐赠支持</span> | ||
| 473 | - </div> | ||
| 474 | - <div class="body"> | ||
| 475 | - <img | ||
| 476 | - src="https://oscimg.oschina.net/oscnet/up-d6695f82666e5018f715c41cb7ee60d3b73.png" | ||
| 477 | - alt="donate" | ||
| 478 | - width="100%" | ||
| 479 | - /> | ||
| 480 | - <span style="display: inline-block; height: 30px; line-height: 30px" | ||
| 481 | - >你可以请作者喝杯咖啡表示鼓励</span | ||
| 482 | - > | ||
| 483 | - </div> | ||
| 484 | - </el-card> | ||
| 485 | - </el-col> | ||
| 486 | - </el-row> | ||
| 487 | - </div> | ||
| 488 | -</template> | ||
| 489 | - | ||
| 490 | -<script> | ||
| 491 | -export default { | ||
| 492 | - name: "Index", | ||
| 493 | - data() { | ||
| 494 | - return { | ||
| 495 | - // 版本号 | ||
| 496 | - version: "3.3.0", | ||
| 497 | - }; | ||
| 498 | - }, | ||
| 499 | - methods: { | ||
| 500 | - goTarget(href) { | ||
| 501 | - window.open(href, "_blank"); | ||
| 502 | - }, | ||
| 503 | - }, | ||
| 504 | -}; | ||
| 505 | -</script> | ||
| 506 | - | ||
| 507 | -<style scoped lang="scss"> | ||
| 508 | -.home { | ||
| 509 | - blockquote { | ||
| 510 | - padding: 10px 20px; | ||
| 511 | - margin: 0 0 20px; | ||
| 512 | - font-size: 17.5px; | ||
| 513 | - border-left: 5px solid #eee; | ||
| 514 | - } | ||
| 515 | - hr { | ||
| 516 | - margin-top: 20px; | ||
| 517 | - margin-bottom: 20px; | ||
| 518 | - border: 0; | ||
| 519 | - border-top: 1px solid #eee; | ||
| 520 | - } | ||
| 521 | - .col-item { | ||
| 522 | - margin-bottom: 20px; | ||
| 523 | - } | ||
| 524 | - | ||
| 525 | - ul { | ||
| 526 | - padding: 0; | ||
| 527 | - margin: 0; | ||
| 528 | - } | ||
| 529 | - | ||
| 530 | - font-family: "open sans", "Helvetica Neue", Helvetica, Arial, sans-serif; | ||
| 531 | - font-size: 13px; | ||
| 532 | - color: #676a6c; | ||
| 533 | - overflow-x: hidden; | ||
| 534 | - | ||
| 535 | - ul { | ||
| 536 | - list-style-type: none; | ||
| 537 | - } | ||
| 538 | - | ||
| 539 | - h4 { | ||
| 540 | - margin-top: 0px; | ||
| 541 | - } | ||
| 542 | - | ||
| 543 | - h2 { | ||
| 544 | - margin-top: 10px; | ||
| 545 | - font-size: 26px; | ||
| 546 | - font-weight: 100; | ||
| 547 | - } | ||
| 548 | - | ||
| 549 | - p { | ||
| 550 | - margin-top: 10px; | ||
| 551 | - | ||
| 552 | - b { | ||
| 553 | - font-weight: 700; | ||
| 554 | - } | ||
| 555 | - } | ||
| 556 | - | ||
| 557 | - .update-log { | ||
| 558 | - ol { | ||
| 559 | - display: block; | ||
| 560 | - list-style-type: decimal; | ||
| 561 | - margin-block-start: 1em; | ||
| 562 | - margin-block-end: 1em; | ||
| 563 | - margin-inline-start: 0; | ||
| 564 | - margin-inline-end: 0; | ||
| 565 | - padding-inline-start: 40px; | ||
| 566 | - } | ||
| 567 | - } | ||
| 568 | -} | ||
| 569 | -</style> | ||
| 570 | - |
yudao-ui-admin/src/views/infra/apiAccessLog/index.vue
| @@ -48,7 +48,7 @@ | @@ -48,7 +48,7 @@ | ||
| 48 | <el-table-column label="日志编号" align="center" prop="id" /> | 48 | <el-table-column label="日志编号" align="center" prop="id" /> |
| 49 | <el-table-column label="用户编号" align="center" prop="userId" /> | 49 | <el-table-column label="用户编号" align="center" prop="userId" /> |
| 50 | <el-table-column label="用户类型" align="center" prop="userType"> | 50 | <el-table-column label="用户类型" align="center" prop="userType"> |
| 51 | - <template slot-scope="scope"> | 51 | + <template v-slot="scope"> |
| 52 | <dict-tag :type="DICT_TYPE.USER_TYPE" :value="scope.row.userType"/> | 52 | <dict-tag :type="DICT_TYPE.USER_TYPE" :value="scope.row.userType"/> |
| 53 | </template> | 53 | </template> |
| 54 | </el-table-column>> | 54 | </el-table-column>> |
| @@ -56,22 +56,22 @@ | @@ -56,22 +56,22 @@ | ||
| 56 | <el-table-column label="请求方法名" align="center" prop="requestMethod" /> | 56 | <el-table-column label="请求方法名" align="center" prop="requestMethod" /> |
| 57 | <el-table-column label="请求地址" align="center" prop="requestUrl" width="250" /> | 57 | <el-table-column label="请求地址" align="center" prop="requestUrl" width="250" /> |
| 58 | <el-table-column label="请求时间" align="center" prop="beginTime" width="180"> | 58 | <el-table-column label="请求时间" align="center" prop="beginTime" width="180"> |
| 59 | - <template slot-scope="scope"> | 59 | + <template v-slot="scope"> |
| 60 | <span>{{ parseTime(scope.row.beginTime) }}</span> | 60 | <span>{{ parseTime(scope.row.beginTime) }}</span> |
| 61 | </template> | 61 | </template> |
| 62 | </el-table-column> | 62 | </el-table-column> |
| 63 | <el-table-column label="执行时长" align="center" prop="startTime"> | 63 | <el-table-column label="执行时长" align="center" prop="startTime"> |
| 64 | - <template slot-scope="scope"> | 64 | + <template v-slot="scope"> |
| 65 | <span>{{ scope.row.duration }} ms</span> | 65 | <span>{{ scope.row.duration }} ms</span> |
| 66 | </template> | 66 | </template> |
| 67 | </el-table-column> | 67 | </el-table-column> |
| 68 | <el-table-column label="操作结果" align="center" prop="status"> | 68 | <el-table-column label="操作结果" align="center" prop="status"> |
| 69 | - <template slot-scope="scope"> | 69 | + <template v-slot="scope"> |
| 70 | <span>{{ scope.row.resultCode === 0 ? '成功' : '失败(' + scope.row.resultMsg + ')' }}</span> | 70 | <span>{{ scope.row.resultCode === 0 ? '成功' : '失败(' + scope.row.resultMsg + ')' }}</span> |
| 71 | </template> | 71 | </template> |
| 72 | </el-table-column> | 72 | </el-table-column> |
| 73 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> | 73 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
| 74 | - <template slot-scope="scope"> | 74 | + <template v-slot="scope"> |
| 75 | <el-button size="mini" type="text" icon="el-icon-view" @click="handleView(scope.row,scope.index)" | 75 | <el-button size="mini" type="text" icon="el-icon-view" @click="handleView(scope.row,scope.index)" |
| 76 | v-hasPermi="['infra:api-access-log:query']">详细</el-button> | 76 | v-hasPermi="['infra:api-access-log:query']">详细</el-button> |
| 77 | </template> | 77 | </template> |
yudao-ui-admin/src/views/infra/apiErrorLog/index.vue
| @@ -48,7 +48,7 @@ | @@ -48,7 +48,7 @@ | ||
| 48 | <el-table-column label="日志编号" align="center" prop="id" /> | 48 | <el-table-column label="日志编号" align="center" prop="id" /> |
| 49 | <el-table-column label="用户编号" align="center" prop="userId" /> | 49 | <el-table-column label="用户编号" align="center" prop="userId" /> |
| 50 | <el-table-column label="用户类型" align="center" prop="userType"> | 50 | <el-table-column label="用户类型" align="center" prop="userType"> |
| 51 | - <template slot-scope="scope"> | 51 | + <template v-slot="scope"> |
| 52 | <dict-tag :type="DICT_TYPE.USER_TYPE" :value="scope.row.userType"/> | 52 | <dict-tag :type="DICT_TYPE.USER_TYPE" :value="scope.row.userType"/> |
| 53 | </template> | 53 | </template> |
| 54 | </el-table-column>> | 54 | </el-table-column>> |
| @@ -56,18 +56,18 @@ | @@ -56,18 +56,18 @@ | ||
| 56 | <el-table-column label="请求方法名" align="center" prop="requestMethod" /> | 56 | <el-table-column label="请求方法名" align="center" prop="requestMethod" /> |
| 57 | <el-table-column label="请求地址" align="center" prop="requestUrl" width="250" /> | 57 | <el-table-column label="请求地址" align="center" prop="requestUrl" width="250" /> |
| 58 | <el-table-column label="异常发生时间" align="center" prop="exceptionTime" width="180"> | 58 | <el-table-column label="异常发生时间" align="center" prop="exceptionTime" width="180"> |
| 59 | - <template slot-scope="scope"> | 59 | + <template v-slot="scope"> |
| 60 | <span>{{ parseTime(scope.row.exceptionTime) }}</span> | 60 | <span>{{ parseTime(scope.row.exceptionTime) }}</span> |
| 61 | </template> | 61 | </template> |
| 62 | </el-table-column> | 62 | </el-table-column> |
| 63 | <el-table-column label="异常名" align="center" prop="exceptionName" width="250" /> | 63 | <el-table-column label="异常名" align="center" prop="exceptionName" width="250" /> |
| 64 | <el-table-column label="处理状态" align="center" prop="processStatus"> | 64 | <el-table-column label="处理状态" align="center" prop="processStatus"> |
| 65 | - <template slot-scope="scope"> | 65 | + <template v-slot="scope"> |
| 66 | <dict-tag :type="DICT_TYPE.INFRA_API_ERROR_LOG_PROCESS_STATUS" :value="scope.row.processStatus" /> | 66 | <dict-tag :type="DICT_TYPE.INFRA_API_ERROR_LOG_PROCESS_STATUS" :value="scope.row.processStatus" /> |
| 67 | </template> | 67 | </template> |
| 68 | </el-table-column> | 68 | </el-table-column> |
| 69 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> | 69 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
| 70 | - <template slot-scope="scope"> | 70 | + <template v-slot="scope"> |
| 71 | <el-button size="mini" type="text" icon="el-icon-view" @click="handleView(scope.row,scope.index)" | 71 | <el-button size="mini" type="text" icon="el-icon-view" @click="handleView(scope.row,scope.index)" |
| 72 | v-hasPermi="['infra:api-access-log:query']">详细</el-button> | 72 | v-hasPermi="['infra:api-access-log:query']">详细</el-button> |
| 73 | <el-button type="text" size="mini" icon="el-icon-check" | 73 | <el-button type="text" size="mini" icon="el-icon-check" |
yudao-ui-admin/src/views/infra/build/FormDrawer.vue
| @@ -84,7 +84,7 @@ import { | @@ -84,7 +84,7 @@ import { | ||
| 84 | } from '@/components/generator/html' | 84 | } from '@/components/generator/html' |
| 85 | import { makeUpJs } from '@/components/generator/js' | 85 | import { makeUpJs } from '@/components/generator/js' |
| 86 | import { makeUpCss } from '@/components/generator/css' | 86 | import { makeUpCss } from '@/components/generator/css' |
| 87 | -import { exportDefault, beautifierConf, titleCase } from '@/utils/index' | 87 | +import { exportDefault, beautifierConf } from '@/utils' |
| 88 | import ResourceDialog from './ResourceDialog' | 88 | import ResourceDialog from './ResourceDialog' |
| 89 | import loadMonaco from '@/utils/loadMonaco' | 89 | import loadMonaco from '@/utils/loadMonaco' |
| 90 | import loadBeautifier from '@/utils/loadBeautifier' | 90 | import loadBeautifier from '@/utils/loadBeautifier' |
| @@ -325,7 +325,7 @@ export default { | @@ -325,7 +325,7 @@ export default { | ||
| 325 | } | 325 | } |
| 326 | } | 326 | } |
| 327 | @include action-bar; | 327 | @include action-bar; |
| 328 | -::v-deep .el-drawer__header { | 328 | +:deep(.el-drawer__header) { |
| 329 | display: none; | 329 | display: none; |
| 330 | } | 330 | } |
| 331 | </style> | 331 | </style> |
yudao-ui-admin/src/views/infra/build/IconsDialog.vue
| @@ -101,7 +101,7 @@ export default { | @@ -101,7 +101,7 @@ export default { | ||
| 101 | } | 101 | } |
| 102 | } | 102 | } |
| 103 | .icon-dialog { | 103 | .icon-dialog { |
| 104 | - ::v-deep .el-dialog { | 104 | + :deep(.el-dialog) { |
| 105 | border-radius: 8px; | 105 | border-radius: 8px; |
| 106 | margin-bottom: 0; | 106 | margin-bottom: 0; |
| 107 | margin-top: 4vh !important; | 107 | margin-top: 4vh !important; |
yudao-ui-admin/src/views/infra/build/JsonDrawer.vue
| @@ -25,7 +25,7 @@ | @@ -25,7 +25,7 @@ | ||
| 25 | </template> | 25 | </template> |
| 26 | 26 | ||
| 27 | <script> | 27 | <script> |
| 28 | -import { beautifierConf } from '@/utils/index' | 28 | +import { beautifierConf } from '@/utils' |
| 29 | import ClipboardJS from 'clipboard' | 29 | import ClipboardJS from 'clipboard' |
| 30 | import { saveAs } from 'file-saver' | 30 | import { saveAs } from 'file-saver' |
| 31 | import loadMonaco from '@/utils/loadMonaco' | 31 | import loadMonaco from '@/utils/loadMonaco' |
| @@ -133,7 +133,7 @@ export default { | @@ -133,7 +133,7 @@ export default { | ||
| 133 | <style lang="scss" scoped> | 133 | <style lang="scss" scoped> |
| 134 | @import '@/styles/mixin.scss'; | 134 | @import '@/styles/mixin.scss'; |
| 135 | 135 | ||
| 136 | -::v-deep .el-drawer__header { | 136 | +:deep(.el-drawer__header) { |
| 137 | display: none; | 137 | display: none; |
| 138 | } | 138 | } |
| 139 | @include action-bar; | 139 | @include action-bar; |
yudao-ui-admin/src/views/infra/build/ResourceDialog.vue
yudao-ui-admin/src/views/infra/build/RightPanel.vue
| @@ -651,10 +651,10 @@ | @@ -651,10 +651,10 @@ | ||
| 651 | <script> | 651 | <script> |
| 652 | import { isArray } from 'util' | 652 | import { isArray } from 'util' |
| 653 | import TreeNodeDialog from './TreeNodeDialog' | 653 | import TreeNodeDialog from './TreeNodeDialog' |
| 654 | -import { isNumberStr } from '@/utils/index' | 654 | +import { isNumberStr } from '@/utils' |
| 655 | import IconsDialog from './IconsDialog' | 655 | import IconsDialog from './IconsDialog' |
| 656 | import { | 656 | import { |
| 657 | - inputComponents, selectComponents, layoutComponents | 657 | + inputComponents, selectComponents |
| 658 | } from '@/components/generator/config' | 658 | } from '@/components/generator/config' |
| 659 | import { saveFormConf } from '@/utils/db' | 659 | import { saveFormConf } from '@/utils/db' |
| 660 | 660 | ||
| @@ -1021,7 +1021,7 @@ export default { | @@ -1021,7 +1021,7 @@ export default { | ||
| 1021 | .el-date-editor { | 1021 | .el-date-editor { |
| 1022 | width: 227px; | 1022 | width: 227px; |
| 1023 | } | 1023 | } |
| 1024 | - ::v-deep .el-icon-time { | 1024 | + :deep(.el-icon-time) { |
| 1025 | display: none; | 1025 | display: none; |
| 1026 | } | 1026 | } |
| 1027 | } | 1027 | } |
yudao-ui-admin/src/views/infra/build/TreeNodeDialog.vue
| @@ -71,7 +71,7 @@ | @@ -71,7 +71,7 @@ | ||
| 71 | </div> | 71 | </div> |
| 72 | </template> | 72 | </template> |
| 73 | <script> | 73 | <script> |
| 74 | -import { isNumberStr } from '@/utils/index' | 74 | +import { isNumberStr } from '@/utils' |
| 75 | import { getTreeNodeId, saveTreeNodeId } from '@/utils/db' | 75 | import { getTreeNodeId, saveTreeNodeId } from '@/utils/db' |
| 76 | 76 | ||
| 77 | const id = getTreeNodeId() | 77 | const id = getTreeNodeId() |
yudao-ui-admin/src/views/infra/build/index.vue
| @@ -133,8 +133,8 @@ import { | @@ -133,8 +133,8 @@ import { | ||
| 133 | inputComponents, selectComponents, layoutComponents, formConf | 133 | inputComponents, selectComponents, layoutComponents, formConf |
| 134 | } from '@/components/generator/config' | 134 | } from '@/components/generator/config' |
| 135 | import { | 135 | import { |
| 136 | - exportDefault, beautifierConf, isNumberStr, titleCase, deepClone | ||
| 137 | -} from '@/utils/index' | 136 | + beautifierConf, titleCase, deepClone |
| 137 | +} from '@/utils' | ||
| 138 | import { | 138 | import { |
| 139 | makeUpHtml, vueTemplate, vueScript, cssStyle | 139 | makeUpHtml, vueTemplate, vueScript, cssStyle |
| 140 | } from '@/components/generator/html' | 140 | } from '@/components/generator/html' |
yudao-ui-admin/src/views/infra/codegen/editTable.vue
| @@ -13,7 +13,7 @@ | @@ -13,7 +13,7 @@ | ||
| 13 | :show-overflow-tooltip="true" | 13 | :show-overflow-tooltip="true" |
| 14 | /> | 14 | /> |
| 15 | <el-table-column label="字段描述" min-width="10%"> | 15 | <el-table-column label="字段描述" min-width="10%"> |
| 16 | - <template slot-scope="scope"> | 16 | + <template v-slot="scope"> |
| 17 | <el-input v-model="scope.row.columnComment"></el-input> | 17 | <el-input v-model="scope.row.columnComment"></el-input> |
| 18 | </template> | 18 | </template> |
| 19 | </el-table-column> | 19 | </el-table-column> |
| @@ -24,7 +24,7 @@ | @@ -24,7 +24,7 @@ | ||
| 24 | :show-overflow-tooltip="true" | 24 | :show-overflow-tooltip="true" |
| 25 | /> | 25 | /> |
| 26 | <el-table-column label="Java类型" min-width="11%"> | 26 | <el-table-column label="Java类型" min-width="11%"> |
| 27 | - <template slot-scope="scope"> | 27 | + <template v-slot="scope"> |
| 28 | <el-select v-model="scope.row.javaType"> | 28 | <el-select v-model="scope.row.javaType"> |
| 29 | <el-option label="Long" value="Long" /> | 29 | <el-option label="Long" value="Long" /> |
| 30 | <el-option label="String" value="String" /> | 30 | <el-option label="String" value="String" /> |
| @@ -37,32 +37,32 @@ | @@ -37,32 +37,32 @@ | ||
| 37 | </template> | 37 | </template> |
| 38 | </el-table-column> | 38 | </el-table-column> |
| 39 | <el-table-column label="java属性" min-width="10%"> | 39 | <el-table-column label="java属性" min-width="10%"> |
| 40 | - <template slot-scope="scope"> | 40 | + <template v-slot="scope"> |
| 41 | <el-input v-model="scope.row.javaField"></el-input> | 41 | <el-input v-model="scope.row.javaField"></el-input> |
| 42 | </template> | 42 | </template> |
| 43 | </el-table-column> | 43 | </el-table-column> |
| 44 | <el-table-column label="插入" min-width="4%"> | 44 | <el-table-column label="插入" min-width="4%"> |
| 45 | - <template slot-scope="scope"> | 45 | + <template v-slot="scope"> |
| 46 | <el-checkbox true-label="true" false-label="false" v-model="scope.row.createOperation"></el-checkbox> | 46 | <el-checkbox true-label="true" false-label="false" v-model="scope.row.createOperation"></el-checkbox> |
| 47 | </template> | 47 | </template> |
| 48 | </el-table-column> | 48 | </el-table-column> |
| 49 | <el-table-column label="编辑" min-width="4%"> | 49 | <el-table-column label="编辑" min-width="4%"> |
| 50 | - <template slot-scope="scope"> | 50 | + <template v-slot="scope"> |
| 51 | <el-checkbox true-label="true" false-label="false" v-model="scope.row.updateOperation"></el-checkbox> | 51 | <el-checkbox true-label="true" false-label="false" v-model="scope.row.updateOperation"></el-checkbox> |
| 52 | </template> | 52 | </template> |
| 53 | </el-table-column> | 53 | </el-table-column> |
| 54 | <el-table-column label="列表" min-width="4%"> | 54 | <el-table-column label="列表" min-width="4%"> |
| 55 | - <template slot-scope="scope"> | 55 | + <template v-slot="scope"> |
| 56 | <el-checkbox true-label="true" false-label="false" v-model="scope.row.listOperationResult"></el-checkbox> | 56 | <el-checkbox true-label="true" false-label="false" v-model="scope.row.listOperationResult"></el-checkbox> |
| 57 | </template> | 57 | </template> |
| 58 | </el-table-column> | 58 | </el-table-column> |
| 59 | <el-table-column label="查询" min-width="4%"> | 59 | <el-table-column label="查询" min-width="4%"> |
| 60 | - <template slot-scope="scope"> | 60 | + <template v-slot="scope"> |
| 61 | <el-checkbox true-label="true" false-label="false" v-model="scope.row.listOperation"></el-checkbox> | 61 | <el-checkbox true-label="true" false-label="false" v-model="scope.row.listOperation"></el-checkbox> |
| 62 | </template> | 62 | </template> |
| 63 | </el-table-column> | 63 | </el-table-column> |
| 64 | <el-table-column label="查询方式" min-width="10%"> | 64 | <el-table-column label="查询方式" min-width="10%"> |
| 65 | - <template slot-scope="scope"> | 65 | + <template v-slot="scope"> |
| 66 | <el-select v-model="scope.row.listOperationCondition"> | 66 | <el-select v-model="scope.row.listOperationCondition"> |
| 67 | <el-option label="=" value="=" /> | 67 | <el-option label="=" value="=" /> |
| 68 | <el-option label="!=" value="!=" /> | 68 | <el-option label="!=" value="!=" /> |
| @@ -76,12 +76,12 @@ | @@ -76,12 +76,12 @@ | ||
| 76 | </template> | 76 | </template> |
| 77 | </el-table-column> | 77 | </el-table-column> |
| 78 | <el-table-column label="允许空" min-width="5%"> | 78 | <el-table-column label="允许空" min-width="5%"> |
| 79 | - <template slot-scope="scope"> | 79 | + <template v-slot="scope"> |
| 80 | <el-checkbox true-label="true" false-label="false" v-model="scope.row.nullable"></el-checkbox> | 80 | <el-checkbox true-label="true" false-label="false" v-model="scope.row.nullable"></el-checkbox> |
| 81 | </template> | 81 | </template> |
| 82 | </el-table-column> | 82 | </el-table-column> |
| 83 | <el-table-column label="显示类型" min-width="12%"> | 83 | <el-table-column label="显示类型" min-width="12%"> |
| 84 | - <template slot-scope="scope"> | 84 | + <template v-slot="scope"> |
| 85 | <el-select v-model="scope.row.htmlType"> | 85 | <el-select v-model="scope.row.htmlType"> |
| 86 | <el-option label="文本框" value="input" /> | 86 | <el-option label="文本框" value="input" /> |
| 87 | <el-option label="文本域" value="textarea" /> | 87 | <el-option label="文本域" value="textarea" /> |
| @@ -96,7 +96,7 @@ | @@ -96,7 +96,7 @@ | ||
| 96 | </template> | 96 | </template> |
| 97 | </el-table-column> | 97 | </el-table-column> |
| 98 | <el-table-column label="字典类型" min-width="12%"> | 98 | <el-table-column label="字典类型" min-width="12%"> |
| 99 | - <template slot-scope="scope"> | 99 | + <template v-slot="scope"> |
| 100 | <el-select v-model="scope.row.dictType" clearable filterable placeholder="请选择"> | 100 | <el-select v-model="scope.row.dictType" clearable filterable placeholder="请选择"> |
| 101 | <el-option | 101 | <el-option |
| 102 | v-for="dict in dictOptions" | 102 | v-for="dict in dictOptions" |
| @@ -108,7 +108,7 @@ | @@ -108,7 +108,7 @@ | ||
| 108 | </template> | 108 | </template> |
| 109 | </el-table-column> | 109 | </el-table-column> |
| 110 | <el-table-column label="示例" min-width="10%"> | 110 | <el-table-column label="示例" min-width="10%"> |
| 111 | - <template slot-scope="scope"> | 111 | + <template v-slot="scope"> |
| 112 | <el-input v-model="scope.row.example"></el-input> | 112 | <el-input v-model="scope.row.example"></el-input> |
| 113 | </template> | 113 | </template> |
| 114 | </el-table-column> | 114 | </el-table-column> |
yudao-ui-admin/src/views/infra/codegen/genInfoForm.vue
| @@ -105,7 +105,7 @@ | @@ -105,7 +105,7 @@ | ||
| 105 | </el-form-item> | 105 | </el-form-item> |
| 106 | </el-col> | 106 | </el-col> |
| 107 | 107 | ||
| 108 | - <el-col :span="24" v-if="info.genType == '1'"> | 108 | + <el-col :span="24" v-if="info.genType === '1'"> |
| 109 | <el-form-item prop="genPath"> | 109 | <el-form-item prop="genPath"> |
| 110 | <span slot="label"> | 110 | <span slot="label"> |
| 111 | 自定义路径 | 111 | 自定义路径 |
| @@ -128,7 +128,7 @@ | @@ -128,7 +128,7 @@ | ||
| 128 | </el-col> | 128 | </el-col> |
| 129 | </el-row> | 129 | </el-row> |
| 130 | 130 | ||
| 131 | - <el-row v-show="info.tplCategory == 'tree'"> | 131 | + <el-row v-show="info.tplCategory === 'tree'"> |
| 132 | <h4 class="form-header">其他信息</h4> | 132 | <h4 class="form-header">其他信息</h4> |
| 133 | <el-col :span="12"> | 133 | <el-col :span="12"> |
| 134 | <el-form-item> | 134 | <el-form-item> |
| @@ -185,7 +185,7 @@ | @@ -185,7 +185,7 @@ | ||
| 185 | </el-form-item> | 185 | </el-form-item> |
| 186 | </el-col> | 186 | </el-col> |
| 187 | </el-row> | 187 | </el-row> |
| 188 | - <el-row v-show="info.tplCategory == 'sub'"> | 188 | + <el-row v-show="info.tplCategory === 'sub'"> |
| 189 | <h4 class="form-header">关联信息</h4> | 189 | <h4 class="form-header">关联信息</h4> |
| 190 | <el-col :span="12"> | 190 | <el-col :span="12"> |
| 191 | <el-form-item> | 191 | <el-form-item> |
| @@ -314,7 +314,7 @@ export default { | @@ -314,7 +314,7 @@ export default { | ||
| 314 | }, | 314 | }, |
| 315 | /** 设置关联外键 */ | 315 | /** 设置关联外键 */ |
| 316 | setSubTableColumns(value) { | 316 | setSubTableColumns(value) { |
| 317 | - for (var item in this.tables) { | 317 | + for (let item in this.tables) { |
| 318 | const name = this.tables[item].tableName; | 318 | const name = this.tables[item].tableName; |
| 319 | if (value === name) { | 319 | if (value === name) { |
| 320 | this.subColumns = this.tables[item].columns; | 320 | this.subColumns = this.tables[item].columns; |
yudao-ui-admin/src/views/infra/codegen/index.vue
| @@ -38,17 +38,17 @@ | @@ -38,17 +38,17 @@ | ||
| 38 | <el-table-column label="表描述" align="center" prop="tableComment" :show-overflow-tooltip="true" width="120"/> | 38 | <el-table-column label="表描述" align="center" prop="tableComment" :show-overflow-tooltip="true" width="120"/> |
| 39 | <el-table-column label="实体" align="center" prop="className" width="200"/> | 39 | <el-table-column label="实体" align="center" prop="className" width="200"/> |
| 40 | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> | 40 | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> |
| 41 | - <template slot-scope="scope"> | 41 | + <template v-slot="scope"> |
| 42 | <span>{{ parseTime(scope.row.createTime) }}</span> | 42 | <span>{{ parseTime(scope.row.createTime) }}</span> |
| 43 | </template> | 43 | </template> |
| 44 | </el-table-column> | 44 | </el-table-column> |
| 45 | <el-table-column label="更新时间" align="center" prop="createTime" width="180"> | 45 | <el-table-column label="更新时间" align="center" prop="createTime" width="180"> |
| 46 | - <template slot-scope="scope"> | 46 | + <template v-slot="scope"> |
| 47 | <span>{{ parseTime(scope.row.updateTime) }}</span> | 47 | <span>{{ parseTime(scope.row.updateTime) }}</span> |
| 48 | </template> | 48 | </template> |
| 49 | </el-table-column> | 49 | </el-table-column> |
| 50 | <el-table-column label="操作" align="center" width="300px" class-name="small-padding fixed-width"> | 50 | <el-table-column label="操作" align="center" width="300px" class-name="small-padding fixed-width"> |
| 51 | - <template slot-scope="scope"> | 51 | + <template v-slot="scope"> |
| 52 | <el-button type="text" size="small" icon="el-icon-view" @click="handlePreview(scope.row)" v-hasPermi="['infra:codegen:preview']">预览</el-button> | 52 | <el-button type="text" size="small" icon="el-icon-view" @click="handlePreview(scope.row)" v-hasPermi="['infra:codegen:preview']">预览</el-button> |
| 53 | <el-button type="text" size="small" icon="el-icon-edit" @click="handleEditTable(scope.row)" v-hasPermi="['infra:codegen:update']">编辑</el-button> | 53 | <el-button type="text" size="small" icon="el-icon-edit" @click="handleEditTable(scope.row)" v-hasPermi="['infra:codegen:update']">编辑</el-button> |
| 54 | <el-button type="text" size="small" icon="el-icon-delete" @click="handleDelete(scope.row)" v-hasPermi="['infra:codegen:delete']">删除</el-button> | 54 | <el-button type="text" size="small" icon="el-icon-delete" @click="handleDelete(scope.row)" v-hasPermi="['infra:codegen:delete']">删除</el-button> |
| @@ -209,7 +209,7 @@ export default { | @@ -209,7 +209,7 @@ export default { | ||
| 209 | highlightedCode(item) { | 209 | highlightedCode(item) { |
| 210 | // const vmName = key.substring(key.lastIndexOf("/") + 1, key.indexOf(".vm")); | 210 | // const vmName = key.substring(key.lastIndexOf("/") + 1, key.indexOf(".vm")); |
| 211 | // var language = vmName.substring(vmName.indexOf(".") + 1, vmName.length); | 211 | // var language = vmName.substring(vmName.indexOf(".") + 1, vmName.length); |
| 212 | - var language = item.filePath.substring(item.filePath.lastIndexOf(".") + 1); | 212 | + const language = item.filePath.substring(item.filePath.lastIndexOf('.') + 1) |
| 213 | const result = hljs.highlight(language, item.code || "", true); | 213 | const result = hljs.highlight(language, item.code || "", true); |
| 214 | return result.value || ' '; | 214 | return result.value || ' '; |
| 215 | }, | 215 | }, |
yudao-ui-admin/src/views/infra/config/index.vue
| @@ -46,23 +46,23 @@ | @@ -46,23 +46,23 @@ | ||
| 46 | <el-table-column label="参数键名" align="center" prop="key" :show-overflow-tooltip="true" /> | 46 | <el-table-column label="参数键名" align="center" prop="key" :show-overflow-tooltip="true" /> |
| 47 | <el-table-column label="参数键值" align="center" prop="value" /> | 47 | <el-table-column label="参数键值" align="center" prop="value" /> |
| 48 | <el-table-column label="系统内置" align="center" prop="type"> | 48 | <el-table-column label="系统内置" align="center" prop="type"> |
| 49 | - <template slot-scope="scope"> | 49 | + <template v-slot="scope"> |
| 50 | <dict-tag :type="DICT_TYPE.INFRA_CONFIG_TYPE" :value="scope.row.type" /> | 50 | <dict-tag :type="DICT_TYPE.INFRA_CONFIG_TYPE" :value="scope.row.type" /> |
| 51 | </template> | 51 | </template> |
| 52 | </el-table-column> | 52 | </el-table-column> |
| 53 | <el-table-column label="是否可见" align="center" prop="visible"> | 53 | <el-table-column label="是否可见" align="center" prop="visible"> |
| 54 | - <template slot-scope="scope"> | 54 | + <template v-slot="scope"> |
| 55 | <span>{{ scope.row.visible ? '是' : '否' }}</span> | 55 | <span>{{ scope.row.visible ? '是' : '否' }}</span> |
| 56 | </template> | 56 | </template> |
| 57 | </el-table-column> | 57 | </el-table-column> |
| 58 | <el-table-column label="备注" align="center" prop="remark" :show-overflow-tooltip="true" /> | 58 | <el-table-column label="备注" align="center" prop="remark" :show-overflow-tooltip="true" /> |
| 59 | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> | 59 | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> |
| 60 | - <template slot-scope="scope"> | 60 | + <template v-slot="scope"> |
| 61 | <span>{{ parseTime(scope.row.createTime) }}</span> | 61 | <span>{{ parseTime(scope.row.createTime) }}</span> |
| 62 | </template> | 62 | </template> |
| 63 | </el-table-column> | 63 | </el-table-column> |
| 64 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> | 64 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
| 65 | - <template slot-scope="scope"> | 65 | + <template v-slot="scope"> |
| 66 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" | 66 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" |
| 67 | v-hasPermi="['infra:config:update']">修改</el-button> | 67 | v-hasPermi="['infra:config:update']">修改</el-button> |
| 68 | <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" | 68 | <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" |
yudao-ui-admin/src/views/infra/dataSourceConfig/index.vue
| @@ -15,12 +15,12 @@ | @@ -15,12 +15,12 @@ | ||
| 15 | <el-table-column label="数据源连接" align="center" prop="url" /> | 15 | <el-table-column label="数据源连接" align="center" prop="url" /> |
| 16 | <el-table-column label="用户名" align="center" prop="username" /> | 16 | <el-table-column label="用户名" align="center" prop="username" /> |
| 17 | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> | 17 | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> |
| 18 | - <template slot-scope="scope"> | 18 | + <template v-slot="scope"> |
| 19 | <span>{{ parseTime(scope.row.createTime) }}</span> | 19 | <span>{{ parseTime(scope.row.createTime) }}</span> |
| 20 | </template> | 20 | </template> |
| 21 | </el-table-column> | 21 | </el-table-column> |
| 22 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> | 22 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
| 23 | - <template slot-scope="scope"> | 23 | + <template v-slot="scope"> |
| 24 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" | 24 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" |
| 25 | v-hasPermi="['infra:data-source-config:update']">修改</el-button> | 25 | v-hasPermi="['infra:data-source-config:update']">修改</el-button> |
| 26 | <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" | 26 | <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" |
yudao-ui-admin/src/views/infra/file/index.vue
| @@ -32,7 +32,7 @@ | @@ -32,7 +32,7 @@ | ||
| 32 | <el-table-column label="文件大小" align="center" prop="size" min-width="120px" :formatter="sizeFormat"/> | 32 | <el-table-column label="文件大小" align="center" prop="size" min-width="120px" :formatter="sizeFormat"/> |
| 33 | <el-table-column label="文件类型" :show-overflow-tooltip="true" align="center" prop="type" width="180px"/> | 33 | <el-table-column label="文件类型" :show-overflow-tooltip="true" align="center" prop="type" width="180px"/> |
| 34 | <el-table-column label="文件内容" align="center" prop="content" min-width="150px"> | 34 | <el-table-column label="文件内容" align="center" prop="content" min-width="150px"> |
| 35 | - <template slot-scope="scope"> | 35 | + <template v-slot="scope"> |
| 36 | <image-preview v-if="scope.row.type&&scope.row.type.indexOf('image/') === 0" :src="scope.row.url" | 36 | <image-preview v-if="scope.row.type&&scope.row.type.indexOf('image/') === 0" :src="scope.row.url" |
| 37 | :width="'100px'"></image-preview> | 37 | :width="'100px'"></image-preview> |
| 38 | <i v-else>无法预览,点击 | 38 | <i v-else>无法预览,点击 |
| @@ -43,12 +43,12 @@ | @@ -43,12 +43,12 @@ | ||
| 43 | </template> | 43 | </template> |
| 44 | </el-table-column> | 44 | </el-table-column> |
| 45 | <el-table-column label="上传时间" align="center" prop="createTime" min-width="170px"> | 45 | <el-table-column label="上传时间" align="center" prop="createTime" min-width="170px"> |
| 46 | - <template slot-scope="scope"> | 46 | + <template v-slot="scope"> |
| 47 | <span>{{ parseTime(scope.row.createTime) }}</span> | 47 | <span>{{ parseTime(scope.row.createTime) }}</span> |
| 48 | </template> | 48 | </template> |
| 49 | </el-table-column> | 49 | </el-table-column> |
| 50 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width" min-width="100px"> | 50 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width" min-width="100px"> |
| 51 | - <template slot-scope="scope"> | 51 | + <template v-slot="scope"> |
| 52 | <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" | 52 | <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" |
| 53 | v-hasPermi="['infra:file:delete']">删除 | 53 | v-hasPermi="['infra:file:delete']">删除 |
| 54 | </el-button> | 54 | </el-button> |
yudao-ui-admin/src/views/infra/fileConfig/index.vue
| @@ -36,23 +36,23 @@ | @@ -36,23 +36,23 @@ | ||
| 36 | <el-table-column label="编号" align="center" prop="id" /> | 36 | <el-table-column label="编号" align="center" prop="id" /> |
| 37 | <el-table-column label="配置名" align="center" prop="name" /> | 37 | <el-table-column label="配置名" align="center" prop="name" /> |
| 38 | <el-table-column label="存储器" align="center" prop="storage"> | 38 | <el-table-column label="存储器" align="center" prop="storage"> |
| 39 | - <template slot-scope="scope"> | 39 | + <template v-slot="scope"> |
| 40 | <dict-tag :type="DICT_TYPE.INFRA_FILE_STORAGE" :value="scope.row.storage" /> | 40 | <dict-tag :type="DICT_TYPE.INFRA_FILE_STORAGE" :value="scope.row.storage" /> |
| 41 | </template> | 41 | </template> |
| 42 | </el-table-column> | 42 | </el-table-column> |
| 43 | <el-table-column label="备注" align="center" prop="remark" /> | 43 | <el-table-column label="备注" align="center" prop="remark" /> |
| 44 | <el-table-column label="主配置" align="center" prop="primary"> | 44 | <el-table-column label="主配置" align="center" prop="primary"> |
| 45 | - <template slot-scope="scope"> | 45 | + <template v-slot="scope"> |
| 46 | <dict-tag :type="DICT_TYPE.INFRA_BOOLEAN_STRING" :value="scope.row.master" /> | 46 | <dict-tag :type="DICT_TYPE.INFRA_BOOLEAN_STRING" :value="scope.row.master" /> |
| 47 | </template> | 47 | </template> |
| 48 | </el-table-column> | 48 | </el-table-column> |
| 49 | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> | 49 | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> |
| 50 | - <template slot-scope="scope"> | 50 | + <template v-slot="scope"> |
| 51 | <span>{{ parseTime(scope.row.createTime) }}</span> | 51 | <span>{{ parseTime(scope.row.createTime) }}</span> |
| 52 | </template> | 52 | </template> |
| 53 | </el-table-column> | 53 | </el-table-column> |
| 54 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="240"> | 54 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="240"> |
| 55 | - <template slot-scope="scope"> | 55 | + <template v-slot="scope"> |
| 56 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" | 56 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" |
| 57 | v-hasPermi="['infra:file-config:update']">修改</el-button> | 57 | v-hasPermi="['infra:file-config:update']">修改</el-button> |
| 58 | <el-button size="mini" type="text" icon="el-icon-attract" @click="handleMaster(scope.row)" | 58 | <el-button size="mini" type="text" icon="el-icon-attract" @click="handleMaster(scope.row)" |
yudao-ui-admin/src/views/infra/job/index.vue
| @@ -43,7 +43,7 @@ | @@ -43,7 +43,7 @@ | ||
| 43 | <el-table-column label="任务编号" align="center" prop="id" /> | 43 | <el-table-column label="任务编号" align="center" prop="id" /> |
| 44 | <el-table-column label="任务名称" align="center" prop="name" /> | 44 | <el-table-column label="任务名称" align="center" prop="name" /> |
| 45 | <el-table-column label="任务状态" align="center" prop="status"> | 45 | <el-table-column label="任务状态" align="center" prop="status"> |
| 46 | - <template slot-scope="scope"> | 46 | + <template v-slot="scope"> |
| 47 | <dict-tag :type="DICT_TYPE.INFRA_JOB_STATUS" :value="scope.row.status" /> | 47 | <dict-tag :type="DICT_TYPE.INFRA_JOB_STATUS" :value="scope.row.status" /> |
| 48 | </template> | 48 | </template> |
| 49 | </el-table-column>> | 49 | </el-table-column>> |
| @@ -51,7 +51,7 @@ | @@ -51,7 +51,7 @@ | ||
| 51 | <el-table-column label="处理器的参数" align="center" prop="handlerParam" /> | 51 | <el-table-column label="处理器的参数" align="center" prop="handlerParam" /> |
| 52 | <el-table-column label="CRON 表达式" align="center" prop="cronExpression" /> | 52 | <el-table-column label="CRON 表达式" align="center" prop="cronExpression" /> |
| 53 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> | 53 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
| 54 | - <template slot-scope="scope"> | 54 | + <template v-slot="scope"> |
| 55 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" | 55 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" |
| 56 | v-hasPermi="['infra:job:update']">修改</el-button> | 56 | v-hasPermi="['infra:job:update']">修改</el-button> |
| 57 | <el-button size="mini" type="text" icon="el-icon-check" @click="handleChangeStatus(scope.row, true)" | 57 | <el-button size="mini" type="text" icon="el-icon-check" @click="handleChangeStatus(scope.row, true)" |
yudao-ui-admin/src/views/infra/job/log.vue
| @@ -41,22 +41,22 @@ | @@ -41,22 +41,22 @@ | ||
| 41 | <el-table-column label="处理器的参数" align="center" prop="handlerParam" /> | 41 | <el-table-column label="处理器的参数" align="center" prop="handlerParam" /> |
| 42 | <el-table-column label="第几次执行" align="center" prop="executeIndex" /> | 42 | <el-table-column label="第几次执行" align="center" prop="executeIndex" /> |
| 43 | <el-table-column label="执行时间" align="center" width="180"> | 43 | <el-table-column label="执行时间" align="center" width="180"> |
| 44 | - <template slot-scope="scope"> | 44 | + <template v-slot="scope"> |
| 45 | <span>{{ parseTime(scope.row.beginTime) + ' ~ ' + parseTime(scope.row.endTime) }}</span> | 45 | <span>{{ parseTime(scope.row.beginTime) + ' ~ ' + parseTime(scope.row.endTime) }}</span> |
| 46 | </template> | 46 | </template> |
| 47 | </el-table-column> | 47 | </el-table-column> |
| 48 | <el-table-column label="执行时长" align="center" prop="duration"> | 48 | <el-table-column label="执行时长" align="center" prop="duration"> |
| 49 | - <template slot-scope="scope"> | 49 | + <template v-slot="scope"> |
| 50 | <span>{{ scope.row.duration + ' 毫秒' }}</span> | 50 | <span>{{ scope.row.duration + ' 毫秒' }}</span> |
| 51 | </template> | 51 | </template> |
| 52 | </el-table-column> | 52 | </el-table-column> |
| 53 | <el-table-column label="任务状态" align="center" prop="status"> | 53 | <el-table-column label="任务状态" align="center" prop="status"> |
| 54 | - <template slot-scope="scope"> | 54 | + <template v-slot="scope"> |
| 55 | <dict-tag :type="DICT_TYPE.INFRA_JOB_LOG_STATUS" :value="scope.row.status" /> | 55 | <dict-tag :type="DICT_TYPE.INFRA_JOB_LOG_STATUS" :value="scope.row.status" /> |
| 56 | </template> | 56 | </template> |
| 57 | </el-table-column> | 57 | </el-table-column> |
| 58 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> | 58 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
| 59 | - <template slot-scope="scope"> | 59 | + <template v-slot="scope"> |
| 60 | <el-button size="mini" type="text" icon="el-icon-view" @click="handleView(scope.row)" :loading="exportLoading" | 60 | <el-button size="mini" type="text" icon="el-icon-view" @click="handleView(scope.row)" :loading="exportLoading" |
| 61 | v-hasPermi="['infra:job:query']">详细</el-button> | 61 | v-hasPermi="['infra:job:query']">详细</el-button> |
| 62 | </template> | 62 | </template> |
yudao-ui-admin/src/views/infra/redis/index.vue
| @@ -13,7 +13,7 @@ | @@ -13,7 +13,7 @@ | ||
| 13 | <td><div class="cell">Redis版本</div></td> | 13 | <td><div class="cell">Redis版本</div></td> |
| 14 | <td><div class="cell" v-if="cache.info">{{ cache.info.redis_version }}</div></td> | 14 | <td><div class="cell" v-if="cache.info">{{ cache.info.redis_version }}</div></td> |
| 15 | <td><div class="cell">运行模式</div></td> | 15 | <td><div class="cell">运行模式</div></td> |
| 16 | - <td><div class="cell" v-if="cache.info">{{ cache.info.redis_mode == "standalone" ? "单机" : "集群" }}</div></td> | 16 | + <td><div class="cell" v-if="cache.info">{{ cache.info.redis_mode === "standalone" ? "单机" : "集群" }}</div></td> |
| 17 | <td><div class="cell">端口</div></td> | 17 | <td><div class="cell">端口</div></td> |
| 18 | <td><div class="cell" v-if="cache.info">{{ cache.info.tcp_port }}</div></td> | 18 | <td><div class="cell" v-if="cache.info">{{ cache.info.tcp_port }}</div></td> |
| 19 | <td><div class="cell">客户端数</div></td> | 19 | <td><div class="cell">客户端数</div></td> |
| @@ -71,7 +71,7 @@ | @@ -71,7 +71,7 @@ | ||
| 71 | <el-table-column prop="keyType" label="Key 类型" width="100" /> | 71 | <el-table-column prop="keyType" label="Key 类型" width="100" /> |
| 72 | <el-table-column prop="valueType" label="Value 类型" /> | 72 | <el-table-column prop="valueType" label="Value 类型" /> |
| 73 | <el-table-column prop="timeoutType" label="超时时间" width="200"> | 73 | <el-table-column prop="timeoutType" label="超时时间" width="200"> |
| 74 | - <template slot-scope="scope"> | 74 | + <template v-slot="scope"> |
| 75 | <dict-tag | 75 | <dict-tag |
| 76 | :type="DICT_TYPE.INFRA_REDIS_TIMEOUT_TYPE" | 76 | :type="DICT_TYPE.INFRA_REDIS_TIMEOUT_TYPE" |
| 77 | :value="scope.row.timeoutType" | 77 | :value="scope.row.timeoutType" |
| @@ -95,10 +95,10 @@ | @@ -95,10 +95,10 @@ | ||
| 95 | </div> | 95 | </div> |
| 96 | <el-table :data="cacheKeys" style="width: 100%" @row-click="handleKeyValue"> | 96 | <el-table :data="cacheKeys" style="width: 100%" @row-click="handleKeyValue"> |
| 97 | <el-table-column label="缓存键名" align="center" :show-overflow-tooltip="true"> | 97 | <el-table-column label="缓存键名" align="center" :show-overflow-tooltip="true"> |
| 98 | - <template slot-scope="scope">{{ scope.row }}</template> | 98 | + <template v-slot="scope">{{ scope.row }}</template> |
| 99 | </el-table-column> | 99 | </el-table-column> |
| 100 | <el-table-column label="操作" width="60" align="center" class-name="small-padding fixed-width"> | 100 | <el-table-column label="操作" width="60" align="center" class-name="small-padding fixed-width"> |
| 101 | - <template slot-scope="scope"> | 101 | + <template v-slot="scope"> |
| 102 | <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDeleteKey(scope.row)" /> | 102 | <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDeleteKey(scope.row)" /> |
| 103 | </template> | 103 | </template> |
| 104 | </el-table-column> | 104 | </el-table-column> |
yudao-ui-admin/src/views/infra/testDemo/index.vue
| @@ -54,12 +54,12 @@ | @@ -54,12 +54,12 @@ | ||
| 54 | <el-table-column label="分类" align="center" prop="category" /> | 54 | <el-table-column label="分类" align="center" prop="category" /> |
| 55 | <el-table-column label="备注" align="center" prop="remark" /> | 55 | <el-table-column label="备注" align="center" prop="remark" /> |
| 56 | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> | 56 | <el-table-column label="创建时间" align="center" prop="createTime" width="180"> |
| 57 | - <template slot-scope="scope"> | 57 | + <template v-slot="scope"> |
| 58 | <span>{{ parseTime(scope.row.createTime) }}</span> | 58 | <span>{{ parseTime(scope.row.createTime) }}</span> |
| 59 | </template> | 59 | </template> |
| 60 | </el-table-column> | 60 | </el-table-column> |
| 61 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> | 61 | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
| 62 | - <template slot-scope="scope"> | 62 | + <template v-slot="scope"> |
| 63 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" | 63 | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)" |
| 64 | v-hasPermi="['infra:test-demo:update']">修改</el-button> | 64 | v-hasPermi="['infra:test-demo:update']">修改</el-button> |
| 65 | <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" | 65 | <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" |