| import { createStore } from 'vuex' | 
| import { getTreeList, getUserInfo } from '@/apis' | 
| import { equipment } from '@/utils/utils' | 
| import { pageCount } from '@/apis/agencyAPI' | 
|   | 
| const userInfo = JSON.parse(<string>localStorage.getItem('UserInfo')) | 
| const Menu = JSON.parse(<string>localStorage.getItem('MenuList')) | 
| const env = JSON.parse(<string>localStorage.getItem('env')) | 
| const companyId = localStorage.getItem('companyId') | 
|   | 
| export default createStore({ | 
|   state: { | 
|     // 项目入口环境 DD / H5 | 
|     env: env ? env : null, | 
|   | 
|     // 是否需要适配苹果底部安全距离 | 
|     type: null, | 
|   | 
|     // 用户信息 | 
|     userInfo: userInfo ? userInfo : {}, | 
|   | 
|     // 菜单权限 | 
|     Menu: Menu ? Menu : [], | 
|   | 
|     // 待办数量 | 
|     upcomingNum: { | 
|       d: 0, | 
|       y: 0 | 
|     }, | 
|   | 
|     // 企业id | 
|     companyId: companyId ? companyId : null | 
|   }, | 
|   mutations: { | 
|     // 设置用户信息 | 
|     setUserInfo (state, data) { | 
|       state.userInfo = data | 
|       window.localStorage.setItem('UserInfo', JSON.stringify(data)) | 
|     }, | 
|     // 设置菜单栏权限 | 
|     setMenu (state, data) { | 
|       state.Menu = data | 
|       window.localStorage.setItem('MenuList', JSON.stringify(data)) | 
|     }, | 
|     // 设置项目入库 | 
|     setEntrance (state, data) { | 
|       state.env = data | 
|       window.localStorage.setItem('env', JSON.stringify(data)) | 
|     }, | 
|     // 设置机型 | 
|     setType (state, data) { | 
|       state.type = data | 
|     }, | 
|     // 更新代办数量 | 
|     setNum (state, val) { | 
|       state.upcomingNum.d = val.d | 
|       state.upcomingNum.y = val.y | 
|     }, | 
|     // 获取企业id | 
|     setCompany(state, id) { | 
|       state.companyId = id | 
|       window.localStorage.setItem('companyId', id) | 
|     } | 
|   }, | 
|   actions: { | 
|     // 向后端获取菜单栏权限 | 
|     async getMenuList (content, type) { | 
|       let res = await getTreeList({ type: type }) | 
|       if (res.code === 200) { | 
|         content.commit('setMenu', res.data) | 
|       } | 
|     }, | 
|     // 向后端获取个人信息 | 
|     async getUserInfos (content): Promise<any> { | 
|       let res = await getUserInfo() | 
|       if (res.code === 200) { | 
|         content.commit('setUserInfo', res.data) | 
|         return true | 
|       } | 
|     }, | 
|     // 判断手机机型 | 
|     mobilePhoneModel (content): void { | 
|       content.commit('setType', equipment()) | 
|     }, | 
|     // 获取代办数量 | 
|     async getUpcomingNum (content) { | 
|       let res = await pageCount({}) | 
|       if (res.code === 200) { | 
|         content.commit('setNum', {d: res.data.startNum, y: res.data.endNum}) | 
|       } | 
|     } | 
|   } | 
| }) |