user.js 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  1. import user from '../../core/user.js';
  2. const state = {
  3. accessToken: null,
  4. info: null,
  5. showLoginModal: false,
  6. tempParentId: 0,
  7. showAttention: false,
  8. showAttentionTwo:false,
  9. sign: {
  10. mobile: '',
  11. pic_captcha: '',
  12. sms_captcha: '',
  13. validate_code_id: -1
  14. },
  15. isSign: false
  16. };
  17. const getters = {
  18. accessToken(state) {
  19. return state.accessToken;
  20. },
  21. info(state) {
  22. return state.info;
  23. },
  24. showLoginModal(state) {
  25. return state.showLoginModal;
  26. },
  27. tempParentId(state) {
  28. return state.tempParentId;
  29. },
  30. is_vip(state) {
  31. return state.is_vip_card_user;
  32. },
  33. showAttention(state) {
  34. return state.showAttention;
  35. },
  36. showAttentionTwo(state) {
  37. return state.showAttentionTwo;
  38. },
  39. sign(state) {
  40. return state.sign;
  41. },
  42. isSign(state) {
  43. return state.isSign;
  44. }
  45. };
  46. const mutations = {
  47. accessToken(state, data) {
  48. state.accessToken = data;
  49. },
  50. info(state, data) {
  51. state.info = data;
  52. },
  53. showLoginModal(state, data) {
  54. state.showLoginModal = data;
  55. },
  56. tempParentId(state, data) {
  57. state.tempParentId = data;
  58. },
  59. showAttention(state, data) {
  60. state.showAttention = data;
  61. },
  62. showAttentionTwo(state, data) {
  63. state.showAttentionTwo = data;
  64. },
  65. sign(state, data) {
  66. state.sign = data;
  67. },
  68. isSign(state, data) {
  69. state.isSign = data;
  70. },
  71. };
  72. const actions = {
  73. sign(context, data) {
  74. context.commit('sign', data);
  75. },
  76. isSign(context, data) {
  77. context.commit('isSign', data);
  78. },
  79. accessToken(context) {
  80. if (!user.isLogin()) {
  81. context.commit('accessToken', null);
  82. }
  83. user.getAccessToken().then(accessToken => {
  84. context.commit('accessToken', accessToken);
  85. });
  86. },
  87. info(context, options) {
  88. if (!user.isLogin()) {
  89. context.commit('accessToken', null);
  90. }
  91. user.getAccessToken().then(accessToken => {
  92. context.commit('accessToken', accessToken);
  93. user.getInfo(options).then(data => {
  94. context.commit('info', data);
  95. });
  96. }).catch((err) => {
  97. context.commit('showLoginModal', true);
  98. });
  99. },
  100. refreshInfo(context) {
  101. context.commit('accessToken', null);
  102. },
  103. refresh(context) {
  104. if (!user.isLogin()) {
  105. context.commit('accessToken', null);
  106. }
  107. user.getAccessToken().then(accessToken => {
  108. context.commit('accessToken', accessToken);
  109. user.getInfo({
  110. refresh: true,
  111. }).then(data => {
  112. context.commit('info', data);
  113. }).catch(e => {
  114. });
  115. }).catch(e => {
  116. });
  117. },
  118. setTempParentId(context, data) {
  119. context.commit('tempParentId', data);
  120. },
  121. loadAccessTokenFormCache(context) {
  122. if (context.accessToken) return;
  123. user.getAccessToken({
  124. cacheOnly: true,
  125. }).then(e => {
  126. if (!e) return;
  127. context.commit('accessToken', e);
  128. });
  129. },
  130. logout(context) {
  131. context.commit('accessToken', null);
  132. user.loginByToken(null);
  133. },
  134. showAttention(context, data) {
  135. context.commit('showAttention', data);
  136. },
  137. showAttentionTwo(context, data) {
  138. context.commit('showAttentionTwo', data);
  139. }
  140. };
  141. export default {
  142. namespaced: true,
  143. state,
  144. getters,
  145. mutations,
  146. actions
  147. }