ah-jjzhgd-web/src/views/login/ywgllogin.vue

287 lines
6.9 KiB
Vue
Raw Normal View History

2025-01-16 19:52:00 +08:00
<template>
<div id="app">
<div id="loader-wrapper">
<div id="loader"></div>
<div class="loader-section section-left"></div>
<div class="loader-section section-right"></div>
<div class="load_title">正在加载系统资源请耐心等待</div>
</div>
</div>
</template>
<style>
html,
body,
#app {
height: 100%;
margin: 0px;
padding: 0px;
}
.chromeframe {
margin: 0.2em 0;
background: #ccc;
color: #000;
padding: 0.2em 0;
}
#loader-wrapper {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 999999;
}
#loader {
display: block;
position: relative;
left: 50%;
top: 50%;
width: 150px;
height: 150px;
margin: -75px 0 0 -75px;
border-radius: 50%;
border: 3px solid transparent;
border-top-color: #FFF;
-webkit-animation: spin 2s linear infinite;
-ms-animation: spin 2s linear infinite;
-moz-animation: spin 2s linear infinite;
-o-animation: spin 2s linear infinite;
animation: spin 2s linear infinite;
z-index: 1001;
}
#loader:before {
content: "";
position: absolute;
top: 5px;
left: 5px;
right: 5px;
bottom: 5px;
border-radius: 50%;
border: 3px solid transparent;
border-top-color: #FFF;
-webkit-animation: spin 3s linear infinite;
-moz-animation: spin 3s linear infinite;
-o-animation: spin 3s linear infinite;
-ms-animation: spin 3s linear infinite;
animation: spin 3s linear infinite;
}
#loader:after {
content: "";
position: absolute;
top: 15px;
left: 15px;
right: 15px;
bottom: 15px;
border-radius: 50%;
border: 3px solid transparent;
border-top-color: #FFF;
-moz-animation: spin 1.5s linear infinite;
-o-animation: spin 1.5s linear infinite;
-ms-animation: spin 1.5s linear infinite;
-webkit-animation: spin 1.5s linear infinite;
animation: spin 1.5s linear infinite;
}
@-webkit-keyframes spin {
0% {
-webkit-transform: rotate(0deg);
-ms-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(360deg);
-ms-transform: rotate(360deg);
transform: rotate(360deg);
}
}
@keyframes spin {
0% {
-webkit-transform: rotate(0deg);
-ms-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(360deg);
-ms-transform: rotate(360deg);
transform: rotate(360deg);
}
}
#loader-wrapper .loader-section {
position: fixed;
top: 0;
width: 51%;
height: 100%;
background: #7171C6;
z-index: 1000;
-webkit-transform: translateX(0);
-ms-transform: translateX(0);
transform: translateX(0);
}
#loader-wrapper .loader-section.section-left {
left: 0;
}
#loader-wrapper .loader-section.section-right {
right: 0;
}
.loaded #loader-wrapper .loader-section.section-left {
-webkit-transform: translateX(-100%);
-ms-transform: translateX(-100%);
transform: translateX(-100%);
-webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
}
.loaded #loader-wrapper .loader-section.section-right {
-webkit-transform: translateX(100%);
-ms-transform: translateX(100%);
transform: translateX(100%);
-webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
}
.loaded #loader {
opacity: 0;
-webkit-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}
.loaded #loader-wrapper {
visibility: hidden;
-webkit-transform: translateY(-100%);
-ms-transform: translateY(-100%);
transform: translateY(-100%);
-webkit-transition: all 0.3s 1s ease-out;
transition: all 0.3s 1s ease-out;
}
.no-js #loader-wrapper {
display: none;
}
.no-js h1 {
color: #222222;
}
#loader-wrapper .load_title {
font-family: 'Open Sans';
color: #FFF;
font-size: 19px;
width: 100%;
text-align: center;
z-index: 9999999999999;
position: absolute;
top: 60%;
opacity: 1;
line-height: 30px;
}
#loader-wrapper .load_title span {
font-weight: normal;
font-style: italic;
font-size: 13px;
color: #FFF;
opacity: 0.5;
}
</style>
<script>
//import { getToken } from '@/utils/auth'
export default {
name: "YwglLogin",
data() {
return {
loginRules: {},
loginForm: {
username: "",
password: "",
rememberMe: false,
code: "",
uuid: "",
},
loading: false,
// 验证码开关
captchaOnOff: true,
// 注册开关
register: false,
redirect: undefined,
};
},
watch: {
$route: {
handler: function (route) {
this.redirect = route.query && route.query.redirect;
},
immediate: true,
},
},beforeRouteEnter (to, from, next) {
console.log('从 ' + from.path + ' 进入ywgllogin');
next(); // 必须调用next()来解决路由守卫的promise
},
created() {
//平台单独的登录 2024年4月16日11:23:58
this.getLoginByNameAndTokenJ();
},
methods: {
/**
* 只传递token
*/
getLoginByNameAndTokenJ() {
2025-10-14 17:47:02 +08:00
debugger
2025-01-16 19:52:00 +08:00
console.log(window.location.href);
let url=window.location.href.split("?");
2025-06-20 18:20:41 +08:00
let tokens='';
2025-01-16 19:52:00 +08:00
if(url.length>1){
let params=url[1].split("#");
if(params.length>0){
params=params[0].split("=");
if(params.length>1){
2025-06-20 18:20:41 +08:00
tokens=params[1]
2025-01-16 19:52:00 +08:00
}
}
}
2025-06-20 18:20:41 +08:00
if(!tokens){
tokens = this.$route.query.token;
2025-01-16 19:52:00 +08:00
}
2025-06-20 18:20:41 +08:00
console.log(tokens)
2025-01-16 19:52:00 +08:00
//调用登录的接口
2025-06-20 18:20:41 +08:00
if (tokens) {
2025-01-16 19:52:00 +08:00
//转圈圈,不要看到登陆页面,无感体验
this.loading = true;
let loginForm = {
2025-06-20 18:20:41 +08:00
token:tokens,
2025-01-16 19:52:00 +08:00
loginType: 333
};
console.log(loginForm);
console.log("开始登录..")
//执行另一套登录操作
2025-06-20 18:20:41 +08:00
this.$store.dispatch('user/sgccLogin', loginForm).then(() => {
2025-01-16 19:52:00 +08:00
console.log("登录成功了..")
this.$router.replace({ path:"/#/home" || "/" }).catch(()=>{});
this.loading = false
})
.catch(() => {
this.loading = false
})
// this.$message.error("用户token为空");
} else {
2025-06-20 18:20:41 +08:00
window.location.href = 'http://sgwpdm.ah.sgcc.com.cn/';
2025-01-16 19:52:00 +08:00
// console.log("tick为空..")
}
},
},
};
</script>
<style rel="stylesheet/scss" lang="scss">
</style>