index.js 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. import Vue from 'vue'
  2. import Vuex from 'vuex'
  3. import { login, queryFloor, queryfmapID } from '@/api/login.js'
  4. import { queryBrand } from '@/api/public.js'
  5. import axios from 'axios'
  6. Vue.use(Vuex)
  7. export default new Vuex.Store({
  8. state: {
  9. ssoToken: 'admin:lengqiang',
  10. // ssoToken: null,
  11. isPreview: false,
  12. lastRoute: '',
  13. isrequestAuth: true, // 是否请求登录校验接口
  14. permissions: [], //权限信息 "GLSMS_VIEW":"说明书查看"、"GLSMS_SYMBOL_MANAGE": "图例库管理"、 "GLSMS_PLANARGRAPH_MANAGE":"平面图维护"
  15. plazas: [], //项目列表
  16. userInfo: {
  17. employeename: '', //用户名称:艾宇;
  18. orgCode: '',
  19. username: 'lengqiang', //账户名称
  20. },
  21. plazaId: '1000423', //项目Id
  22. projectName: '', //全局项目名称
  23. floorsArr: [], //楼层数组
  24. floorSelect: [], //楼层下拉框
  25. fmapID: '',
  26. haveFengMap: false, //是否有蜂鸟地图的数据
  27. isMessage: true, //是否有发布的图
  28. scpzTable: [], //土建系统图例展示
  29. legendTable: [], //除土建系统图例展示
  30. remarksText: '', //备注
  31. bunkObj: {}, // 铺位名称
  32. currentFloor: {}, //当前选中的楼层信息
  33. },
  34. getters: {
  35. isPreview: (state) => state.isPreview,
  36. ssoToken: (state) => state.ssoToken,
  37. lastRoute: (state) => state.lastRoute,
  38. floorsArr: (state) => state.floorsArr,
  39. floorSelect: (state) => state.floorSelect,
  40. plazaId: (state) => state.plazaId,
  41. plazas: (state) => state.plazas,
  42. fmapID: (state) => state.fmapID,
  43. haveFengMap: (state) => state.haveFengMap,
  44. isMessage: (state) => state.isMessage,
  45. scpzTable: (state) => state.scpzTable,
  46. legendTable: (state) => state.legendTable,
  47. remarksText: (state) => state.remarksText,
  48. bunkObj: (state) => state.bunkObj,
  49. },
  50. mutations: {
  51. SETISPREVIEW(state, data) {
  52. state.isPreview = data
  53. },
  54. SETSSOTOKEN(state, data) {
  55. state.ssoToken = data
  56. },
  57. // 设置是否登陆校验
  58. SETISREQUESTtAUTH(state, palyload) {
  59. state.isrequestAuth = palyload
  60. },
  61. SETLASTROUTER(state, data) {
  62. state.lastRoute = data
  63. },
  64. // 设置相关权限信息
  65. SETAUTHMSG(state, palyload) {
  66. state.permissions = palyload.permissions
  67. state.plazas = palyload.plazas
  68. state.userInfo.employeename = palyload.employeename
  69. state.userInfo.orgCode = palyload.orgCode
  70. state.userInfo.username = palyload.username
  71. },
  72. SETISMESSAGE(state, data) {
  73. state.isMessage = data
  74. },
  75. SETFLOORS(state, data) {
  76. state.floorsArr = data
  77. if (data.length > 0) {
  78. data.forEach((e) => {
  79. let obj = {
  80. id: e.gname,
  81. name: e.code,
  82. }
  83. state.floorSelect.push(obj)
  84. })
  85. }
  86. },
  87. SETMAPID(state, data) {
  88. state.fmapID = data
  89. },
  90. SETHAVEFENGMAP(state) {
  91. state.haveFengMap = true
  92. },
  93. // 土建的图例
  94. SETSCPZTABLE(state, data) {
  95. state.scpzTable = data
  96. },
  97. SETLEGENDTABLE(state, data) {
  98. state.legendTable = data
  99. },
  100. SETREMARKSTEXT(state, data) {
  101. state.remarksText = data
  102. },
  103. SETBUNKOBJ(state, data) {
  104. state.bunkObj = data
  105. },
  106. SETCURRENTFLOOR(state, data) {
  107. state.currentFloor = data
  108. },
  109. },
  110. actions: {
  111. // 获取项目列表、userId
  112. async getUserInfo({ commit }, palyload) {
  113. await login({ username: palyload }).then((res) => {
  114. if (res.result == 'success') {
  115. commit('SETISREQUESTtAUTH', true)
  116. commit('SETAUTHMSG', res)
  117. } else {
  118. console.log('接口报错!!')
  119. commit('SETISREQUESTtAUTH', false)
  120. }
  121. })
  122. },
  123. getFloors(context) {
  124. queryFloor({ plazaId: context.state.plazaId }).then((res) => {
  125. if (res.result == 'success') {
  126. context.commit('SETFLOORS', res.data)
  127. }
  128. })
  129. },
  130. async getfmapID(context) {
  131. await queryfmapID({
  132. mapId: context.state.plazaId,
  133. }).then((res) => {
  134. context.commit('SETMAPID', `${context.state.plazaId}_${res.mapVersion}`)
  135. })
  136. },
  137. async getBrand(context) {
  138. let data = {
  139. plazaId: context.state.plazaId,
  140. }
  141. await queryBrand({ data }).then((res) => {
  142. let obj = {}
  143. if (res.data.data) {
  144. let Data = res.data.data
  145. Data.forEach((i) => {
  146. obj[i.bunkdesc] = i
  147. })
  148. }
  149. context.commit('SETBUNKOBJ', obj)
  150. })
  151. },
  152. },
  153. modules: {},
  154. })