liuyiliang 11 months ago
parent b003bcf6dc
commit 69ddeb4baf
  1. 9
      src/api/user.js
  2. 41
      src/components/scada-login/main.vue
  3. 5
      src/permission.js
  4. 14
      src/router/page/index.js
  5. 21
      src/store/modules/user.js
  6. 1
      src/views/wel/index.vue

@ -18,6 +18,15 @@ export const loginByUsername = (tenantId, account, password, type, key, code) =>
}
});
export const loginByScada = (token) => request({
url: '/api/daf-auth/scada-token',
method: 'post',
params: {
token
}
});
export const loginBySocial = (tenantId, source, code, state) => request({
url: '/api/daf-auth/token',
method: 'post',

@ -0,0 +1,41 @@
<template>
<div></div>
</template>
<script>
import {mapGetters} from "vuex";
export default {
name: "scada-sso",
data() {
return {
loginForm: {
token: null
}
};
},
created() {
},
mounted() {
this.handleLogin();
},
computed: {
...mapGetters(["tagWel"])
},
props: [],
methods: {
handleLogin() {
let token = this.$route.query.SSOToken;
this.loginForm.token = token;
this.$store.dispatch("loginByScada", this.loginForm).then(() => {
this.$router.push({path: this.tagWel.value});
}).catch(() => {
this.$router.push({path: "/403"});
});
},
}
};
</script>
<style>
</style>

@ -7,7 +7,8 @@ import store from './store'
import {validatenull} from '@/util/validate'
import {getToken} from '@/util/auth'
import NProgress from 'nprogress' // progress bar
import 'nprogress/nprogress.css' // progress bar style
import 'nprogress/nprogress.css'
import Cookies from "js-cookie"; // progress bar style
NProgress.configure({showSpinner: false});
const lockPage = store.getters.website.lockPage; //锁屏页
router.beforeEach((to, from, next) => {
@ -21,7 +22,7 @@ router.beforeEach((to, from, next) => {
next({path: '/'})
} else {
//如果用户信息为空则获取用户信息,获取用户信息失败,跳转到登录页
if (store.getters.token.length === 0) {
if (store.getters.token.length === 0 && !Cookies.get('scada-access-token')) {
store.dispatch('FedLogOut').then(() => {
next({path: '/login'})
})

@ -21,6 +21,18 @@ export default [{
isAuth: false
}
},
{
path: '/scada-login',
requiresAuth: false,
name: 'scada登录',
component: () =>
import( /* webpackChunkName: "page" */ '@/components/scada-login/main'),
meta: {
keepAlive: true,
isTab: false,
isAuth: false,
}
},
{
path: '/404',
component: () =>
@ -77,4 +89,4 @@ export default [{
path: '*',
redirect: '/404'
}
]
]

@ -4,9 +4,10 @@ import {isURL, validatenull} from '@/util/validate'
import {deepClone} from '@/util/util'
import webiste from '@/config/website'
import {Message, Notification} from 'element-ui'
import {loginByUsername, loginBySocial, getUserInfo, getMenu, getTopMenu, logout, refreshToken, getButtons, getLicense} from '@/api/user'
import {loginByUsername, loginByScada, loginBySocial, getUserInfo, getMenu, getTopMenu, logout, refreshToken, getButtons, getLicense} from '@/api/user'
import vue from '../../main.js'
import website from "../../config/website";
import Cookies from "js-cookie";
function addPath(ele, first) {
@ -58,6 +59,22 @@ const user = {
})
})
},
loginByScada({commit}, userInfo) {
return new Promise((resolve, reject) => {
loginByScada(userInfo.token).then(res => {
const data = res.data.data;
var inFifteenMinutes = new Date(new Date().getTime() + 120 * 60 * 1000);
Cookies.set('scada-access-token', data.accessToken, { expires: inFifteenMinutes });
commit('SET_TOKEN', data.accessToken);
commit('SET_USER_INFO', data);
commit('DEL_ALL_TAG');
commit('CLEAR_LOCK');
resolve();
}).catch(error => {
reject(error);
})
})
},
//根据第三方信息登录
LoginBySocial({ commit }, userInfo) {
return new Promise((resolve) => {
@ -118,6 +135,7 @@ const user = {
LogOut({commit}) {
return new Promise((resolve, reject) => {
logout().then(() => {
Cookies.remove('scada-access-token');
commit('SET_TOKEN', '');
commit('SET_MENU', [])
commit('SET_MENU_ALL', []);
@ -134,6 +152,7 @@ const user = {
//注销session
FedLogOut({commit}) {
return new Promise(resolve => {
Cookies.remove('scada-access-token');
commit('SET_TOKEN', '');
commit('SET_MENU', []);
commit('SET_MENU_ALL', []);

@ -37,6 +37,7 @@
&& !homePageData.manufacturerInfoAudit
&& !homePageData.warehouseAudit
&& !homePageData.workPermitAudit
&& !homePageData.materialAudit
&& !homePageData.workOperationTicketAudit
&& !homePageData.toolInventoryRecordsAudit
&& !homePageData.equipmentLedgerAudit">

Loading…
Cancel
Save