index.js 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. import Vue from 'vue'
  2. import Vuex from 'vuex'
  3. import { login, queryFloor, queryfmapID } from '@/api/login.js'
  4. Vue.use(Vuex)
  5. export default new Vuex.Store({
  6. state: {
  7. isrequestAuth: false, // 是否请求登录校验接口
  8. permissions: [], //权限信息 "GLSMS_VIEW":"说明书查看"、"GLSMS_SYMBOL_MANAGE": "图例库管理"、 "GLSMS_PLANARGRAPH_MANAGE":"平面图维护"
  9. plazas: [], //项目列表
  10. userInfo: {
  11. employeename: '', //用户名称:艾宇;
  12. orgCode: '',
  13. username: 'lengqiang', //账户名称
  14. },
  15. plazaId: '1000423',
  16. projectName: '', //全局项目名称
  17. floorsArr: [], //楼层数组
  18. floorSelect: [], //楼层下拉框
  19. fmapID: '',
  20. haveFengMap: false, //是否有蜂鸟地图的数据
  21. isMessage: true,
  22. },
  23. getters: {
  24. floorsArr: (state) => state.floorsArr,
  25. floorSelect: (state) => state.floorSelect,
  26. plazaId: (state) => state.plazaId,
  27. plazas: (state) => state.plazas,
  28. fmapID: (state) => state.fmapID,
  29. haveFengMap: (state) => state.haveFengMap,
  30. isMessage: (state) => state.isMessage,
  31. },
  32. mutations: {
  33. // 设置是否登陆校验
  34. SETISREQUESTtAUTH(state, palyload) {
  35. state.isrequestAuth = palyload
  36. },
  37. // 设置相关权限信息
  38. SETAUTHMSG(state, palyload) {
  39. state.permissions = palyload.permissions
  40. state.plazas = palyload.plazas
  41. state.userInfo.employeename = palyload.employeename
  42. state.userInfo.orgCode = palyload.orgCode
  43. state.userInfo.username = palyload.username
  44. },
  45. SETISMESSAGE(state, data) {
  46. state.isMessage = data
  47. },
  48. SETFLOORS(state, data) {
  49. state.floorsArr = data
  50. if (data.length > 0) {
  51. data.forEach((e) => {
  52. let obj = {
  53. id: e.gname,
  54. name: e.code,
  55. }
  56. state.floorSelect.push(obj)
  57. })
  58. }
  59. },
  60. SETMAPID(state, data) {
  61. state.fmapID = data
  62. },
  63. SETHAVEFENGMAP(state) {
  64. state.haveFengMap = true
  65. },
  66. },
  67. actions: {
  68. // 获取项目列表、userId
  69. async getUserInfo({ commit }, palyload) {
  70. await login({
  71. username: palyload,
  72. }).then((res) => {
  73. if (res.result == 'success') {
  74. commit('SETISREQUESTtAUTH', true)
  75. commit('SETAUTHMSG', res)
  76. } else {
  77. console.log('接口报错!!')
  78. commit('SETISREQUESTtAUTH', false)
  79. }
  80. })
  81. },
  82. getFloors(context) {
  83. queryFloor({ plazaId: context.state.plazaId }).then((res) => {
  84. if (res.result == 'success') {
  85. context.commit('SETFLOORS', res.data)
  86. }
  87. })
  88. },
  89. async getfmapID(context) {
  90. await queryfmapID({
  91. mapId: context.state.plazaId,
  92. }).then((res) => {
  93. context.commit('SETMAPID', `${context.state.plazaId}_${res.mapVersion}`)
  94. })
  95. },
  96. },
  97. modules: {},
  98. })