人民医院前端

user.js 2.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. import {
  2. http
  3. } from '@/utils/request';
  4. import {
  5. getToken,
  6. setToken,
  7. removeToken
  8. } from '@/utils/auth'
  9. const user = {
  10. state: {
  11. token: getToken(),
  12. userName: "",
  13. userCode: "",
  14. userId: "",
  15. deptId: "",
  16. deptName: ''
  17. },
  18. mutations: {
  19. SET_TOKEN: (state, token) => {
  20. state.token = token
  21. },
  22. SET_USERCODE(state, userCode) {
  23. state.userCode = userCode
  24. },
  25. SET_USERID(state, userId) {
  26. state.userId = userId
  27. },
  28. SET_USERNAME(state, userName) {
  29. state.userName = userName
  30. },
  31. SET_DEPTID(state, deptId) {
  32. state.deptId = deptId
  33. },
  34. SET_DEPTNAME(state, deptName) {
  35. state.deptName = deptName
  36. }
  37. },
  38. actions: {
  39. // 登录
  40. Login({
  41. commit
  42. }, userInfo) {
  43. return new Promise((resolve, reject) => {
  44. http.post("/Home/Login", userInfo).then((response) => {
  45. setToken(response.data.token)
  46. commit('SET_TOKEN', response.data.token)
  47. resolve(response)
  48. })
  49. .catch((e) => {
  50. reject(e)
  51. })
  52. })
  53. },
  54. // 钉钉免登录
  55. Dinglogin({
  56. commit
  57. }, userInfo) {
  58. return new Promise((resolve, reject) => {
  59. http.post("Home/Dinglogin", userInfo).then((response) => {
  60. setToken(response.data)
  61. commit('SET_TOKEN', response.data)
  62. resolve(response)
  63. })
  64. .catch((e) => {
  65. reject(e)
  66. })
  67. })
  68. },
  69. // 获取用户信息 GetInfo
  70. GetInfo({
  71. commit
  72. }) {
  73. return new Promise((resolve, reject) => {
  74. http.get("Index/GetCurrentUser").then((response) => {
  75. if (response.state.toLowerCase() === "success") {
  76. let data = response.data
  77. // 用户信息
  78. commit('SET_USERCODE', data.User.F_UserCode)
  79. commit('SET_USERNAME', data.User.F_UserName)
  80. commit('SET_USERID', data.User.F_UserId)
  81. // 部门信息
  82. if(data.Dept){
  83. commit('SET_DEPTID', data.Dept.F_DeptId)
  84. commit('SET_DEPTNAME', data.Dept.F_DeptName)
  85. }
  86. // 角色信息 data.Role
  87. }
  88. resolve(response)
  89. })
  90. .catch((e) => {
  91. console.log(e)
  92. })
  93. })
  94. },
  95. // 前端 登出
  96. FedLogOut({
  97. commit
  98. }) {
  99. return new Promise(resolve => {
  100. commit('SET_TOKEN', '')
  101. removeToken()
  102. resolve()
  103. })
  104. }
  105. }
  106. }
  107. export default user