diff --git a/src/api/login.js b/src/api/login.js index 19fa6ed..dfc880e 100644 --- a/src/api/login.js +++ b/src/api/login.js @@ -1,67 +1,68 @@ import request from '@/utils/request' // 登录方法 -export function login(username, password, code, uuid) { - const data = { - username, - password, - code, - uuid - } - return request({ - url: '/login', - headers: { - isToken: false - }, - method: 'post', - data: data - }) +export function login(username, password, code, uuid, tenant) { + const data = { + username, + password, + code, + uuid + } + return request({ + url: '/login', + headers: { + isToken: false, + tenant + }, + method: 'post', + data: data + }) } // 注册方法 export function register(data) { - return request({ - url: '/register', - headers: { - isToken: false - }, - method: 'post', - data: data - }) + return request({ + url: '/register', + headers: { + isToken: false + }, + method: 'post', + data: data + }) } // 获取用户详细信息 export function getInfo() { - return request({ - url: '/getInfo', - method: 'get' - }) + return request({ + url: '/getInfo', + method: 'get' + }) } // 退出方法 export function logout() { - return request({ - url: '/logout', - method: 'post' - }) + return request({ + url: '/logout', + method: 'post' + }) } // 获取验证码 export function getCodeImg() { - return request({ - url: '/captchaImage', - headers: { - isToken: false - }, - method: 'get', - timeout: 20000 - }) + return request({ + url: '/captchaImage', + headers: { + isToken: false + }, + method: 'get', + timeout: 20000 + }) } // 获取路由 export const getRouters = () => { - return request({ - url: '/getRouters', - method: 'get' - }) + return request({ + url: '/getRouters', + method: 'get' + }) } \ No newline at end of file diff --git a/src/store/modules/user.js b/src/store/modules/user.js index 6d8c05f..eba9d80 100644 --- a/src/store/modules/user.js +++ b/src/store/modules/user.js @@ -1,70 +1,71 @@ -import { login, logout, getInfo } from '@/api/login' -import { getToken, setToken, removeToken } from '@/utils/auth' +import {getInfo, login, logout} from '@/api/login' +import {getToken, removeToken, setToken} from '@/utils/auth' import defAva from '@/assets/images/profile.jpg' const useUserStore = defineStore( - 'user', - { - state: () => ({ - token: getToken(), - name: '', - avatar: '', - roles: [], - permissions: [] - }), - actions: { - // 登录 - login(userInfo) { - const username = userInfo.username.trim() - const password = userInfo.password - const code = userInfo.code - const uuid = userInfo.uuid - return new Promise((resolve, reject) => { - login(username, password, code, uuid).then(res => { - setToken(res.token) - this.token = res.token - resolve() - }).catch(error => { - reject(error) - }) - }) - }, - // 获取用户信息 - getInfo() { - return new Promise((resolve, reject) => { - getInfo().then(res => { - const user = res.user - const avatar = (user.avatar == "" || user.avatar == null) ? defAva : import.meta.env.VITE_APP_BASE_API + user.avatar; + 'user', + { + state: () => ({ + token: getToken(), + name: '', + avatar: '', + roles: [], + permissions: [] + }), + actions: { + // 登录 + login(userInfo) { + const username = userInfo.username.trim() + const password = userInfo.password + const tenant = userInfo.tenant + const code = userInfo.code + const uuid = userInfo.uuid + return new Promise((resolve, reject) => { + login(username, password, code, uuid, tenant).then(res => { + setToken(res.token) + this.token = res.token + resolve() + }).catch(error => { + reject(error) + }) + }) + }, + // 获取用户信息 + getInfo() { + return new Promise((resolve, reject) => { + getInfo().then(res => { + const user = res.user + const avatar = (user.avatar == "" || user.avatar == null) ? defAva : import.meta.env.VITE_APP_BASE_API + user.avatar; - if (res.roles && res.roles.length > 0) { // 验证返回的roles是否是一个非空数组 - this.roles = res.roles - this.permissions = res.permissions - } else { - this.roles = ['ROLE_DEFAULT'] + if (res.roles && res.roles.length > 0) { // 验证返回的roles是否是一个非空数组 + this.roles = res.roles + this.permissions = res.permissions + } else { + this.roles = ['ROLE_DEFAULT'] + } + this.name = user.userName + this.avatar = avatar; + resolve(res) + }).catch(error => { + reject(error) + }) + }) + }, + // 退出系统 + logOut() { + return new Promise((resolve, reject) => { + logout(this.token).then(() => { + this.token = '' + this.roles = [] + this.permissions = [] + removeToken() + resolve() + }).catch(error => { + reject(error) + }) + }) } - this.name = user.userName - this.avatar = avatar; - resolve(res) - }).catch(error => { - reject(error) - }) - }) - }, - // 退出系统 - logOut() { - return new Promise((resolve, reject) => { - logout(this.token).then(() => { - this.token = '' - this.roles = [] - this.permissions = [] - removeToken() - resolve() - }).catch(error => { - reject(error) - }) - }) - } - } - }) + } + }) export default useUserStore diff --git a/src/views/login.vue b/src/views/login.vue index c2bb42d..1bb64a7 100644 --- a/src/views/login.vue +++ b/src/views/login.vue @@ -1,91 +1,112 @@