From 62b6a7fac3f2acde70b578431147c4a01f19c182 Mon Sep 17 00:00:00 2001
From: 黎星凯 <13949086503@163.com>
Date: 星期一, 15 四月 2024 09:07:05 +0800
Subject: [PATCH] bug修改

---
 admin-web/src/store/modules/user.js |  421 +++++++++++++++++++++++++++-------------------------
 1 files changed, 220 insertions(+), 201 deletions(-)

diff --git a/admin-web/src/store/modules/user.js b/admin-web/src/store/modules/user.js
index 4910810..ca252b3 100644
--- a/admin-web/src/store/modules/user.js
+++ b/admin-web/src/store/modules/user.js
@@ -1,231 +1,250 @@
-import {getInfo, login, logout,getCurInfo} from '@/api/user';
-import {getToken, removeToken,setUserInfo, setToken,getUser,getUserDetail,setUserDetail,setCPass} from '@/utils/auth';
+import {changeSLoginInfo, getCurInfo, getInfo, login, logout} from '@/api/user';
+import {
+    getToken,
+    getUser,
+    getUserDetail,
+    removeToken,
+    setCPass,
+    setToken,
+    setUserDetail,
+    setUserInfo
+} from '@/utils/auth';
 import router, {resetRouter} from '@/router';
 import {isLoginApi} from '@/api/system/sms';
 import Cookies from 'js-cookie';
 import {getQueryString} from '@/libs/wechat';
 import {Loading} from 'element-ui';
 import {encrypt} from '@/utils/jsencrypt'
