修改统一身份认证
This commit is contained in:
@@ -1,9 +1,14 @@
|
||||
<template>
|
||||
<div :class="prefixCls" class="relative h-[100%]" :style="{ backgroundImage: 'url(' + localImage + ')' ,backgroundSize:'cover'}">
|
||||
<div class="relative mx-auto h-full flex" style=" margin: 0 auto;">
|
||||
<div
|
||||
:class="prefixCls"
|
||||
class="relative h-[100%]"
|
||||
:style="{ backgroundImage: 'url(' + localImage + ')', backgroundSize: 'cover' }"
|
||||
>
|
||||
<div class="relative mx-auto h-full flex" style="margin: 0 auto">
|
||||
<div
|
||||
class="relative flex-1 p-30px lt-sm:p-10px overflow-x-hidden overflow-y-auto"
|
||||
:class="`${prefixCls}__right`">
|
||||
:class="`${prefixCls}__right`"
|
||||
>
|
||||
<!-- 右边的登录界面 -->
|
||||
<Transition appear enter-active-class="animate__animated animate__bounceInRight">
|
||||
<div
|
||||
@@ -20,23 +25,23 @@
|
||||
</div>
|
||||
<div class="tags">
|
||||
<div class="module cockpit">
|
||||
<img :src="jsc"/>
|
||||
<img :src="jsc" />
|
||||
驾驶舱
|
||||
</div>
|
||||
<div class="module iot">
|
||||
<img :src="wlzt"/>
|
||||
<img :src="wlzt" />
|
||||
物联中台
|
||||
</div>
|
||||
<div class="module data-center">
|
||||
<img :src="sjzt"/>
|
||||
<img :src="sjzt" />
|
||||
数据中台
|
||||
</div>
|
||||
<div class="module report">
|
||||
<img :src="znbb"/>
|
||||
<img :src="znbb" />
|
||||
智能报表
|
||||
</div>
|
||||
<div class="module digital-twin">
|
||||
<img :src="szls"/>
|
||||
<img :src="szls" />
|
||||
数字孪生
|
||||
</div>
|
||||
</div>
|
||||
@@ -55,8 +60,6 @@ import sjzt from '@/assets/imgs/sjzt.png'
|
||||
import szls from '@/assets/imgs/szls.png'
|
||||
import wlzt from '@/assets/imgs/wlzt.png'
|
||||
import znbb from '@/assets/imgs/znbb.png'
|
||||
|
||||
// import { useRoute } from 'vue-router';
|
||||
import localImage from '@/assets/imgs/background.jpg'
|
||||
|
||||
defineOptions({ name: 'Login' })
|
||||
@@ -67,7 +70,6 @@ const { getPrefixCls } = useDesign()
|
||||
const prefixCls = getPrefixCls('login')
|
||||
const windowSize = useWindowSize()
|
||||
const loginAnimationData = ref(loginAnimation['default'])
|
||||
|
||||
const leftStyle = computed(() => {
|
||||
const winW = windowSize.width.value
|
||||
const leftW = winW / 2
|
||||
@@ -97,6 +99,14 @@ const leftStyle = computed(() => {
|
||||
return { lottie, bottomText, logo }
|
||||
})
|
||||
|
||||
onMounted(() => {
|
||||
|
||||
const queryParams = new URLSearchParams(window.location.search);
|
||||
const paramValue = queryParams.get('url'); // 获取查询参数值,例如 ?paramName=value 中的 value
|
||||
debugger
|
||||
|
||||
});
|
||||
|
||||
const newClass = computed(() => {
|
||||
const mobile = appStore.getMobile ? 'is-mobile' : ''
|
||||
const toggle = appStore.getFullscreen ? 'is-toggle' : ''
|
||||
@@ -128,13 +138,13 @@ $prefix-cls: #{$namespace}-login;
|
||||
transform: translate(-50%, -50%) scale(0.7, 0.6);
|
||||
}
|
||||
|
||||
.tags{
|
||||
position:absolute;
|
||||
bottom:20px;
|
||||
left:50%;
|
||||
.tags {
|
||||
position: absolute;
|
||||
bottom: 20px;
|
||||
left: 50%;
|
||||
display: grid;
|
||||
width: 1000px;
|
||||
transform:translateX(-50%);
|
||||
transform: translateX(-50%);
|
||||
grid-template-columns: 1fr 1fr 1fr;
|
||||
grid-template-rows: auto auto;
|
||||
gap: 20px;
|
||||
@@ -165,8 +175,8 @@ $prefix-cls: #{$namespace}-login;
|
||||
.module.digital-twin {
|
||||
flex-direction: row;
|
||||
gap: 50px; /* 图标和文字之间的间距 */
|
||||
img{
|
||||
margin:0
|
||||
img {
|
||||
margin: 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -140,41 +140,6 @@ const loginData = reactive({
|
||||
}
|
||||
})
|
||||
|
||||
const socialList = [
|
||||
{ icon: 'ant-design:wechat-filled', type: 30 },
|
||||
{ icon: 'ant-design:dingtalk-circle-filled', type: 20 },
|
||||
{ icon: 'ant-design:github-filled', type: 0 },
|
||||
{ icon: 'ant-design:alipay-circle-filled', type: 0 }
|
||||
]
|
||||
|
||||
const easyDropdownList = [
|
||||
{
|
||||
label: t('login.btnMobile'),
|
||||
icon: 'ant-design:phone-twotone',
|
||||
type: LoginStateEnum.MOBILE,
|
||||
code: 'page'
|
||||
},
|
||||
{
|
||||
label: t('login.btnQRCode'),
|
||||
icon: 'ant-design:qrcode-outlined',
|
||||
type: LoginStateEnum.QR_CODE,
|
||||
code: 'page'
|
||||
},
|
||||
{ label: t('login.btnWechat'), icon: 'ant-design:wechat-filled', type: 30, code: 'url' },
|
||||
{
|
||||
label: t('login.btnDingtalk'),
|
||||
icon: 'ant-design:dingtalk-circle-filled',
|
||||
type: 20,
|
||||
code: 'url'
|
||||
},
|
||||
{ label: t('login.btnGitHub'), icon: 'ant-design:github-filled', type: 0, code: 'url' },
|
||||
{ label: t('login.btnAlipay'), icon: 'ant-design:alipay-circle-filled', type: 0, code: 'url' }
|
||||
]
|
||||
|
||||
const easyCommand = (row) => {
|
||||
if (row.code == 'page') setLoginState(row.type)
|
||||
else if (row.code == 'url') doSocialLogin(row.type)
|
||||
}
|
||||
|
||||
// 获取验证码
|
||||
const getCode = async () => {
|
||||
@@ -242,15 +207,30 @@ const handleLogin = async (params) => {
|
||||
authUtil.removeLoginForm()
|
||||
}
|
||||
authUtil.setToken(res)
|
||||
debugger
|
||||
if (!redirect.value) {
|
||||
|
||||
redirect.value = '/'
|
||||
}
|
||||
// 判断是否为SSO登录
|
||||
if (redirect.value.indexOf('sso') !== -1) {
|
||||
window.location.href = window.location.href.replace('/login?redirect=', '')
|
||||
} else {
|
||||
const queryParams = new URLSearchParams(window.location.search);
|
||||
const ticketUrl = queryParams.get('url'); // 获取查询参数值,例如 ?paramName=value 中的 value
|
||||
console.log(ticketUrl);
|
||||
debugger
|
||||
if(ticketUrl!=null){
|
||||
var urll=ticketUrl+"/#/login"+"?ticket=93279E3308BDBBEED946FC965017F67A";
|
||||
window.location.href = urll
|
||||
}else{
|
||||
|
||||
push({ path: redirect.value || permissionStore.addRouters[0].path })
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
} finally {
|
||||
loginLoading.value = false
|
||||
loading.value?.close()
|
||||
|
||||
Reference in New Issue
Block a user