人民医院前端

user.js 1.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  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. deptName: ''
  15. },
  16. mutations: {
  17. SET_TOKEN: (state, token) => {
  18. state.token = token
  19. },
  20. SET_USERCODE(state, userCode) {
  21. state.userCode = userCode
  22. },
  23. SET_USERNAME(state, userName) {
  24. state.userName = userName
  25. },
  26. SET_DEPTNAME(state, deptName) {
  27. state.deptName = deptName
  28. }
  29. },
  30. actions: {
  31. // 登录
  32. Login({
  33. commit
  34. }, userInfo) {
  35. return new Promise((resolve, reject) => {
  36. http.post("/Home/Login", userInfo).then((response) => {
  37. setToken(response.data)
  38. commit('SET_TOKEN', response.data)
  39. resolve(response)
  40. })
  41. .catch((e) => {
  42. reject(e)
  43. })
  44. })
  45. },
  46. // 钉钉免登录
  47. Dinglogin({
  48. commit
  49. }, userInfo) {
  50. return new Promise((resolve, reject) => {
  51. http.post("Home/Dinglogin", userInfo).then((response) => {
  52. setToken(response.data)
  53. commit('SET_TOKEN', response.data)
  54. resolve(response)
  55. })
  56. .catch((e) => {
  57. reject(e)
  58. })
  59. })
  60. },
  61. // 获取用户信息 GetInfo
  62. GetInfo({
  63. commit
  64. }) {
  65. return new Promise((resolve, reject) => {
  66. http.get("Index/GetCurrentUser").then((response) => {
  67. if (response.state.toLowerCase() === "success") {
  68. let data = response.data
  69. // 用户信息
  70. commit('SET_USERCODE', data.User.F_UserCode)
  71. commit('SET_USERNAME', data.User.F_UserName)
  72. // 部门信息
  73. if(data.Dept){
  74. commit('SET_DEPTNAME', data.Dept.F_DeptName)
  75. }
  76. // 角色信息 data.Role
  77. }
  78. resolve(response)
  79. })
  80. .catch((e) => {
  81. console.log(e)
  82. })
  83. })
  84. },
  85. // 前端 登出
  86. FedLogOut({
  87. commit
  88. }) {
  89. return new Promise(resolve => {
  90. commit('SET_TOKEN', '')
  91. removeToken()
  92. resolve()
  93. })
  94. }
  95. }
  96. }
  97. export default user