-import store from "@/store";
 
 const state = {
-  info: getUser(),
-  userInfo:getUserDetail(),//鐢ㄦ埛璇︾粏淇℃伅
-  token: getToken(),
-  userId:'',
-  name: '',
-  avatar: '',
-  introduction: '',
-  roles: [],
-  isLogin: Cookies.get('isLogin'),
-  permissions: [],
-  myButtonPermission:[],
-  captcha: {
-    captchaVerification: '',
-    secretKey: '',
-    token: '',
-  }, //婊戝潡楠岃瘉token
+    info: getUser(),
+    userInfo: getUserDetail(),//鐢ㄦ埛璇︾粏淇℃伅
+    token: getToken(),
+    userId: '',
+    name: '',
+    avatar: '',
+    introduction: '',
+    roles: [],
+    isLogin: Cookies.get('isLogin'),
+    permissions: [],
+    myButtonPermission: [],
+    captcha: {
+        captchaVerification: '',
+        secretKey: '',
+        token: '',
+    }, //婊戝潡楠岃瘉token
 };
 
 const mutations = {
-  SET_USER_INFO:(state, info)=>{
-    // 璁剧疆璇︾粏淇℃伅
-    state.userInfo = info
-    setUserDetail(info)
-  },
-  SET_MYBUTTONPERMISSION: (state, myButtonPermission) => {
-    state.myButtonPermission = myButtonPermission
-  },
-  SET_TOKEN: (state, token) => {
-    state.token = token;
-    setToken(token)
-  },
-  SET_USERINFO: (state, user) =>{
-    // 淇濆瓨鐢ㄦ埛淇℃伅
-    state.info = user
-    setUserInfo(user)
-  },
-  SET_ISLOGIN: (state, isLogin) => {
-    state.isLogin = isLogin;
-    Cookies.set(isLogin);
-  },
-  SET_INTRODUCTION: (state, introduction) => {
-    state.introduction = introduction;
-  },
-  SET_USERID: (state, id) => {
-    state.userId = id;
-  },
-  SET_NAME: (state, name) => {
-    state.name = name;
-  },
-  SET_AVATAR: (state, avatar) => {
-    state.avatar = avatar;
-  },
-  SET_ROLES: (state, roles) => {
-    state.roles = roles;
-  },
-  SET_PERMISSIONS: (state, permissions) => {
-    state.permissions = permissions;
-  },
-  SET_CAPTCHA: (state, captcha) => {
-    state.captcha = captcha;
-  }
+    SET_USER_INFO: (state, info) => {
+        // 璁剧疆璇︾粏淇℃伅
+        state.userInfo = info
+        setUserDetail(info)
+    },
+    SET_MYBUTTONPERMISSION: (state, myButtonPermission) => {
+        state.myButtonPermission = myButtonPermission
+    },
+    SET_TOKEN: (state, token) => {
+        state.token = token;
+        setToken(token)
+    },
+    SET_USERINFO: (state, user) => {
+        // 淇濆瓨鐢ㄦ埛淇℃伅
+        state.info = user
+        setUserInfo(user)
+    },
+    SET_ISLOGIN: (state, isLogin) => {
+        state.isLogin = isLogin;
+        Cookies.set(isLogin);
+    },
+    SET_INTRODUCTION: (state, introduction) => {
+        state.introduction = introduction;
+    },
+    SET_USERID: (state, id) => {
+        state.userId = id;
+    },
+    SET_NAME: (state, name) => {
+        state.name = name;
+    },
+    SET_AVATAR: (state, avatar) => {
+        state.avatar = avatar;
+    },
+    SET_ROLES: (state, roles) => {
+        state.roles = roles;
+    },
+    SET_PERMISSIONS: (state, permissions) => {
+        state.permissions = permissions;
+    },
+    SET_CAPTCHA: (state, captcha) => {
+        state.captcha = captcha;
+    }
 };
 
 const actions = {
-  // user login
-  login({ commit }, userInfo) {
-    // const { account, pwd, key, code, wxCode } = userInfo;
-    const username = userInfo.account.trim()
-    // const password = userInfo.password
-    const password = encrypt(userInfo.password)
-    const code = userInfo.code
-    const uuid = userInfo.uuid
-    const loginType = userInfo.loginType
-    const verifyType = userInfo.verifyType
-    Loading.service();
-    return new Promise((resolve, reject) => {
-      // login(userInfo)
-      login(username, password, code, uuid, loginType, verifyType)
-        .then((data) => {
-          let loadingInstance = Loading.service();
-          loadingInstance.close();
-          commit('SET_TOKEN', data.token);
-          commit('SET_USERINFO', data.userInfo);
-          getCurInfo().then(res=>{
-            commit('SET_USER_INFO',res)
-          })
-          resolve();
-        })
-        .catch((error) => {
-          reject(error);
+    // user login
+    login({commit}, userInfo) {
+        // const { account, pwd, key, code, wxCode } = userInfo;
+        const username = userInfo.account.trim()
+        // const password = userInfo.password
+        const password = encrypt(userInfo.password)
+        const code = userInfo.code
+        const uuid = userInfo.uuid
+        const loginType = userInfo.loginType
+        const verifyType = userInfo.verifyType
+        Loading.service();
+        return new Promise((resolve, reject) => {
+            // login(userInfo)
+            login(username, password, code, uuid, loginType, verifyType)
+                .then((data) => {
+                    let loadingInstance = Loading.service();
+                    loadingInstance.close();
+                    commit('SET_TOKEN', data.token);
+                    commit('SET_USERINFO', data.userInfo);
+                    getCurInfo().then(res => {
+                        commit('SET_USER_INFO', res)
+                        resolve();
+
+                      changeSLoginInfo().then(res => {
+                        commit('SET_USER_INFO', res)
+                        resolve();
+                      }).catch((error) => {
+                        reject(error);
+                      })
+
+
+                    }).catch((error) => {
+                        reject(error);
+                    })
+                })
+                .catch((error) => {
+                    reject(error);
+                });
         });
-    });
-  },
+    },
 
-  // 鐭俊鏄惁鐧诲綍
-  isLogin({ commit }, userInfo) {
-    return new Promise((resolve, reject) => {
-      isLoginApi()
-        .then(async (res) => {
-          commit('SET_ISLOGIN', res.isLogin);
-          resolve(res);
-        })
-        .catch((res) => {
-          commit('SET_ISLOGIN', false);
-          reject(res);
+    // 鐭俊鏄惁鐧诲綍
+    isLogin({commit}, userInfo) {
+        return new Promise((resolve, reject) => {
+            isLoginApi()
+                .then(async (res) => {
+                    commit('SET_ISLOGIN', res.isLogin);
+                    resolve(res);
+                })
+                .catch((res) => {
+                    commit('SET_ISLOGIN', false);
+                    reject(res);
+                });
         });
-    });
-  },
+    },
 
-  // get user info
-  getInfo({ commit, state }) {
-    return new Promise((resolve, reject) => {
-      getInfo(state.token)
-        .then(data => {
-          if (!data) {
-            reject('Verification failed, please Login again.');
-          }
-          let roles = data.roleIds;
-          if (!roles || roles.length <= 0) {
-            reject('getInfo: roles must be a non-null array!');
-          }
-          // 鑾峰彇骞惰缃慨鏀瑰瘑鐮佺殑鐘舵��
-          setCPass(data.force_change_pass)
-          if( data.force_change_pass ){
-            router.push({ path: '/resetPwd' });
-            reject(data);
-          }
-          commit('SET_USERID', data.id);
-          commit('SET_ROLES', roles);
-          commit('SET_NAME', data.account);
-          commit('SET_AVATAR', 'http://kaifa.crmeb.net/system/images/admin_logo.png');
-          commit('SET_INTRODUCTION', data.realName);
-          commit('SET_PERMISSIONS', data.permissions); //鏉冮檺鏍囪瘑
-          resolve(data);
-        })
-        .catch((error) => {
-          reject(error);
+    // get user info
+    getInfo({commit, state}) {
+        return new Promise((resolve, reject) => {
+            getInfo(state.token)
+                .then(data => {
+                    if (!data) {
+                        reject('Verification failed, please Login again.');
+                    }
+                    let roles = data.roleIds;
+                    if (!roles || roles.length <= 0) {
+                        reject('getInfo: roles must be a non-null array!');
+                    }
+                    // 鑾峰彇骞惰缃慨鏀瑰瘑鐮佺殑鐘舵��
+                    setCPass(data.force_change_pass)
+                    if (data.force_change_pass) {
+                        router.push({path: '/resetPwd'});
+                        reject(data);
+                    }
+                    commit('SET_USERID', data.id);
+                    commit('SET_ROLES', roles);
+                    commit('SET_NAME', data.account);
+                    commit('SET_AVATAR', 'http://kaifa.crmeb.net/system/images/admin_logo.png');
+                    commit('SET_INTRODUCTION', data.realName);
+                    commit('SET_PERMISSIONS', data.permissions); //鏉冮檺鏍囪瘑
+                    resolve(data);
+                })
+                .catch((error) => {
+                    reject(error);
+                });
         });
-    });
-  },
+    },
 
-  // user logout
-  logout({ commit, state, dispatch }) {
-    Loading.service();
-    return new Promise((resolve, reject) => {
-      logout(state.token)
-        .then(() => {
-          let loadingInstance = Loading.service();
-          loadingInstance.close();
-          commit('SET_TOKEN', '');
-          commit('SET_ROLES', []);
-          commit('SET_PERMISSIONS', []);
-          commit('SET_CONNECTION_CLEAR', null) // 鏂紑閾炬帴
-          removeToken();
-          resetRouter();
-          // localStorage.clear();
-          Cookies.remove('storeStaffList');
-          Cookies.remove('JavaInfo');
-          localStorage.clear('sidebarRouters');
-          sessionStorage.removeItem('token');
-          // reset visited views and cached views
-          // to fixed https://github.com/PanJiaChen/vue-element-admin/issues/2485
-          dispatch('tagsView/delAllViews', null, { root: true });
+    // user logout
+    logout({commit, state, dispatch}) {
+        Loading.service();
+        return new Promise((resolve, reject) => {
+            logout(state.token)
+                .then(() => {
+                    let loadingInstance = Loading.service();
+                    loadingInstance.close();
+                    commit('SET_TOKEN', '');
+                    commit('SET_ROLES', []);
+                    commit('SET_PERMISSIONS', []);
+                    commit('SET_CONNECTION_CLEAR', null) // 鏂紑閾炬帴
+                    removeToken();
+                    resetRouter();
+                    // localStorage.clear();
+                    Cookies.remove('storeStaffList');
+                    Cookies.remove('JavaInfo');
+                    localStorage.clear('sidebarRouters');
+                    sessionStorage.removeItem('token');
+                    // reset visited views and cached views
+                    // to fixed https://github.com/PanJiaChen/vue-element-admin/issues/2485
+                    dispatch('tagsView/delAllViews', null, {root: true});
 
-          resolve();
-        })
-        .catch((error) => {
-          reject(error);
+                    resolve();
+                })
+                .catch((error) => {
+                    reject(error);
+                });
         });
-    });
-  },
+    },
 
-  // remove token
-  resetToken({ commit }) {
-    return new Promise((resolve) => {
-      commit('SET_TOKEN', '');
-      commit('SET_ROLES', []);
-      removeToken();
-      resolve();
-    });
-  },
-  // // 璁剧疆token
-  // setToken({ commit }, state) {
-  //   return new Promise((resolve) => {
-  //     commit('SET_TOKEN', state.token);
-  //     // Cookies.set('JavaInfo', JSON.stringify(state));
-  //     setToken(data.token);
-  //     resolve();
-  //   });
-  // },
+    // remove token
+    resetToken({commit}) {
+        return new Promise((resolve) => {
+            commit('SET_TOKEN', '');
+            commit('SET_ROLES', []);
+            removeToken();
+            resolve();
+        });
+    },
+    // // 璁剧疆token
+    // setToken({ commit }, state) {
+    //   return new Promise((resolve) => {
+    //     commit('SET_TOKEN', state.token);
+    //     // Cookies.set('JavaInfo', JSON.stringify(state));
+    //     setToken(data.token);
+    //     resolve();
+    //   });
+    // },
 
-  // dynamically modify permissions
-  changeRoles({ commit, dispatch }, role) {
-    return new Promise(async (resolve) => {
-      // const token = role + '-token';
-      //
-      // commit('SET_TOKEN', token);
-      // // setToken(token);
-      //
-      const { roles } = await dispatch('getInfo');
-      // resetRouter();
-      // generate accessible routes map based on roles
-      const accessRoutes = await dispatch('permission/generateRoutes', roles, { root: true });
-      // dynamically add accessible routes
-      router.addRoutes(accessRoutes);
+    // dynamically modify permissions
+    changeRoles({commit, dispatch}, role) {
+        return new Promise(async (resolve) => {
+            // const token = role + '-token';
+            //
+            // commit('SET_TOKEN', token);
+            // // setToken(token);
+            //
+            const {roles} = await dispatch('getInfo');
+            // resetRouter();
+            // generate accessible routes map based on roles
+            const accessRoutes = await dispatch('permission/generateRoutes', roles, {root: true});
+            // dynamically add accessible routes
+            router.addRoutes(accessRoutes);
 
-      // reset visited views and cached views
-      dispatch('tagsView/delAllViews', null, { root: true });
+            // reset visited views and cached views
+            dispatch('tagsView/delAllViews', null, {root: true});
 
-      resolve();
-    });
-  },
+            resolve();
+        });
+    },
 };
 
 export default {
-  namespaced: true,
-  state,
-  mutations,
-  actions,
+    namespaced: true,
+    state,
+    mutations,
+    actions,
 };

--
Gitblit v1.9.1