From 34b929d352514573297bb9a6d4e2fa726744aa47 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?=
<15040126243@163.com>
Date: 2024年8月26日 17:56:35 +0800
Subject: [PATCH 01/13] =?UTF-8?q?add=20=E5=A2=9E=E5=8A=A0=20=E5=90=8C?=
=?UTF-8?q?=E6=AD=A5=E7=A7=9F=E6=88=B7=E5=AD=97=E5=85=B8=E5=8A=9F=E8=83=BD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/api/system/tenant/index.ts | 8 ++++++++
src/views/system/dict/index.vue | 13 +++++++++++++
2 files changed, 21 insertions(+)
diff --git a/src/api/system/tenant/index.ts b/src/api/system/tenant/index.ts
index 4380dbe1..7b7b93f0 100644
--- a/src/api/system/tenant/index.ts
+++ b/src/api/system/tenant/index.ts
@@ -91,3 +91,11 @@ export function syncTenantPackage(tenantId: string | number, packageId: string |
params: data
});
}
+
+// 同步租户字典
+export function syncTenantDict() {
+ return request({
+ url: '/system/tenant/syncTenantDict',
+ method: 'get',
+ });
+}
diff --git a/src/views/system/dict/index.vue b/src/views/system/dict/index.vue
index d44a04af..4ad70d09 100644
--- a/src/views/system/dict/index.vue
+++ b/src/views/system/dict/index.vue
@@ -49,6 +49,9 @@
刷新缓存
+
+ 同步租户字典
+
@@ -109,11 +112,15 @@
setup name="Dict" lang="ts">
import useDictStore from '@/store/modules/dict';
+import useUserStore from "@/store/modules/user";
import { listType, getType, delType, addType, updateType, refreshCache } from '@/api/system/dict/type';
import { DictTypeForm, DictTypeQuery, DictTypeVO } from '@/api/system/dict/type/types';
+import { syncTenantDict } from "@/api/system/tenant";
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
+const userStore = useUserStore();
+const userId = ref(userStore.userId);
const typeList = ref([]);
const loading = ref(true);
const showSearch = ref(true);
@@ -239,6 +246,12 @@ const handleRefreshCache = async () => {
proxy?.$modal.msgSuccess('刷新成功');
useDictStore().cleanDict();
};
+/**同步租户字典*/
+const handleSyncTenantDict = async () => {
+ await proxy?.$modal.confirm('确认要同步所有租户字典吗?');
+ let res = await syncTenantDict();
+ proxy?.$modal.msgSuccess(res.msg);
+};
onMounted(() => {
getList();
--
Gitee
From e1860a30fc27d95637220a87f3befd4aae19e7ca Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?=
<15040126243@163.com>
Date: 2024年8月26日 12:29:29 +0000
Subject: [PATCH 02/13] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E7=A7=9F?=
=?UTF-8?q?=E6=88=B7=E5=A5=97=E9=A4=90=E5=AF=BC=E5=87=BA=E8=B7=AF=E5=BE=84?=
=?UTF-8?q?=E7=BC=96=E5=86=99=E9=94=99=E8=AF=AF?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: 疯狂的狮子Li <15040126243@163.com>
---
src/views/system/tenantPackage/index.vue | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/views/system/tenantPackage/index.vue b/src/views/system/tenantPackage/index.vue
index 30c94557..05a0b414 100644
--- a/src/views/system/tenantPackage/index.vue
+++ b/src/views/system/tenantPackage/index.vue
@@ -321,7 +321,7 @@ const handleDelete = async (row?: TenantPkgVO) => {
/** 导出按钮操作 */
const handleExport = () => {
proxy?.download(
- 'system/package/export',
+ 'system/tenant/package/export',
{
...queryParams.value
},
--
Gitee
From 9f13c29cd7c196203f25e2681a8fe2e4b912a76b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?=
<15040126243@163.com>
Date: Wed, 4 Sep 2024 16:16:35 +0800
Subject: [PATCH 03/13] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81=E7=94=9F=E6=88=90=E8=8F=9C=E5=8D=95id=E5=8C=B9?=
=?UTF-8?q?=E9=85=8D=E5=86=99=E6=B3=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/views/tool/gen/genInfoForm.vue | 1 -
1 file changed, 1 deletion(-)
diff --git a/src/views/tool/gen/genInfoForm.vue b/src/views/tool/gen/genInfoForm.vue
index 0ee9f1df..05b728b8 100644
--- a/src/views/tool/gen/genInfoForm.vue
+++ b/src/views/tool/gen/genInfoForm.vue
@@ -274,7 +274,6 @@ const setSubTableColumns = (value: string) => {
/** 查询菜单下拉树结构 */
const getMenuTreeselect = async () => {
const res = await listMenu();
- res.data.forEach((m) => (m.menuId = m.menuId.toString()));
const data = proxy?.handleTree(res.data, 'menuId');
if (data) {
--
Gitee
From 25848ea99e788b568be5f115a8abf27149d5a6e1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?=
<15040126243@163.com>
Date: Fri, 6 Sep 2024 17:58:28 +0800
Subject: [PATCH 04/13] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E9=87=8D?=
=?UTF-8?q?=E6=96=B0=E7=99=BB=E5=BD=95=E6=97=A0=E6=B3=95=E8=B7=B3=E8=BD=AC?=
=?UTF-8?q?=E5=88=B0=E8=BF=87=E6=9C=9F=E5=89=8D=E9=A1=B5=E9=9D=A2=E9=97=AE?=
=?UTF-8?q?=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/utils/request.ts | 10 ++++++++--
src/views/login.vue | 4 ++--
2 files changed, 10 insertions(+), 4 deletions(-)
diff --git a/src/utils/request.ts b/src/utils/request.ts
index f2a69f0f..f8f1f53d 100644
--- a/src/utils/request.ts
+++ b/src/utils/request.ts
@@ -10,6 +10,7 @@ import FileSaver from 'file-saver';
import { getLanguage } from '@/lang';
import { encryptBase64, encryptWithAes, generateAesKey, decryptWithAes, decryptBase64 } from '@/utils/crypto';
import { encrypt, decrypt } from '@/utils/jsencrypt';
+import router from "@/router";
const encryptHeader = 'encrypt-key';
let downloadLoadingInstance: LoadingInstance;
@@ -134,8 +135,13 @@ service.interceptors.response.use(
}).then(() => {
isRelogin.show = false;
useUserStore().logout().then(() => {
- location.href = import.meta.env.VITE_APP_CONTEXT_PATH + 'index';
- });
+ router.replace({
+ path: '/login',
+ query: {
+ redirect: encodeURIComponent(router.currentRoute.value.fullPath || '/')
+ }
+ })
+ });
}).catch(() => {
isRelogin.show = false;
});
diff --git a/src/views/login.vue b/src/views/login.vue
index ca2903f0..36e3dec6 100644
--- a/src/views/login.vue
+++ b/src/views/login.vue
@@ -97,7 +97,7 @@ const tenantEnabled = ref(true);
// 注册开关
const register = ref(false);
-const redirect = ref(undefined);
+const redirect = ref('');
const loginRef = ref();
// 租户列表
const tenantList = ref([]);
@@ -105,7 +105,7 @@ const tenantList = ref([]);
watch(
() => router.currentRoute.value,
(newRoute: any) => {
- redirect.value = newRoute.query && newRoute.query.redirect;
+ redirect.value = newRoute.query && decodeURIComponent(newRoute.query.redirect);
},
{ immediate: true }
);
--
Gitee
From 483af137419fdbccc7a74a74c082e7972886a8b1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?=
<15040126243@163.com>
Date: Fri, 6 Sep 2024 18:06:16 +0800
Subject: [PATCH 05/13] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E9=87=8D?=
=?UTF-8?q?=E6=96=B0=E7=99=BB=E5=BD=95=E6=97=A0=E6=B3=95=E8=B7=B3=E8=BD=AC?=
=?UTF-8?q?=E5=88=B0=E8=BF=87=E6=9C=9F=E5=89=8D=E9=A1=B5=E9=9D=A2=E9=97=AE?=
=?UTF-8?q?=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/views/login.vue | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/views/login.vue b/src/views/login.vue
index 36e3dec6..db1fca61 100644
--- a/src/views/login.vue
+++ b/src/views/login.vue
@@ -97,7 +97,7 @@ const tenantEnabled = ref(true);
// 注册开关
const register = ref(false);
-const redirect = ref('');
+const redirect = ref('/');
const loginRef = ref();
// 租户列表
const tenantList = ref([]);
--
Gitee
From 9726df3966d67dd02b3bc6c5d50f1230c21a6e74 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?=
<15040126243@163.com>
Date: 2024年9月18日 09:42:24 +0800
Subject: [PATCH 06/13] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E7=99=BB?=
=?UTF-8?q?=E5=BD=95=E6=97=A5=E5=BF=97excel=E5=AF=BC=E5=87=BA=E5=90=8D?=
=?UTF-8?q?=E7=A7=B0=E9=94=99=E8=AF=AF?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/views/monitor/logininfor/index.vue | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/views/monitor/logininfor/index.vue b/src/views/monitor/logininfor/index.vue
index 03d0d8f5..4cc890df 100644
--- a/src/views/monitor/logininfor/index.vue
+++ b/src/views/monitor/logininfor/index.vue
@@ -198,7 +198,7 @@ const handleExport = () => {
{
...queryParams.value
},
- `config_${new Date().getTime()}.xlsx`
+ `logininfor_${new Date().getTime()}.xlsx`
);
};
--
Gitee
From 364dfb969de09b97c4629e1c46b9ed9c2352da1c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?=
<15040126243@163.com>
Date: Mon, 7 Oct 2024 10:45:25 +0800
Subject: [PATCH 07/13] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/layout/index.vue | 2 +-
src/utils/sse.ts | 10 +++-------
2 files changed, 4 insertions(+), 8 deletions(-)
diff --git a/src/layout/index.vue b/src/layout/index.vue
index 0919aad7..ce47a302 100644
--- a/src/layout/index.vue
+++ b/src/layout/index.vue
@@ -73,7 +73,7 @@ onMounted(() => {
});
onMounted(() => {
- initSSE(import.meta.env.VITE_APP_BASE_API + '/resource/sse')
+ initSSE(import.meta.env.VITE_APP_BASE_API + '/resource/sse');
});
const handleClickOutside = () => {
diff --git a/src/utils/sse.ts b/src/utils/sse.ts
index a08f282a..0f74d0e5 100644
--- a/src/utils/sse.ts
+++ b/src/utils/sse.ts
@@ -2,8 +2,6 @@ import { getToken } from '@/utils/auth';
import { ElNotification } from 'element-plus';
import useNoticeStore from '@/store/modules/notice';
-let message = '';
-
// 初始化
export const initSSE = (url: any) => {
url = url + '?Authorization=Bearer ' + getToken() + '&clientid=' + import.meta.env.VITE_APP_CLIENT_ID
@@ -15,13 +13,13 @@ export const initSSE = (url: any) => {
retries: 10,
delay: 3000,
onFailed() {
- console.log('Failed to connect after 10 retries')
- },
+ console.log('Failed to connect after 10 retries');
+ }
}
});
watch(error, () => {
- console.log('SSE connection error:', error.value)
+ console.log('SSE connection error:', error.value);
error.value = null;
});
@@ -41,5 +39,3 @@ export const initSSE = (url: any) => {
data.value = null;
});
};
-
-
--
Gitee
From 4918552492723d00a846ce2d552cf8888c5a5f32 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?=
<15040126243@163.com>
Date: 2024年10月12日 10:58:23 +0800
Subject: [PATCH 08/13] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20=E8=AF=B7?=
=?UTF-8?q?=E5=81=87=E6=97=A5=E6=9C=9F=E9=80=89=E6=8B=A9=E6=A0=BC=E5=BC=8F?=
=?UTF-8?q?=E4=B8=8D=E5=AF=B9=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/views/workflow/leave/leaveEdit.vue | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/views/workflow/leave/leaveEdit.vue b/src/views/workflow/leave/leaveEdit.vue
index a4ed9469..dd0ce7c5 100644
--- a/src/views/workflow/leave/leaveEdit.vue
+++ b/src/views/workflow/leave/leaveEdit.vue
@@ -23,10 +23,12 @@
--
Gitee
From 1644070e97af5df11a9cc655a93f4e3e778ae879 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E9=99=88=E8=A5=BF=E7=93=9Ci?= <5785714@qq.com>
Date: 2024年10月14日 20:33:16 +0800
Subject: [PATCH 09/13] =?UTF-8?q?add=20SSE=E5=BC=80=E5=85=B3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.env.development | 1 +
.env.production | 1 +
src/utils/sse.ts | 4 ++++
3 files changed, 6 insertions(+)
diff --git a/.env.development b/.env.development
index 05d67782..e94d5fa5 100644
--- a/.env.development
+++ b/.env.development
@@ -30,3 +30,4 @@ VITE_APP_CLIENT_ID = 'e5cd7e4891bf95d1d19206ce24a7b32e'
# websocket 开关 默认使用sse推送
VITE_APP_WEBSOCKET = false
+VITE_APP_SSE = true
diff --git a/.env.production b/.env.production
index c6b1f853..0b487f67 100644
--- a/.env.production
+++ b/.env.production
@@ -33,3 +33,4 @@ VITE_APP_CLIENT_ID = 'e5cd7e4891bf95d1d19206ce24a7b32e'
# websocket 开关 默认使用sse推送
VITE_APP_WEBSOCKET = false
+VITE_APP_SSE = true
diff --git a/src/utils/sse.ts b/src/utils/sse.ts
index 0f74d0e5..9174f0d5 100644
--- a/src/utils/sse.ts
+++ b/src/utils/sse.ts
@@ -4,6 +4,10 @@ import useNoticeStore from '@/store/modules/notice';
// 初始化
export const initSSE = (url: any) => {
+ if (import.meta.env.VITE_APP_SSE === 'false') {
+ return;
+ }
+
url = url + '?Authorization=Bearer ' + getToken() + '&clientid=' + import.meta.env.VITE_APP_CLIENT_ID
const {
data,
--
Gitee
From f0895e941958ec32181af266cdb13440849ddb45 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E9=99=88=E8=A5=BF=E7=93=9Ci?= <5785714@qq.com>
Date: 2024年10月14日 20:50:20 +0800
Subject: [PATCH 10/13] =?UTF-8?q?add=20=E5=A2=9E=E5=8A=A0=E6=B3=A8?=
=?UTF-8?q?=E8=A7=A3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.env.development | 2 ++
.env.production | 2 ++
2 files changed, 4 insertions(+)
diff --git a/.env.development b/.env.development
index e94d5fa5..14e13358 100644
--- a/.env.development
+++ b/.env.development
@@ -30,4 +30,6 @@ VITE_APP_CLIENT_ID = 'e5cd7e4891bf95d1d19206ce24a7b32e'
# websocket 开关 默认使用sse推送
VITE_APP_WEBSOCKET = false
+
+# sse 开关
VITE_APP_SSE = true
diff --git a/.env.production b/.env.production
index 0b487f67..1109bc61 100644
--- a/.env.production
+++ b/.env.production
@@ -33,4 +33,6 @@ VITE_APP_CLIENT_ID = 'e5cd7e4891bf95d1d19206ce24a7b32e'
# websocket 开关 默认使用sse推送
VITE_APP_WEBSOCKET = false
+
+# sse 开关
VITE_APP_SSE = true
--
Gitee
From a62a3de23c6b331e957a7d1f19b372c389caf141 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?=
<15040126243@163.com>
Date: 2024年10月15日 13:49:32 +0800
Subject: [PATCH 11/13] =?UTF-8?q?fix=20=E4=BF=AE=E5=A4=8D=20pr!150=20sse?=
=?UTF-8?q?=E5=BC=80=E5=85=B3=E7=BC=BA=E5=B0=91=E5=8F=98=E9=87=8F=E9=97=AE?=
=?UTF-8?q?=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/types/env.d.ts | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/types/env.d.ts b/src/types/env.d.ts
index 777c8584..1fb9f62e 100644
--- a/src/types/env.d.ts
+++ b/src/types/env.d.ts
@@ -19,6 +19,7 @@ interface ImportMetaEnv {
VITE_APP_RSA_PRIVATE_KEY: string;
VITE_APP_CLIENT_ID: string;
VITE_APP_WEBSOCKET: string;
+ VITE_APP_SSE: string;
}
interface ImportMeta {
readonly env: ImportMetaEnv;
--
Gitee
From 6f4891d677aa15e85263a5d274d436b2add51beb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?=
<15040126243@163.com>
Date: 2024年10月17日 18:15:18 +0800
Subject: [PATCH 12/13] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E6=B5=81?=
=?UTF-8?q?=E7=A8=8B=E6=8F=90=E4=BA=A4=E7=94=A8=E6=88=B7id=E4=BD=BF?=
=?UTF-8?q?=E7=94=A8=E5=AD=97=E7=AC=A6=E4=B8=B2=E6=8F=90=E4=BA=A4=E9=81=BF?=
=?UTF-8?q?=E5=85=8D=E9=9B=AA=E8=8A=B1id=E5=A4=B1=E7=9C=9F=E9=97=AE?=
=?UTF-8?q?=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/views/workflow/leave/leaveEdit.vue | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/views/workflow/leave/leaveEdit.vue b/src/views/workflow/leave/leaveEdit.vue
index dd0ce7c5..55556fde 100644
--- a/src/views/workflow/leave/leaveEdit.vue
+++ b/src/views/workflow/leave/leaveEdit.vue
@@ -192,8 +192,8 @@ const handleStartWorkFlow = async (data: LeaveVO) => {
taskVariables.value = {
entity: data,
leaveDays: data.leaveDays,
- userList: [1, 3],
- userList2: [1, 3]
+ userList: ["1", "3"],
+ userList2: ["1", "3"]
};
submitFormData.value.variables = taskVariables.value;
const resp = await startWorkFlow(submitFormData.value);
--
Gitee
From 28a81f2e44c66003d1ac57387b0ee6074baf93af Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?=
<15040126243@163.com>
Date: 2024年10月25日 11:04:05 +0800
Subject: [PATCH 13/13] =?UTF-8?q?=F0=9F=8E=80=E5=8F=91=E5=B8=83=20vue=20?=
=?UTF-8?q?=E7=89=88=E6=9C=AC=205.2.3=20=E4=B8=8E=20cloud=20=E7=89=88?=
=?UTF-8?q?=E6=9C=AC=202.2.2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
package.json | 2 +-
src/views/index.vue | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/package.json b/package.json
index 48b15717..e67d60f2 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "ruoyi-vue-plus",
- "version": "5.2.2",
+ "version": "5.2.3",
"description": "RuoYi-Vue-Plus多租户管理系统",
"author": "LionLi",
"license": "MIT",
diff --git a/src/views/index.vue b/src/views/index.vue
index 7bd19e42..b67eb076 100644
--- a/src/views/index.vue
+++ b/src/views/index.vue
@@ -33,7 +33,7 @@
* 部署方式 Docker 容器编排 一键部署业务集群
* 国际化 SpringMessage Spring标准国际化方案
- 当前版本: v5.2.2
+ 当前版本: v5.2.3
¥免费开源
@@ -77,7 +77,7 @@
* 分布式监控 Prometheus、Grafana 全方位性能监控
* 其余与 Vue 版本一致
- 当前版本: v2.2.1
+ 当前版本: v2.2.2
¥免费开源
--
Gitee