index.js 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146
  1. import { axiosHttp } from '~plugins/axios-nuxt'
  2. import cityService from '~plugins/city-service'
  3. var axios = null
  4. export const actions = {
  5. // 全局服务初始化
  6. nuxtServerInit (store, context) {
  7. // console.log(axios)
  8. // 检查设备类型
  9. axios = axiosHttp(store, context.req)
  10. const route = context.route
  11. const isServer = context.isServer
  12. const isDev = context.isDev
  13. const userAgent = isServer ? req.headers['user-agent'] :context.req.headers['user-agent']
  14. const isMobile = /(iPhone|iPad|Opera Mini|Android.*Mobile|NetFront|PSP|BlackBerry|Windows Phone)/ig.test(userAgent)
  15. const cookie = isServer ? req.headers['cookie'] : null
  16. store.commit('option/SET_MOBILE_LAYOUT', isMobile)
  17. store.commit('option/SET_USER_AGENT', userAgent)
  18. store.commit('option/SET_COOKIES', cookie)
  19. // 保存appId和returnUrl信息
  20. // 保存链接?之后的所有键值对以字符串形式
  21. let fullPath = route.fullPath.lastIndexOf('?') !== -1 ? route.fullPath.slice(route.fullPath.lastIndexOf('?')) : ''
  22. store.commit('option/SET_FULLPATH', fullPath)
  23. if (route.query) {
  24. let appId = route.query.appId || ''
  25. let returnUrl = route.query.returnURL || ''
  26. let baseUrl = route.query.baseUrl || ''
  27. let inviteSpaceUU = route.query.inviteSpaceUU || ''
  28. let inviteUserUU = route.query.inviteUserUU || ''
  29. let invitationTime = route.query.invitationTime || ''
  30. store.commit('option/SET_APPID', appId)
  31. store.commit('option/SET_RETURNURL', returnUrl)
  32. store.commit('option/SET_BASEURL', baseUrl)
  33. store.commit('option/SET_INVITESPACEUU', inviteSpaceUU)
  34. store.commit('option/SET_INVITEUSERUU', inviteUserUU)
  35. store.commit('option/SET_INVITATIONTIME', invitationTime)
  36. }
  37. // 设置跳转的URL
  38. if (!isDev) {
  39. store.commit('option/UPDATE_URL', 'http://192.168.253.66:8081/')
  40. }
  41. return Promise.all([
  42. // 全局数据
  43. // store.dispatch('loadCarouselInfo', { client_type: 'cc', cityId: '5' }),
  44. store.dispatch('loadIsLogin'),
  45. store.dispatch('loadUserInfo')
  46. ])
  47. },
  48. // 判断是否登录
  49. loadIsLogin ({ commit }) {
  50. commit('option/REQUEST_IS_LOGIN')
  51. return axios.get('/sso/login/isLogin')
  52. .then(response => {
  53. console.log(response.data)
  54. commit('option/REQUEST_IS_LOGIN_SUCCESS', response.data)
  55. }, err => {
  56. commit('option/REQUEST_IS_LOGIN_FAILURE', err)
  57. })
  58. },
  59. // 获取用户登录信息
  60. loadUserInfo ({ commit }) {
  61. commit('option/REQUEST_USER_INFO')
  62. return axios.get('/sso/center/user/info')
  63. .then(response => {
  64. // console.log(response.data)
  65. commit('option/REQUEST_USER_INFO_SUCCESS', response.data)
  66. }, err => {
  67. commit('option/REQUEST_USER_INFO_FAILURE', err)
  68. })
  69. },
  70. // 获取成员列表信息
  71. loadMemberList ({ commit }, params = {}) {
  72. commit('cloudCenter/REQUEST_MEMBER')
  73. return axios.get('/sso/center/member/info', {params})
  74. .then(res => {
  75. commit('cloudCenter/REQUEST_MEMBER_SUCCESS', res.data)
  76. }, err => {
  77. commit('cloudCenter/REQUEST_MEMBER_FAILURE', err)
  78. })
  79. },
  80. // 获取申请列表信息
  81. loadApplyList ({commit}, params = {}) {
  82. commit('cloudCenter/REQUEST_APPLY')
  83. return axios.get('/sso/center/apply/info', {params})
  84. .then(res => {
  85. commit('cloudCenter/REQUEST_APPLY_SUCCESS', res.data)
  86. }, err => {
  87. commit('cloudCenter/REQUEST_APPLY_FAILURE', err)
  88. })
  89. },
  90. // 关键字查询企业名称
  91. searchForName ({ commit }, params = {}) {
  92. commit('search/REQUEST_KEYWORDS')
  93. return axios.get('/api/userspace/search/name', {params})
  94. .then(res => {
  95. commit('search/GET_KEYWORDS_SUCCESS', res.data)
  96. }, err => {
  97. commit('search/GET_KEYWORDS_FAILURE', err)
  98. })
  99. },
  100. // 清空企业数据
  101. restForName ({commit}) {
  102. commit('search/REST_KEYWORDS')
  103. },
  104. // 通过企业名查询企业信息
  105. searchForInfo ({commit}, params = {}) {
  106. commit('search/REQUEST_ENTERPRISE')
  107. return axios.get('/api/userspace/info/name', {params})
  108. .then(res => {
  109. commit('search/GET_ENTERPRISE_SUCCESS', res.data)
  110. }, err => {
  111. commit('search/GET_ENTERPRISE_FAILURE', err)
  112. })
  113. },
  114. // 清空查询企业信息数据
  115. restForInfo ({commit}) {
  116. commit('search/REST_ENTERPRISE')
  117. },
  118. // 获取表单配置
  119. loadFormData ({ commit }, params = {}) {
  120. commit('formConfig/REQUEST_FORMDATA')
  121. return cityService.get('/api/serve/config.action', {params})
  122. .then(response => {
  123. commit('formConfig/GET_FORMDATA_SUCCESS', response.data)
  124. }, err => {
  125. commit('formConfig/GET_FORMDATA_FAILURE', err)
  126. })
  127. },
  128. // 登录页样式
  129. GetLoginStyle ({ commit }, params = {}) {
  130. return axios.get('/sso/login/page/style', { params })
  131. .then(response => {
  132. commit('login/REQUEST_LOGIN_STYLE_SUCCESS', response.data)
  133. }, err => {
  134. commit('login/REQUEST_LOGIN_STYLE_FAILURE', err)
  135. })
  136. },
  137. // 获取协议
  138. GetAgreementUrl ({ commit }, params = {}) {
  139. return axios.get('/api/app/getAgreementUrl', { params })
  140. .then(response => {
  141. commit('login/REQUEST_AGREEMENT_URL_SUCCESS', response.data)
  142. }, err => {
  143. commit('login/REQUEST_AGREEMENT_URL_FAILURE', err)
  144. })
  145. }
  146. }