123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149 |
- import config from '@/config'
- import storage from '@/utils/storage'
- import constant from '@/utils/constant'
- import {
- login,
- logout,
- getInfo
- } from '@/api/login'
- import {
- getToken,
- setToken,
- removeToken,
- setUserRole,
- removeUserRole,
- setPassword,
- setUserName,
- setUserType,
- removeUserType
- } from '@/utils/auth'
- const baseUrl = config.baseUrl
- const user = {
- state: {
- token: getToken(),
- name: storage.get(constant.name),
- avatar: storage.get(constant.avatar),
- roles: storage.get(constant.roles),
- permissions: storage.get(constant.permissions),
- nickName: storage.get(constant.nickName),
- },
- mutations: {
- SET_TOKEN: (state, token) => {
- state.token = token
- },
- SET_NAME: (state, name) => {
- state.name = name
- storage.set(constant.name, name)
- },
- SET_AVATAR: (state, avatar) => {
- state.avatar = avatar
- storage.set(constant.avatar, avatar)
- },
- SET_ROLES: (state, roles) => {
- state.roles = roles
- storage.set(constant.roles, roles)
- },
- SET_PERMISSIONS: (state, permissions) => {
- state.permissions = permissions
- storage.set(constant.permissions, permissions)
- },
- SET_NICKNAME: (state, nickName) => {
- state.nickName = nickName
- storage.set(constant.nickName, nickName)
- }
- },
- actions: {
- // 登录
- Login({
- commit
- }, userInfo) {
- const username = userInfo.username.trim()
- const password = userInfo.password
- const code = userInfo.code
- const uuid = userInfo.uuid
- const type = userInfo.type
- return new Promise((resolve, reject) => {
- login(username, password, code, uuid, type).then(res => {
- setToken(res.data.token)
- setUserName(username)
- setPassword(password)
- commit('SET_TOKEN', res.data.token)
- resolve()
- }).catch(error => {
- reject(error)
- })
- })
- },
- // 获取用户信息
- GetInfo({
- commit,
- state
- }) {
- return new Promise((resolve, reject) => {
- getInfo().then(res => {
- const user = res.data.user
- const avatar = baseUrl + user.avatar
- const username = (user == null || user.userName == "" || user.userName ==
- null) ? "" : user.userName
- const nickName = (user == null || user.nickName == "" || user.nickName ==
- null) ? "" : user.nickName
-
- if (user.roles != null && user.roles.length > 0) {
- const roleList = [];
- for (var i in user.roles) {
- roleList.push(...user.roles[i].enginTypeList.split(","))
- }
- setUserRole(roleList);
- } else {
- uni.showToast({
- title: "暂未分配权限",
- icon: 'none'
- })
- return
- }
- setUserType(user.userType)
- if (res.data.roles && res.data.roles.length > 0) {
- commit('SET_ROLES', res.data.roles)
- commit('SET_PERMISSIONS', res.data.permissions)
- } else {
- commit('SET_ROLES', ['ROLE_DEFAULT'])
- }
- commit('SET_NAME', username)
- commit('SET_NICKNAME', nickName)
- commit('SET_AVATAR', avatar)
- resolve(res)
- }).catch(error => {
- reject(error)
- })
- })
- },
- // 退出系统
- LogOut({
- commit,
- state
- }) {
- return new Promise((resolve, reject) => {
- logout(state.token).then(() => {
- commit('SET_TOKEN', '')
- commit('SET_ROLES', [])
- commit('SET_PERMISSIONS', [])
- removeToken()
- removeUserRole()
- removeUserType()
- storage.clean()
- resolve()
- }).catch(error => {
- reject(error)
- })
- })
- }
- }
- }
- export default user
|