user.js 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147
  1. import {
  2. login,
  3. lineLogin,
  4. logout,
  5. getInfo
  6. } from '@/api/login'
  7. import {
  8. getToken,
  9. setToken,
  10. removeToken
  11. } from '@/utils/auth'
  12. const state = {
  13. token: getToken(),
  14. name: null, //用户名
  15. userId: null, //用户ID
  16. nickName:null,//用户昵称
  17. userInfo: null, //用户基本信息
  18. deptId: 101, //全局deptId home页面未登录状态使用
  19. distributionId:null,//分销人ID
  20. language:'ja',//语言
  21. companyinfo:{},
  22. }
  23. const mutations = {
  24. //---新的数据---
  25. //存储token
  26. SET_TOKEN: (state, token) => {
  27. state.token = token
  28. },
  29. SET_NAME: (state, name) => {
  30. state.name = name
  31. },
  32. SET_USERID(state, userId) {
  33. state.userId = userId
  34. },
  35. //用户基本信息
  36. SET_USERINFO: (state, data) => {
  37. state.userInfo = data
  38. },
  39. //储存depId
  40. SET_DEP_ID: (state, data) => {
  41. state.deptId = data
  42. },
  43. SET_DISTR_BUTION_ID: (state, data) => {
  44. state.distributionId = data
  45. },
  46. SET_NICK_NAME: (state, data) => {
  47. state.nickName = data
  48. },
  49. SET_LANGUAGE: (state, data) => {
  50. state.language = data
  51. },
  52. SET_COMPANY_INFO_DATA: (state, data) => {
  53. state.companyinfo = data
  54. },
  55. }
  56. const actions = {
  57. // 登录
  58. Login({
  59. commit
  60. }, userInfo) {
  61. const username = userInfo.phone.trim()
  62. const password = userInfo.password
  63. return new Promise((resolve, reject) => {
  64. login({username, password}).then(res => {
  65. setToken(res.msg)
  66. commit('SET_TOKEN', res.msg)
  67. resolve(res)
  68. }).catch(error => {
  69. reject(error)
  70. })
  71. })
  72. },
  73. LineLogin({
  74. commit
  75. }, userInfo) {
  76. const username = userInfo.username.trim()
  77. const password = userInfo.password
  78. const name = userInfo.name
  79. const liffId = userInfo.liffId
  80. return new Promise((resolve, reject) => {
  81. lineLogin({username, password, name, liffId}).then(res => {
  82. setToken(res.data.token)
  83. commit('SET_TOKEN', res.data.token)
  84. commit('SET_COMPANY_INFO_DATA', res.data.companyinfo)
  85. resolve(res)
  86. }).catch(error => {
  87. reject(error)
  88. })
  89. })
  90. },
  91. // 获取用户信息
  92. GetInfo({
  93. commit,
  94. state
  95. }) {
  96. return new Promise((resolve, reject) => {
  97. getInfo().then(res => {
  98. const user = res.data
  99. commit('SET_NAME', user.name);//用户名
  100. commit('SET_USERID', user.id);//用户ID
  101. commit('SET_DEP_ID', user.deptId);//deptId
  102. commit('SET_USERINFO', user);//用户基本信息
  103. resolve(res)
  104. }).catch(error => {
  105. reject(error)
  106. })
  107. })
  108. },
  109. // // 退出系统
  110. // LogOut({
  111. // commit,
  112. // state
  113. // }) {
  114. // return new Promise((resolve, reject) => {
  115. // logout(state.token).then(() => {
  116. // commit('SET_TOKEN', '')
  117. // commit('SET_ROLES', [])
  118. // commit('SET_PERMISSIONS', [])
  119. // removeToken()
  120. // resolve()
  121. // }).catch(error => {
  122. // reject(error)
  123. // })
  124. // })
  125. // },
  126. // // 前端 登出
  127. // FedLogOut({
  128. // commit
  129. // }) {
  130. // return new Promise(resolve => {
  131. // commit('SET_TOKEN', '')
  132. // removeToken()
  133. // resolve()
  134. // })
  135. // }
  136. }
  137. export default {
  138. namespaced: true,
  139. mutations,
  140. state,
  141. actions
  142. }