Advertisement
phucbienvan

auth

Nov 7th, 2021 (edited)
44
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.35 KB | None | 0 0
  1. import router from '@/router'
  2.  
  3. export const SET_LOGIN_INFO = "SET_LOGIN_INFO";
  4. export const SET_IS_FIRST_LOGIN = "SET_IS_FIRST_LOGIN";
  5. export const SET_REDIRECT_URL = "SET_REDIRECT_URL";
  6. export const RESET_IMG_QUERY = "RESET_IMG_QUERY";
  7. export const AUTH_WORKER = "AUTH_WORKER";
  8. export const AUTH_COMPANY = "AUTH_COMPANY";
  9.  
  10. const state = {
  11. loggedIn: false,
  12. loginInfo: {},
  13. imgQuery: "",
  14. isFirstLogin: false,
  15. redirectURL: null,
  16. setLogoImage: '',
  17. updImage: '',
  18. token: '',
  19. };
  20.  
  21. const getters = {
  22. updImage: state => state.updImage,
  23. setLogoImage: state => state.setLogoImage,
  24. redirectURL: state => state.redirectURL,
  25. loggedIn: state => state.loggedIn,
  26. loginInfo: state => state.loginInfo,
  27. imgQuery: state => state.imgQuery,
  28. isFirstLogin: state => state.isFirstLogin,
  29. isCompany: state => state.loggedIn && !!state.loginInfo.user_company_id,
  30. isWorker: state => state.loggedIn && !!state.loginInfo.user_id,
  31. isEight: (state, getters, rootState, rootGetters) => {
  32. return (
  33. getters.loggedIn &&
  34. getters.loginInfo.company_id &&
  35. getters.loginInfo.company_id ===
  36. rootGetters["master/constData"].ADMIN_COMPANY_ID.toString()
  37. );
  38. },
  39. token: state => state.token,
  40. };
  41.  
  42. const mutations = {
  43. [SET_LOGIN_INFO](state, data) {
  44. state.loggedIn = !!data;
  45. state.loginInfo = data;
  46. },
  47. [SET_IS_FIRST_LOGIN](state, data) {
  48. state.isFirstLogin = data;
  49. },
  50. [SET_REDIRECT_URL](state, data) {
  51. state.redirectURL = data;
  52. },
  53. [RESET_IMG_QUERY](state) {
  54. const date = new Date();
  55. const num = date.getTime();
  56. state.imgQuery = num;
  57. },
  58. [AUTH_WORKER](state){
  59. if(!(state.loginInfo && state.loginInfo['user_id'] && state.loginInfo['user_id'] != 'undefined')){
  60. router.push({name:'worker.login'})
  61. }
  62. },
  63. [AUTH_COMPANY](state){
  64. if(!(state.loginInfo && state.loginInfo['user_company_id'] && state.loginInfo['user_company_id'] != 'undefined')){
  65. router.push({name:'company.login'})
  66. }
  67. },
  68. updateImage(state, data) {
  69. state.updImage = data;
  70. },
  71. setUpdateImage(state, data) {
  72. state.setLogoImage = data;
  73. },
  74. auth_success(state, token){
  75. state.status = 'success'
  76. state.token = token
  77. },
  78. };
  79.  
  80. const actions = {
  81. async getLoginInfo({ commit }, data) {
  82. const response = await $_axios.get("/getLoginInfo");
  83. console.log(response)
  84. commit(RESET_IMG_QUERY);
  85. commit(SET_LOGIN_INFO, response);
  86. },
  87. async login({ commit, dispatch }, data) {
  88. await dispatch("getLoginInfo");
  89.  
  90. // dispatch("notification/initNotifications", null, { root: true });
  91. // dispatch("message/initMessages", null, { root: true });
  92. },
  93. resetImgQuery({ commit }) {
  94. commit(RESET_IMG_QUERY);
  95. },
  96. setIsFirstLogin({ commit }, data) {
  97. commit(SET_IS_FIRST_LOGIN, data);
  98. },
  99. setRedirectURL({ commit }, data) {
  100. commit(SET_REDIRECT_URL, data);
  101. },
  102. authWorker({ commit }, data){
  103. commit(AUTH_WORKER, data);
  104. },
  105. authCompany({ commit }, data){
  106. commit(AUTH_COMPANY, data);
  107. },
  108. updateImage({ commit }, data) {
  109. commit('updateImage', data);
  110. },
  111. async setUpdateImage({ commit, dispatch }, data) {
  112. commit('setUpdateImage', data);
  113. // await dispatch("getLoginInfo");
  114. }
  115. };
  116.  
  117. const auth = {
  118. namespaced: true,
  119. state,
  120. getters,
  121. actions,
  122. mutations
  123. };
  124.  
  125. export default auth;
  126.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement