Skip to content

Commit 5e440a7

Browse files
JavaLionLigitee-org
authored andcommitted
!173 发布 5.3.0-BETA 公测版本
Merge pull request !173 from 疯狂的狮子Li/dev
2 parents 9a02598 + 3280baf commit 5e440a7

File tree

152 files changed

+2925
-9289
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

152 files changed

+2925
-9289
lines changed

.env.development

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ VITE_APP_BASE_API = '/dev-api'
1111
VITE_APP_CONTEXT_PATH = '/'
1212

1313
# 监控地址
14-
VITE_APP_MONITOR_ADMIN = 'http://localhost:9090/admin/applications'
14+
VITE_APP_MONITOR_ADMIN = 'http://localhost:9090/applications'
1515

1616
# SnailJob 控制台地址
1717
VITE_APP_SNAILJOB_ADMIN = 'http://localhost:8800/snail-job'

.eslintignore

Lines changed: 0 additions & 17 deletions
This file was deleted.

.eslintrc.cjs

Lines changed: 0 additions & 51 deletions
This file was deleted.

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
- 本仓库为前端技术栈 [Vue3](https://v3.cn.vuejs.org) + [TS](https://www.typescriptlang.org/) + [Element Plus](https://element-plus.org/zh-CN) + [Vite](https://cn.vitejs.dev) 版本。
44
- 成员项目: 基于 vben(ant-design-vue) 的前端项目 [ruoyi-plus-vben](https://gitee.com/dapppp/ruoyi-plus-vben)
5+
- 成员项目: 基于 vben5(ant-design-vue) 的前端项目 [ruoyi-plus-vben5](https://gitee.com/dapppp/ruoyi-plus-vben5)
56
- 配套后端代码仓库地址
67
- [RuoYi-Vue-Plus 5.X(注意版本号)](https://gitee.com/dromara/RuoYi-Vue-Plus)
78
- [RuoYi-Cloud-Plus 2.X(注意版本号)](https://gitee.com/dromara/RuoYi-Cloud-Plus)

eslint.config.js

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
import globals from 'globals';
2+
import pluginJs from '@eslint/js';
3+
import tseslint from 'typescript-eslint';
4+
import pluginVue from 'eslint-plugin-vue';
5+
import { readFile } from 'node:fs/promises';
6+
import prettier from 'eslint-plugin-prettier';
7+
8+
/**
9+
* https://blog.csdn.net/sayUonly/article/details/123482912
10+
* 自动导入的配置
11+
*/
12+
const autoImportFile = new URL('./.eslintrc-auto-import.json', import.meta.url);
13+
const autoImportGlobals = JSON.parse(await readFile(autoImportFile, 'utf8'));
14+
15+
/** @type {import('eslint').Linter.Config[]} */
16+
export default [
17+
{
18+
/**
19+
* 不需要.eslintignore文件 而是在这里配置
20+
*/
21+
ignores: [
22+
'*.sh',
23+
'node_modules',
24+
'*.md',
25+
'*.woff',
26+
'*.ttf',
27+
'.vscode',
28+
'.idea',
29+
'dist',
30+
'/public',
31+
'/docs',
32+
'.husky',
33+
'.local',
34+
'/bin',
35+
'.eslintrc.cjs',
36+
'prettier.config.js',
37+
'src/assets',
38+
'tailwind.config.js'
39+
]
40+
},
41+
{ files: ['**/*.{js,mjs,cjs,ts,vue}'] },
42+
{
43+
languageOptions: {
44+
globals: globals.browser
45+
}
46+
},
47+
pluginJs.configs.recommended,
48+
...tseslint.configs.recommended,
49+
...pluginVue.configs['flat/essential'],
50+
{
51+
files: ['**/*.vue'],
52+
languageOptions: {
53+
parserOptions: {
54+
parser: tseslint.parser
55+
}
56+
}
57+
},
58+
{
59+
languageOptions: {
60+
globals: {
61+
// 自动导入的配置 undef
62+
...autoImportGlobals.globals,
63+
DialogOption: 'readonly',
64+
LayoutSetting: 'readonly'
65+
}
66+
},
67+
plugins: { prettier },
68+
rules: {
69+
'@typescript-eslint/no-empty-function': 'off',
70+
'@typescript-eslint/no-explicit-any': 'off',
71+
'@typescript-eslint/no-unused-vars': 'off',
72+
'@typescript-eslint/no-this-alias': 'off',
73+
74+
// vue
75+
'vue/multi-word-component-names': 'off',
76+
'vue/valid-define-props': 'off',
77+
'vue/no-v-model-argument': 'off',
78+
'prefer-rest-params': 'off',
79+
// prettier
80+
'prettier/prettier': 'error',
81+
// 允许使用空Object类型 {}
82+
'@typescript-eslint/no-empty-object-type': 'off',
83+
'@typescript-eslint/no-unused-expressions': 'off'
84+
}
85+
}
86+
];

package.json

Lines changed: 27 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
{
2+
"$schema": "https://json.schemastore.org/tsconfig",
23
"name": "ruoyi-vue-plus",
3-
"version": "5.2.3",
4+
"version": "5.3.0-BETA",
45
"description": "RuoYi-Vue-Plus多租户管理系统",
56
"author": "LionLi",
67
"license": "MIT",
@@ -10,7 +11,8 @@
1011
"build:prod": "vite build --mode production",
1112
"build:dev": "vite build --mode development",
1213
"preview": "vite preview",
13-
"lint:eslint": "eslint --fix --ext .ts,.js,.vue ./src ",
14+
"lint:eslint": "eslint",
15+
"lint:eslint:fix": "eslint --fix",
1416
"prettier": "prettier --write ."
1517
},
1618
"repository": {
@@ -21,71 +23,65 @@
2123
"@element-plus/icons-vue": "2.3.1",
2224
"@highlightjs/vue-plugin": "2.1.0",
2325
"@vueup/vue-quill": "1.2.0",
24-
"@vueuse/core": "10.9.0",
26+
"@vueuse/core": "11.3.0",
2527
"animate.css": "4.1.1",
2628
"await-to-js": "3.0.0",
27-
"axios": "1.6.8",
28-
"bpmn-js": "16.4.0",
29+
"axios": "1.7.8",
2930
"crypto-js": "4.2.0",
3031
"diagram-js": "12.3.0",
3132
"didi": "9.0.2",
3233
"echarts": "5.5.0",
33-
"element-plus": "2.7.8",
34+
"element-plus": "2.8.8",
3435
"file-saver": "2.0.5",
3536
"fuse.js": "7.0.0",
3637
"highlight.js": "11.9.0",
37-
"image-conversion": "^2.1.1",
38+
"image-conversion": "2.1.1",
3839
"js-cookie": "3.0.5",
3940
"jsencrypt": "3.3.2",
4041
"nprogress": "0.2.0",
41-
"pinia": "2.1.7",
42+
"pinia": "2.2.6",
4243
"screenfull": "6.0.2",
43-
"vue": "3.4.34",
44+
"vue": "3.5.13",
4445
"vue-cropper": "1.1.1",
45-
"vue-i18n": "9.10.2",
46-
"vue-router": "4.3.2",
47-
"vue-types": "5.1.1",
46+
"vue-i18n": "10.0.5",
47+
"vue-json-pretty": "2.4.0",
48+
"vue-router": "4.4.5",
49+
"vue-types": "5.1.3",
4850
"vxe-table": "4.5.22"
4951
},
5052
"devDependencies": {
51-
"@iconify/json": "2.2.201",
52-
"@intlify/unplugin-vue-i18n": "3.0.1",
53+
"@eslint/js": "9.15.0",
54+
"@iconify/json": "2.2.276",
5355
"@types/crypto-js": "4.2.2",
5456
"@types/file-saver": "2.0.7",
5557
"@types/js-cookie": "3.0.6",
5658
"@types/node": "18.18.2",
5759
"@types/nprogress": "0.2.3",
58-
"@typescript-eslint/eslint-plugin": "7.3.1",
59-
"@typescript-eslint/parser": "7.3.1",
60-
"@unocss/preset-attributify": "0.58.6",
61-
"@unocss/preset-icons": "0.58.6",
62-
"@unocss/preset-uno": "0.58.6",
60+
"@unocss/preset-attributify": "0.64.1",
61+
"@unocss/preset-icons": "0.64.1",
62+
"@unocss/preset-uno": "0.64.1",
6363
"@vitejs/plugin-vue": "5.0.4",
6464
"@vue/compiler-sfc": "3.4.23",
6565
"autoprefixer": "10.4.18",
66-
"eslint": "8.57.0",
67-
"eslint-config-prettier": "9.1.0",
68-
"eslint-define-config": "2.1.0",
69-
"eslint-plugin-prettier": "5.1.3",
70-
"eslint-plugin-promise": "6.1.1",
71-
"eslint-plugin-node": "11.1.0",
72-
"eslint-plugin-import": "2.29.1",
73-
"eslint-plugin-vue": "9.23.0",
66+
"eslint": "9.15.0",
67+
"eslint-plugin-prettier": "^5.2.1",
68+
"eslint-plugin-vue": "9.31.0",
7469
"fast-glob": "3.3.2",
70+
"globals": "15.12.0",
7571
"postcss": "8.4.36",
7672
"prettier": "3.2.5",
7773
"sass": "1.72.0",
78-
"typescript": "5.4.5",
79-
"unocss": "0.58.6",
74+
"typescript": "5.7.2",
75+
"typescript-eslint": "8.16.0",
76+
"unocss": "0.64.1",
8077
"unplugin-auto-import": "0.17.5",
8178
"unplugin-icons": "0.18.5",
8279
"unplugin-vue-components": "0.26.0",
8380
"unplugin-vue-setup-extend-plus": "1.0.1",
84-
"vite": "5.2.12",
81+
"vite": "5.4.11",
8582
"vite-plugin-compression": "0.5.1",
8683
"vite-plugin-svg-icons": "2.0.1",
8784
"vitest": "1.5.0",
88-
"vue-eslint-parser": "9.4.2",
8985
"vue-tsc": "2.0.13"
9086
}
9187
}

src/api/login.ts

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -51,10 +51,12 @@ export function register(data: any) {
5151
* 注销
5252
*/
5353
export function logout() {
54-
request({
55-
url: '/resource/sse/close',
56-
method: 'get'
57-
});
54+
if (import.meta.env.VITE_APP_SSE === 'true') {
55+
request({
56+
url: '/resource/sse/close',
57+
method: 'get'
58+
});
59+
}
5860
return request({
5961
url: '/auth/logout',
6062
method: 'post'
@@ -100,11 +102,11 @@ export function getInfo(): AxiosPromise<UserInfo> {
100102
}
101103

102104
// 获取租户列表
103-
export function getTenantList(): AxiosPromise<TenantInfo> {
105+
export function getTenantList(isToken: boolean): AxiosPromise<TenantInfo> {
104106
return request({
105107
url: '/auth/tenant/list',
106108
headers: {
107-
isToken: false
109+
isToken: isToken
108110
},
109111
method: 'get'
110112
});

src/api/monitor/online/index.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ export function getOnline() {
3030
// 删除当前在线设备
3131
export function delOnline(tokenId: string) {
3232
return request({
33-
url: '/monitor/online/' + tokenId,
34-
method: 'post'
33+
url: '/monitor/online/myself/' + tokenId,
34+
method: 'delete'
3535
});
3636
}

src/api/system/dept/index.ts

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import request from '@/utils/request';
22
import { AxiosPromise } from 'axios';
3-
import { DeptForm, DeptQuery, DeptVO } from './types';
3+
import {DeptForm, DeptQuery, DeptTreeVO, DeptVO} from './types';
44

55
// 查询部门列表
66
export const listDept = (query?: DeptQuery) => {
@@ -11,6 +11,17 @@ export const listDept = (query?: DeptQuery) => {
1111
});
1212
};
1313

14+
/**
15+
* 通过deptIds查询部门
16+
* @param deptIds
17+
*/
18+
export const optionSelect = (deptIds: (number | string)[]): AxiosPromise<DeptVO[]> => {
19+
return request({
20+
url: '/system/dept/optionselect?deptIds=' + deptIds,
21+
method: 'get'
22+
});
23+
};
24+
1425
// 查询部门列表(排除节点)
1526
export const listDeptExcludeChild = (deptId: string | number): AxiosPromise<DeptVO[]> => {
1627
return request({
@@ -28,7 +39,7 @@ export const getDept = (deptId: string | number): AxiosPromise<DeptVO> => {
2839
};
2940

3041
// 查询部门下拉树结构
31-
export const treeselect = (): AxiosPromise<DeptVO[]> => {
42+
export const treeselect = (): AxiosPromise<DeptTreeVO[]> => {
3243
return request({
3344
url: '/system/dept/treeselect',
3445
method: 'get'

src/api/system/dept/types.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,18 @@ export interface DeptVO extends BaseEntity {
2828
menuId: string | number;
2929
}
3030

31+
/**
32+
* 部门类型
33+
*/
34+
export interface DeptTreeVO extends BaseEntity {
35+
id: number | string;
36+
label: string;
37+
parentId: number | string;
38+
weight: number;
39+
children: DeptTreeVO[];
40+
disabled: boolean;
41+
}
42+
3143
/**
3244
* 部门表单类型
3345
*/

0 commit comments

Comments
 (0)