From 6996c3830394c1d956802871804948ebf2ab7060 Mon Sep 17 00:00:00 2001 From: lideqin <694785430@qq.com> Date: Mon, 26 Feb 2024 17:25:56 +0800 Subject: [PATCH] =?UTF-8?q?[update]=20=E4=BF=AE=E6=94=B9=E4=B8=80=E8=88=AC?= =?UTF-8?q?=E6=A3=80=E7=B4=A2=E9=A1=B5=E9=9D=A2=E6=A0=B7=E5=BC=8F=EF=BC=8C?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0OA=E5=8D=95=E7=82=B9=E7=99=BB=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/api.js | 3 ++ src/permission.js | 15 ++++++- src/views/dashboard/search/GeneralSearch.vue | 46 ++++++++++++++------ 3 files changed, 48 insertions(+), 16 deletions(-) diff --git a/src/api/api.js b/src/api/api.js index fcb1e090..7189cf73 100644 --- a/src/api/api.js +++ b/src/api/api.js @@ -20,6 +20,8 @@ const checkOnlyUser = (params) => getAction('/sys/user/checkOnlyUser', params) const changePassword = (params) => postAction('/sys/user/changePassword', params) // 单点登录获取用户信息 const getSSOUserInfo = (params) => postAction('/iam/loginByOauth2', params) +// OA单点登录 +const getTodoSSOUserInfo = (params) => postAction('/oa/login', params) // 上传手写章 const uploadHandStamp = (params) => postAction('/sys/user/uploadHandStamp', params) @@ -223,6 +225,7 @@ export { getEnterpriseLevelMapList, getSSOUserInfo, + getTodoSSOUserInfo, uploadHandStamp, addAsmsInterface, diff --git a/src/permission.js b/src/permission.js index c05b9973..1676303e 100644 --- a/src/permission.js +++ b/src/permission.js @@ -5,7 +5,7 @@ import NProgress from 'nprogress' // progress bar import 'nprogress/nprogress.css' // progress bar style import { ACCESS_TOKEN, OAUTH2_LOGIN_PAGE_PATH, UI_CACHE_DB_DICT_DATA, USER_INFO, USER_NAME } from '@/store/mutation-types' import { generateIndexRouter, isOAuth2AppEnv, findFirstRoute, welcome } from '@/utils/util' -import { getSSOUserInfo } from './api/api' +import { getSSOUserInfo, getTodoSSOUserInfo } from './api/api' import { isCanLookDetail } from './api/enterpriseStandardLibraryApi' import { updatePageHeight } from './components/tools/setting' @@ -16,7 +16,18 @@ whiteList.push(OAUTH2_LOGIN_PAGE_PATH) router.beforeEach(async (to, from, next) => { // 单点登录 - if (to.query.code) { + if (to.query.ticket) { + const { result } = await getTodoSSOUserInfo({ ticket: to.query.ticket }) + const userInfo = result.userInfo + Vue.ls.set(ACCESS_TOKEN, result.token, 7 * 24 * 60 * 60 * 1000) + Vue.ls.set(USER_NAME, userInfo.username, 7 * 24 * 60 * 60 * 1000) + Vue.ls.set(USER_INFO, userInfo, 7 * 24 * 60 * 60 * 1000) + Vue.ls.set(UI_CACHE_DB_DICT_DATA, result.sysAllDictItems, 7 * 24 * 60 * 60 * 1000) + store.commit('SET_TOKEN', result.token) + store.commit('SET_INFO', userInfo) + store.commit('SET_NAME', { username: userInfo.username, realname: userInfo.realname, welcome: welcome() }) + store.commit('SET_AVATAR', userInfo.avatar) + } else if (to.query.code) { const { result } = await getSSOUserInfo({ code: to.query.code }) const userInfo = result.userInfo Vue.ls.set(ACCESS_TOKEN, result.token, 7 * 24 * 60 * 60 * 1000) diff --git a/src/views/dashboard/search/GeneralSearch.vue b/src/views/dashboard/search/GeneralSearch.vue index c1b639bc..24018991 100644 --- a/src/views/dashboard/search/GeneralSearch.vue +++ b/src/views/dashboard/search/GeneralSearch.vue @@ -1,6 +1,6 @@ - + + + + + +