| | |
| | | import {validatenull} from "@/util/validate"; |
| | | import {calcDate} from "@/util/date.js"; |
| | | import {getStore} from "@/util/store.js"; |
| | | import {Message} from "element-ui"; |
| | | |
| | | export default { |
| | | components: { |
| | |
| | | ></i> |
| | | </div> |
| | | </el-tooltip> |
| | | <img class="top-bar__img" :src="userInfo.avatar" /> |
| | | <img class="top-bar__img" :src="'/zhny-web/' + userInfo.avatar" /> |
| | | <el-dropdown> |
| | | <span class="el-dropdown-link"> |
| | | {{userInfo.userName}} |
| | |
| | | <script> |
| | | import {mapGetters} from "vuex"; |
| | | import {info} from "@/api/system/tenant"; |
| | | import {getCaptcha} from "@/api/user"; |
| | | import {getCaptcha, loginInfoByToken} from "@/api/user"; |
| | | import {getTopUrl} from "@/util/util"; |
| | | import {Message} from "element-ui"; |
| | | |
| | | export default { |
| | | name: "userlogin", |
| | |
| | | this.refreshCode(); |
| | | }, |
| | | mounted() { |
| | | //统一登录有没有登录 |
| | | const token = window.sessionStorage.getItem('token') |
| | | if (token) { |
| | | this.loginInfoByToken(); |
| | | } |
| | | }, |
| | | watch: { |
| | | 'loginForm.deptId'() { |
| | |
| | | this.$parent.$refs.login.style.backgroundImage = `url(${data.data.backgroundUrl})`; |
| | | } |
| | | }) |
| | | }, |
| | | // 统一登陆获取用户 |
| | | loginInfoByToken() { |
| | | const loading = this.$loading({ |
| | | lock: true, |
| | | text: '登录中,请稍后。。。', |
| | | spinner: "el-icon-loading" |
| | | }); |
| | | this.$store.dispatch("loginInfoByToken").then(() => { |
| | | this.$router.push({path: this.tagWel.value}); |
| | | loading.close(); |
| | | }).catch(() => { |
| | | loading.close(); |
| | | this.refreshCode(); |
| | | }); |
| | | } |
| | | } |
| | | }; |
| | |
| | | import {getToken} from '@/util/auth' |
| | | import NProgress from 'nprogress' // progress bar |
| | | import 'nprogress/nprogress.css' // progress bar style |
| | | import {loginInfoByToken} from '@/api/user' |
| | | import {Message} from "element-ui"; |
| | | NProgress.configure({showSpinner: false}); |
| | | const lockPage = store.getters.website.lockPage; //锁屏页 |
| | | router.beforeEach((to, from, next) => { |
| | |
| | | if (meta.isAuth === false) { |
| | | next() |
| | | } else { |
| | | // 需要判断是否单点登录 |
| | | let token = window.sessionStorage.getItem('token') |
| | | if (token) { |
| | | loginInfoByToken.then(res => { |
| | | const data = res.data; |
| | | if (data.error_description) { |
| | | Message({ |
| | | message: data.error_description, |
| | | type: 'error' |
| | | }) |
| | | } else { |
| | | this.$store.commit('SET_TOKEN', data.access_token); |
| | | this.$store.commit('SET_REFRESH_TOKEN', data.refresh_token); |
| | | this.$store.commit('SET_TENANT_ID', data.tenant_id); |
| | | this.$store.commit('SET_USER_INFO', data); |
| | | this.$store.commit('DEL_ALL_TAG'); |
| | | this.$store.commit('CLEAR_LOCK'); |
| | | next(to.path) |
| | | } |
| | | |
| | | }) |
| | | } else { |
| | | next('/login') |
| | | } |
| | | next('/login') |
| | | } |
| | | } |
| | | }) |
| | |
| | | import {isURL, validatenull} from '@/util/validate' |
| | | import {deepClone} from '@/util/util' |
| | | import website from '@/config/website' |
| | | import {loginByUsername, loginBySocial, getUserInfo, logout, refreshToken, getButtons} from '@/api/user' |
| | | import { |
| | | loginByUsername, |
| | | loginBySocial, |
| | | getUserInfo, |
| | | logout, |
| | | refreshToken, |
| | | getButtons, |
| | | loginInfoByToken |
| | | } from '@/api/user' |
| | | import {getTopMenu, getRoutes} from '@/api/system/menu' |
| | | import md5 from 'js-md5' |
| | | |
| | |
| | | $farmId: 0 |
| | | }, |
| | | actions: { |
| | | loginInfoByToken({commit}) { |
| | | return new Promise((resolve,reject) => { |
| | | loginInfoByToken().then(res => { |
| | | const data = res.data |
| | | if (data.code == 200) { |
| | | commit('SET_TOKEN', data.data.access_token) |
| | | commit('SET_REFRESH_TOKEN', data.data.refresh_token) |
| | | commit('SET_TENANT_ID', data.data.tenant_id) |
| | | commit('SET_USER_INFO', data.data) |
| | | commit('DEL_ALL_TAG') |
| | | commit('CLEAR_LOCK') |
| | | |
| | | } else { |
| | | Message({ |
| | | message: data.error_description, |
| | | type: 'error' |
| | | }) |
| | | } |
| | | resolve(); |
| | | }).catch(error => { |
| | | reject(error); |
| | | }) |
| | | }) |
| | | }, |
| | | //根据用户名登录 |
| | | LoginByUsername({commit}, userInfo) { |
| | | return new Promise((resolve, reject) => { |
| | |
| | | }, |
| | | SET_USER_INFO: (state, userInfo) => { |
| | | if (validatenull(userInfo.avatar)) { |
| | | userInfo.avatar = "/img/bg/mg.png"; |
| | | userInfo.avatar = "/zhny-web/img/bg/mg.png"; |
| | | } |
| | | state.userInfo = userInfo; |
| | | setStore({name: 'userInfo', content: state.userInfo}) |
| | |
| | | content, |
| | | type, |
| | | } = params; |
| | | if (name == 'token' || name == 'refreshToken') { |
| | | window.sessionStorage.setItem(name, content); |
| | | window.localStorage.setItem(name, content); |
| | | if (name == 'token') { |
| | | window.sessionStorage.setItem('token', content); |
| | | window.localStorage.setItem('token', content); |
| | | } |
| | | if (name == 'refreshToken') { |
| | | window.sessionStorage.setItem('refresh_token', content); |
| | | window.localStorage.setItem('refresh_token', content); |
| | | } |
| | | name = keyName + name |
| | | let obj = { |