|
@@ -3,14 +3,9 @@
|
|
<div v-if="isErrorShow" class="error-page">
|
|
<div v-if="isErrorShow" class="error-page">
|
|
<div class="img" :style="`background-image: url(${svg403});`" />
|
|
<div class="img" :style="`background-image: url(${svg403});`" />
|
|
<div class="content">
|
|
<div class="content">
|
|
- <h1>403</h1>
|
|
|
|
|
|
+ <h1>401</h1>
|
|
<div class="desc">
|
|
<div class="desc">
|
|
- 抱歉,token授权登录异常,请重新进入
|
|
|
|
- </div>
|
|
|
|
- <div class="actions">
|
|
|
|
- <el-button type="primary" block size="large" @click="toLoginTap">
|
|
|
|
- 手动登录
|
|
|
|
- </el-button>
|
|
|
|
|
|
+ 抱歉,身份验证异常,请重新进入
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
@@ -21,9 +16,9 @@
|
|
import { onMounted, ref } from 'vue'
|
|
import { onMounted, ref } from 'vue'
|
|
import { useAppStore } from '~src/store'
|
|
import { useAppStore } from '~src/store'
|
|
import { useAppLogin } from '~sto/user'
|
|
import { useAppLogin } from '~sto/user'
|
|
-import userApi from '~api/userInfo'
|
|
|
|
import { useRoute, useRouter } from 'vue-router'
|
|
import { useRoute, useRouter } from 'vue-router'
|
|
import svg403 from '~src/assets/view/403.svg'
|
|
import svg403 from '~src/assets/view/403.svg'
|
|
|
|
+import { isNullES } from 'js-fast-way'
|
|
|
|
|
|
//初始变量
|
|
//初始变量
|
|
const router = useRouter()
|
|
const router = useRouter()
|
|
@@ -36,61 +31,39 @@ const isErrorShow = ref(false)
|
|
|
|
|
|
//渲染完成
|
|
//渲染完成
|
|
onMounted(() => {
|
|
onMounted(() => {
|
|
- // 域名后加 /#/auth?token=xxxxxxx
|
|
|
|
- const { token } = useRoutes.query
|
|
|
|
- console.log(token)
|
|
|
|
- if (token) {
|
|
|
|
- useAppState.setTokenVal(token)
|
|
|
|
- queryCurrentUserData()
|
|
|
|
|
|
+ const { user, source } = useRoutes.query
|
|
|
|
+ if (!isNullES(user)) {
|
|
|
|
+ const userInfo = JSON.parse(decodeURIComponent(user))
|
|
|
|
+ useAppState.setIsSource(source)
|
|
|
|
+ useAppLoginApi(userInfo)
|
|
} else {
|
|
} else {
|
|
loading.value = false
|
|
loading.value = false
|
|
isErrorShow.value = true
|
|
isErrorShow.value = true
|
|
}
|
|
}
|
|
})
|
|
})
|
|
|
|
|
|
-//获取用户信息
|
|
|
|
-const queryCurrentUserData = async () => {
|
|
|
|
- const { error, code, data } = await userApi.queryCurrentUserData()
|
|
|
|
- if (!error && code === 200) {
|
|
|
|
- await useAppLoginApi({
|
|
|
|
- tenantId: '000000',
|
|
|
|
- username: data.account,
|
|
|
|
- password: data.plaintextPassword,
|
|
|
|
- type: 'account',
|
|
|
|
- })
|
|
|
|
- } else {
|
|
|
|
- window.$message?.error('授权信息异常')
|
|
|
|
- isErrorShow.value = true
|
|
|
|
- loading.value = false
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
//请求授权登录
|
|
//请求授权登录
|
|
const useAppLoginApi = async (form) => {
|
|
const useAppLoginApi = async (form) => {
|
|
loading.value = true
|
|
loading.value = true
|
|
- useAppLogin(form).then(() => {
|
|
|
|
|
|
+ const { error, status } = await useAppLogin(form)
|
|
|
|
+ if (!error && status === 200) {
|
|
|
|
+ const { url, node } = useRoutes.query
|
|
|
|
+ if (!isNullES(url)) {
|
|
|
|
+ router.push({
|
|
|
|
+ name: url,
|
|
|
|
+ query: node ? JSON.parse(decodeURIComponent(node)) : {},
|
|
|
|
+ }).then()
|
|
|
|
+ }
|
|
loading.value = false
|
|
loading.value = false
|
|
isErrorShow.value = false
|
|
isErrorShow.value = false
|
|
- window?.$message?.success('授权登录成功')
|
|
|
|
- //router.push({ path: '/using/stats' })//跳转到档案统计页面
|
|
|
|
- }).catch(() => {
|
|
|
|
- window.$message?.error('授权登录失败')
|
|
|
|
|
|
+ } else {
|
|
|
|
+ window.$message?.error('身份验证异常')
|
|
isErrorShow.value = true
|
|
isErrorShow.value = true
|
|
loading.value = false
|
|
loading.value = false
|
|
- })
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-//跳转登陆
|
|
|
|
-const toLoginTap = () => {
|
|
|
|
- //router.push({ path: '/login' })
|
|
|
|
|
|
+ }
|
|
}
|
|
}
|
|
</script>
|
|
</script>
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
<style lang="scss" scoped>
|
|
@import "../../styles/error/app-auth.scss";
|
|
@import "../../styles/error/app-auth.scss";
|
|
-.hc-body-loading {
|
|
|
|
- position: relative;
|
|
|
|
- height: 100%;
|
|
|
|
- width: 100%;
|
|
|
|
-}
|
|
|
|
</style>
|
|
</style>
|