|
@@ -0,0 +1,53 @@
|
|
|
+import { ajaxGetIdentityList, ajaxSwitchIdentity } from '@jy/api/modules/user'
|
|
|
+
|
|
|
+export default {
|
|
|
+ namespaced: true,
|
|
|
+ state: () => ({
|
|
|
+ IdentityList: []
|
|
|
+ }),
|
|
|
+ mutations: {
|
|
|
+ setIdentityList (state, data) {
|
|
|
+ state.IdentityList = [].concat(data)
|
|
|
+ }
|
|
|
+ },
|
|
|
+ actions: {
|
|
|
+ /**
|
|
|
+ * 切换设置用户身份
|
|
|
+ * @param commit
|
|
|
+ * @param data
|
|
|
+ * @returns {AxiosPromise<any>}
|
|
|
+ */
|
|
|
+ async switchIdentity ({ commit }, data) {
|
|
|
+ return ajaxSwitchIdentity(data)
|
|
|
+ },
|
|
|
+ /**
|
|
|
+ * 获取用户身份列表
|
|
|
+ * @param commit
|
|
|
+ * @returns {Promise<void>}
|
|
|
+ */
|
|
|
+ async getIdentityList ({ commit }) {
|
|
|
+ try {
|
|
|
+ const { error_code: code, data = [] } = await ajaxGetIdentityList()
|
|
|
+ if (code === 0) {
|
|
|
+ commit('setIdentityList', data)
|
|
|
+ }
|
|
|
+ } catch (error) {
|
|
|
+ console.warn(error)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ getters: {
|
|
|
+ /**
|
|
|
+ * 是否存在多个身份
|
|
|
+ * @param state
|
|
|
+ * @returns {boolean}
|
|
|
+ */
|
|
|
+ isNotOneIdentity (state) {
|
|
|
+ return state.setIdentityList.length > 1
|
|
|
+ },
|
|
|
+ currentIdentityName (state) {
|
|
|
+ const current = state.setIdentityList.filter(v => v.checked)[0]
|
|
|
+ return current?.name || ''
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|