From 32c62369722bea94350b6fcda6a49c6dd207c015 Mon Sep 17 00:00:00 2001 From: wangxiang <1827945911@qq.com> Date: Tue, 8 Aug 2023 19:11:54 +0800 Subject: [PATCH] =?UTF-8?q?chore:=20=E4=BF=AE=E5=A4=8D=E7=99=BB=E9=99=86?= =?UTF-8?q?=E9=87=8D=E5=AE=9A=E5=90=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/enums/appEnum.ts | 6 + src/layouts/default/feature/index.vue | 8 + src/router/guard/permissionGuard.ts | 19 +- src/router/routes/demo/feat.ts | 8 + src/router/routes/index.ts | 20 + src/settings/projectSetting.ts | 4 + src/store/modules/user.ts | 35 +- src/utils/http/axios/checkStatus.ts | 9 + src/views/core/loginmini/MiniLogin.vue | 10 +- .../core/loginmini/SessionTimeoutLogin.vue | 48 ++ src/views/demo/feat/session-timeout/index.vue | 56 ++ src/views/system/ssoLogin/kics/index.vue | 559 ++++++++++++++++++ types/config.d.ts | 4 +- 13 files changed, 770 insertions(+), 16 deletions(-) create mode 100644 src/views/core/loginmini/SessionTimeoutLogin.vue create mode 100644 src/views/demo/feat/session-timeout/index.vue create mode 100644 src/views/system/ssoLogin/kics/index.vue diff --git a/src/enums/appEnum.ts b/src/enums/appEnum.ts index 18b9cb1..4ca06b1 100644 --- a/src/enums/appEnum.ts +++ b/src/enums/appEnum.ts @@ -45,3 +45,9 @@ export enum RouterTransitionEnum { FADE_BOTTOM = 'fade-bottom', FADE_SCALE = 'fade-scale', } + +/** 会话超时处理(重新加载路由,覆盖还原路由) */ +export enum SessionTimeoutProcessingEnum { + ROUTE_JUMP, + PAGE_COVERAGE, +} diff --git a/src/layouts/default/feature/index.vue b/src/layouts/default/feature/index.vue index 8e87c42..1834858 100644 --- a/src/layouts/default/feature/index.vue +++ b/src/layouts/default/feature/index.vue @@ -6,6 +6,8 @@ import { useDesign } from '/@/hooks/web/useDesign'; import { SettingButtonPositionEnum } from '/@/enums/appEnum'; import { createAsyncComponent } from '/@/utils/factory/createAsyncComponent'; + import SessionTimeoutLogin from '/@/views/core/loginmini/SessionTimeoutLogin.vue'; + import { useUserStoreWithOut } from '/@/store/modules/user'; export default defineComponent({ name: 'LayoutFeatures', @@ -13,12 +15,16 @@ BackTop, LayoutLockPage: createAsyncComponent(() => import('/@/views/core/lock/index.vue')), SettingDrawer: createAsyncComponent(() => import('/@/layouts/default/setting/index.vue')), + SessionTimeoutLogin, }, setup() { const { getUseOpenBackTop, getShowSettingButton, getSettingButtonPosition, getFullContent } = useRootSetting(); + const userStore = useUserStoreWithOut(); const { prefixCls } = useDesign('setting-drawer-fearure'); const { getShowHeader } = useHeaderSetting(); + const getIsSessionTimeout = computed(() => userStore.getSessionTimeout); + const getIsFixedSettingDrawer = computed(() => { if (!unref(getShowSettingButton)) { return false; @@ -36,6 +42,7 @@ getUseOpenBackTop, getIsFixedSettingDrawer, prefixCls, + getIsSessionTimeout }; }, }); @@ -45,6 +52,7 @@ + diff --git a/src/views/demo/feat/session-timeout/index.vue b/src/views/demo/feat/session-timeout/index.vue new file mode 100644 index 0000000..1152750 --- /dev/null +++ b/src/views/demo/feat/session-timeout/index.vue @@ -0,0 +1,56 @@ + + diff --git a/src/views/system/ssoLogin/kics/index.vue b/src/views/system/ssoLogin/kics/index.vue new file mode 100644 index 0000000..7a1e993 --- /dev/null +++ b/src/views/system/ssoLogin/kics/index.vue @@ -0,0 +1,559 @@ + + + + + + diff --git a/types/config.d.ts b/types/config.d.ts index 6e59d12..11920a3 100644 --- a/types/config.d.ts +++ b/types/config.d.ts @@ -10,7 +10,7 @@ import { ContentEnum, ThemeEnum, RouterTransitionEnum, - SettingButtonPositionEnum, + SettingButtonPositionEnum, SessionTimeoutProcessingEnum, } from '/@/enums/appEnum'; import { CacheTypeEnum } from '/@/enums/cacheEnum'; @@ -93,6 +93,8 @@ export interface ProjectConfig { showDarkModeToggle: boolean; // 配置按钮的显示位置 settingButtonPosition: SettingButtonPositionEnum; + // Session timeout processing + sessionTimeoutProcessing: SessionTimeoutProcessingEnum; // 网站灰色模式,打开可能的哀悼日期 grayMode: boolean; // 是否开启色弱模式