| | |
| | | // src/stores/useUserStore.js |
| | | import { |
| | | loginByUsername, |
| | | logout |
| | | logout, |
| | | refreshToken, |
| | | } from '@/api/user' |
| | | import { defineStore } from 'pinia' |
| | | import md5 from 'js-md5' |
| | | import { |
| | | ElMessage |
| | | } from 'element-plus' |
| | | import { validatenull } from '@/utils/validate' |
| | | |
| | | export const useLogin = defineStore('login', { |
| | | // 存储状态的地方,相当于 Vuex 的 state |
| | |
| | | }) |
| | | }) |
| | | }, |
| | | |
| | | RefreshToken (userInfo = {}) { |
| | | return new Promise((resolve, reject) => { |
| | | refreshToken( |
| | | this.refreshToken, |
| | | this.tenantId, |
| | | !validatenull(userInfo) ? userInfo.deptId : this.userInfo.dept_id, |
| | | !validatenull(userInfo) ? userInfo.roleId : this.userInfo.role_id |
| | | ) |
| | | .then(res => { |
| | | const data = res.data |
| | | this.SET_TOKEN(data.access_token) |
| | | this.SET_REFRESH_TOKEN(data.refresh_token) |
| | | this.SET_USER_INFO(data) |
| | | resolve() |
| | | }) |
| | | .catch(error => { |
| | | reject(error) |
| | | }) |
| | | }) |
| | | }, |
| | | |
| | | removeToken () { |
| | | this.SET_TOKEN('') |
| | | }, |
| | | |
| | | removeRefreshToken () { |
| | | this.SET_REFRESH_TOKEN('') |
| | | } |
| | | }, |
| | | |
| | | persist: { |