Files
aio-hl-new/src/vuex/modules/user.js
2023-04-07 17:41:38 +08:00

81 lines
2.0 KiB
JavaScript

import * as types from '../types'
import { getStore, setStore } from '@config/utils.js'
const state = {
accountId: getStore('accountId') || '',
accountName: getStore('accountName') || '',
userName: getStore('userName') || '',
deptName: getStore('deptName') || '',
userInfo: getStore('userInfo') ? getStore('userInfo') : '',
saveToken: getStore('saveToken') || ''
}
const getters = {
accountId: state => state.accountId,
accountName: state => state.accountName,
userName: state => state.userName,
deptName: state => state.deptName,
userInfo: state => state.userInfo,
saveToken: state => state.saveToken
}
const actions = {
setUserInfo ({ commit }, res) {
setStore('accountId', res.account_id)
setStore('accountName', res.account_name)
setStore('userName', res.user_name)
setStore('deptName', res.dept_name)
commit(types.SET_USER_INFO, res)
},
setSignOut ({ commit }) {
localStorage.removeItem('accountId')
localStorage.removeItem('accountName')
localStorage.removeItem('userName')
localStorage.removeItem('deptName')
commit(types.SET_SIGN_OUT)
},
saveUserInfo ({commit}, res) {
setStore('userInfo', res)
commit(types.SAVE_USER_INFO, res)
},
delUserInfo ({commit}, res) {
localStorage.removeItem('userInfo')
commit(types.DEL_USER_INFO, res)
},
saveToken ({commit}, res) {
setStore('saveToken', res)
commit(types.SAVE_TOKEN, res)
}
}
const mutations = {
[types.SET_USER_INFO] (state, res) {
state.accountId = res.account_id
state.accountName = res.account_name
state.userName = res.user_name
state.deptName = res.dept_name
},
[types.SET_SIGN_OUT] (state) {
state.accountId = ''
state.accountName = ''
state.userName = ''
state.deptName = ''
},
[types.SAVE_USER_INFO] (state, res) {
state.userInfo = res
},
[types.DEL_USER_INFO] (state, res) {
state.userInfo = res
},
[types.SAVE_TOKEN] (state, res) {
state.saveToken = res
}
}
export default {
state,
getters,
actions,
mutations
}