user.js 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. import user from '../../core/user.js';
  2. const state = {
  3. accessToken: null,
  4. info: null,
  5. showLoginModal: false,
  6. tempParentId: 0,
  7. };
  8. const getters = {
  9. accessToken(state) {
  10. return state.accessToken;
  11. },
  12. info(state) {
  13. return state.info;
  14. },
  15. showLoginModal(state) {
  16. return state.showLoginModal;
  17. },
  18. tempParentId(state) {
  19. return state.tempParentId;
  20. },
  21. is_vip(state) {
  22. return state.is_vip_card_user;
  23. }
  24. };
  25. const mutations = {
  26. accessToken(state, data) {
  27. state.accessToken = data;
  28. },
  29. info(state, data) {
  30. state.info = data;
  31. },
  32. showLoginModal(state, data) {
  33. state.showLoginModal = data;
  34. },
  35. tempParentId(state, data) {
  36. state.tempParentId = data;
  37. },
  38. memberInfo(state,level,name){
  39. if(state.info.identity){
  40. state.info.identity.member_level=level
  41. state.info.identity.member_name=name
  42. }
  43. }
  44. };
  45. const actions = {
  46. accessToken(context) {
  47. if (!user.isLogin()) {
  48. context.commit('accessToken', null);
  49. }
  50. user.getAccessToken().then(accessToken => {
  51. context.commit('accessToken', accessToken);
  52. });
  53. },
  54. info(context, options) {
  55. if (!user.isLogin()) {
  56. context.commit('accessToken', null);
  57. }
  58. user.getAccessToken().then(accessToken => {
  59. context.commit('accessToken', accessToken);
  60. user.getInfo(options).then(data => {
  61. context.commit('info', data);
  62. });
  63. });
  64. },
  65. refreshMember(context,level,name){
  66. if (user.isLogin()) {
  67. context.commit('memberInfo',level,name);
  68. }
  69. },
  70. refreshInfo(context) {
  71. context.commit('accessToken', null);
  72. },
  73. refresh(context) {
  74. if (!user.isLogin()) {
  75. context.commit('accessToken', null);
  76. }
  77. user.getAccessToken().then(accessToken => {
  78. context.commit('accessToken', accessToken);
  79. user.getInfo({
  80. refresh: true,
  81. }).then(data => {
  82. context.commit('info', data);
  83. }).catch(e => {
  84. });
  85. }).catch(e => {
  86. });
  87. },
  88. setTempParentId(context, data) {
  89. context.commit('tempParentId', data);
  90. },
  91. loadAccessTokenFormCache(context) {
  92. if (context.accessToken) return;
  93. user.getAccessToken({
  94. cacheOnly: true,
  95. }).then(e => {
  96. if (!e) return;
  97. context.commit('accessToken', e);
  98. });
  99. },
  100. logout(context) {
  101. context.commit('accessToken', null);
  102. user.loginByToken(null);
  103. },
  104. };
  105. export default {
  106. namespaced: true,
  107. state,
  108. getters,
  109. mutations,
  110. actions
  111. }