user.js 3.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. "use strict";
  2. const config = require("../../config.js");
  3. const utils_storage = require("../../utils/storage.js");
  4. const utils_constant = require("../../utils/constant.js");
  5. const api_login = require("../../api/login.js");
  6. const utils_auth = require("../../utils/auth.js");
  7. const baseUrl = config.config.baseUrl;
  8. const user = {
  9. state: {
  10. token: utils_auth.getToken(),
  11. name: utils_storage.storage.get(utils_constant.constant.name),
  12. avatar: utils_storage.storage.get(utils_constant.constant.avatar),
  13. roles: utils_storage.storage.get(utils_constant.constant.roles),
  14. permissions: utils_storage.storage.get(utils_constant.constant.permissions)
  15. },
  16. mutations: {
  17. SET_TOKEN: (state, token) => {
  18. state.token = token;
  19. },
  20. SET_NAME: (state, name) => {
  21. state.name = name;
  22. utils_storage.storage.set(utils_constant.constant.name, name);
  23. },
  24. SET_AVATAR: (state, avatar) => {
  25. state.avatar = avatar;
  26. utils_storage.storage.set(utils_constant.constant.avatar, avatar);
  27. },
  28. SET_ROLES: (state, roles) => {
  29. state.roles = roles;
  30. utils_storage.storage.set(utils_constant.constant.roles, roles);
  31. },
  32. SET_PERMISSIONS: (state, permissions) => {
  33. state.permissions = permissions;
  34. utils_storage.storage.set(utils_constant.constant.permissions, permissions);
  35. }
  36. },
  37. actions: {
  38. // 登录
  39. Login({ commit }, userInfo) {
  40. console.log(">>>>進來了", userInfo);
  41. const username = userInfo.username;
  42. const password = userInfo.password;
  43. const code = userInfo.code;
  44. const uuid = userInfo.uuid;
  45. return new Promise((resolve, reject) => {
  46. api_login.login(username, password, code, uuid).then((res) => {
  47. utils_auth.setToken(res.token);
  48. commit("SET_TOKEN", res.token);
  49. resolve(res);
  50. }).catch((error) => {
  51. reject(error);
  52. });
  53. });
  54. },
  55. // 获取用户信息
  56. GetInfo({ commit, state }) {
  57. return new Promise((resolve, reject) => {
  58. api_login.getInfo().then((res) => {
  59. const user2 = res.user;
  60. const avatar = user2 == null || user2.avatar == "" || user2.avatar == null ? "@/static/images/profile.jpg" : baseUrl + user2.avatar;
  61. const username = user2 == null || user2.userName == "" || user2.userName == null ? "" : user2.userName;
  62. if (res.roles && res.roles.length > 0) {
  63. commit("SET_ROLES", res.roles);
  64. commit("SET_PERMISSIONS", res.permissions);
  65. } else {
  66. commit("SET_ROLES", ["ROLE_DEFAULT"]);
  67. }
  68. commit("SET_NAME", username);
  69. commit("SET_AVATAR", avatar);
  70. resolve(res);
  71. }).catch((error) => {
  72. reject(error);
  73. });
  74. });
  75. },
  76. // 退出系统
  77. LogOut({ commit, state }) {
  78. return new Promise((resolve, reject) => {
  79. api_login.logout().then((res) => {
  80. commit("SET_TOKEN", "");
  81. commit("SET_ROLES", []);
  82. commit("SET_PERMISSIONS", []);
  83. utils_auth.removeToken();
  84. utils_storage.storage.clean();
  85. resolve(res);
  86. }).catch((error) => {
  87. reject(error);
  88. });
  89. });
  90. }
  91. }
  92. };
  93. exports.user = user;