htao-common
Version:
通用
158 lines (149 loc) • 4.08 kB
JavaScript
import {
login,
logout,
getInfo
} from '@/api/login'
import {
getToken,
setToken,
removeToken
} from '@/utils/auth'
import router from "@/router"
const user = {
state: {
token: getToken(),
name: '',
userId: null,
roleId: [],
// avatar: '',
roles: [],
permissions: [],
userInfo: {},
userState: null
},
mutations: {
SET_TOKEN: (state, token) => {
state.token = token
},
SET_NAME: (state, name) => {
state.name = name
},
// SET_AVATAR: (state, avatar) => {
// state.avatar = avatar
// },
SET_ROLES: (state, roles) => {
state.roles = roles
},
SET_PERMISSIONS: (state, permissions) => {
state.permissions = permissions
},
SET_USERINFO: (state, userInfo) => {
state.userInfo = userInfo
},
SET_USERID: (state, userId) => {
state.userId = userId
},
SET_ROLEID: (state, roleId) => {
state.roleId = roleId
},
SET_USERSTATE: (state, userState) => {
state.userState = userState
},
},
actions: {
// 登录
Login({
commit
}, userInfo) {
const loginAccount = userInfo.loginAccount.trim()
const password = userInfo.password
const code = userInfo.imgCode
const platform = 1
return new Promise((resolve, reject) => {
login(loginAccount, password, code, platform).then(res => {
if (res.code === '200') {
setToken(res.data.token)
localStorage.setItem('userId', res.data.userId)
commit('SET_TOKEN', res.data.token)
commit('SET_USERID', res.data.userId)
commit('SET_ROLEID', res.data.roleId)
resolve()
} else if (res.code === 'sys_1000002') {
setTimeout(() => {
router.push({
path: "/forgetPwd"
})
}, 1500)
} else {
throw (`${res.msg}`)
}
}).catch(error => {
reject(error)
})
})
},
// 获取用户信息
GetInfo({
commit,
state
}) {
return new Promise((resolve, reject) => {
console.log('333333333333333333')
getInfo({
userId: state.userId
}).then(res => {
console.log(state, 'stateeeeeeeeeeeeeeeeeeee')
// const user = res.user
// const avatar = (user.avatar == "" || user.avatar == null) ? require("@/assets/images/profile.jpg") : process.env.VUE_APP_BASE_API + user.avatar;
// if (res.roles && res.roles.length > 0) { // 验证返回的roles是否是一个非空数组
// commit('SET_ROLES', res.roles)
// commit('SET_PERMISSIONS', res.permissions)
// } else {
// commit('SET_ROLES', ['ROLE_DEFAULT'])
// }
// commit('SET_NAME', user.userName)
// commit('SET_USERINFO', user)
// commit('SET_AVATAR', avatar)
commit('SET_USERSTATE', res.data.content[0].userState)
resolve(res)
}).catch(error => {
reject(error)
})
})
},
// 退出系统
LogOut({
commit,
state
}) {
return new Promise((resolve, reject) => {
commit('SET_TOKEN', '')
commit('SET_USERSTATE', null)
commit('SET_ROLEID', [])
commit('SET_PERMISSIONS', [])
removeToken()
resolve()
// logout(state.token).then(() => {
// commit('SET_TOKEN', '')
// commit('SET_ROLES', [])
// commit('SET_PERMISSIONS', [])
// removeToken()
// resolve()
// }).catch(error => {
// reject(error)
// })
})
},
// 前端 登出
FedLogOut({
commit
}) {
return new Promise(resolve => {
commit('SET_TOKEN', '')
removeToken()
resolve()
})
}
}
}
export default user