diff --git a/src/api/system/tenant/index.ts b/src/api/system/tenant/index.ts index 4380dbe14fb7cda82525da4c428b05f618e5891c..7b7b93f0b7461f9f7149092573542c3122aeceb0 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/utils/request.ts b/src/utils/request.ts index f2a69f0fe9de18cbbce90d8309e54f89d104547c..f8f1f53dcdebdeede7e724dac7e9344a37f04aba 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 ca2903f0742683abcec39c035ff21d7cbb8930f4..db1fca6190d1a72a3398803b59e8c16c2d283432 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 } ); diff --git a/src/views/system/dict/index.vue b/src/views/system/dict/index.vue index d44a04af37902204750eebab9da8e42c61148244..4ad70d098374494fbe45639b95d0ab0751dab4e1 100644 --- a/src/views/system/dict/index.vue +++ b/src/views/system/dict/index.vue @@ -49,6 +49,9 @@ 刷新缓存 + + 同步租户字典 + @@ -109,11 +112,15 @@