Переглянути джерело

update ----
findbyuserid传入参数

QuietShadow 3 роки тому
батько
коміт
0e93c5fa7a

+ 2 - 1
src/components/main.vue

@@ -681,7 +681,8 @@ export default {
     beforeCreate () {
         // 前期无后台测试用
         // /*
-        store.dispatch('getOwnMenuUrl').then(res => {
+        let companyId = window.top.localStorage.getItem('companyId');
+        store.dispatch('getOwnMenuUrl', { companyId: companyId }).then(res => {
             if (res.code === '0') {
                 localStorage.setItem('ownPrivilege', JSON.stringify(res.data))
             }

+ 10 - 1
src/config/routerBefore.js

@@ -132,7 +132,16 @@ const routerBefore = function (router, constantRouterMap) {
     function DoneCookie (to, from, next, flag) {
       if (getCookie('accessToken')) { // 判断是否有token
         if (window.top.document.URL === window.document.URL && !window.top.localStorage.getItem('ownPrivilege')) {
-          store.dispatch('getOwnMenuUrl');
+          let userInfo = JSON.parse(getCookie('userInfo'));
+          setCookie('userId', userInfo.userId);
+          let companyId = window.top.localStorage.getItem('companyId');
+          let menuId = window.top.localStorage.getItem('activeMenu');
+          // 查询所有注释掉
+          // store.dispatch('getAllMenuUrl', { companyId: companyId });
+          // store.dispatch('getOwnMenuUrl', { userId: userId, menuId: menuId });
+          store.dispatch('getOwnMenuUrl', { companyId: companyId });
+          console.log('1111');
+          // store.dispatch('getOwnMenuUrl');
         }
         if (to.path === '/login') {
           next({

+ 7 - 2
src/store/index.js

@@ -167,8 +167,13 @@ const actions = {
   getOwnMenuUrl ({
     commit,
     state
-  }) {
-    let res = axios.get(proPath + 'v1/sysmenus/findFunctionMenusByUserId');
+  }, obj) {
+    obj = JSON.parse(JSON.stringify(obj));
+    let firstOne = window.localStorage.getItem('companys') ? JSON.parse(window.localStorage.getItem('companys'))[0].id : '';
+    let companyId = window.localStorage.getItem('companyId') ? window.localStorage.getItem('companyId') : firstOne;
+    let res = (obj && obj.companyId) ? axios.get(proPath + 'v1/sysmenus/findFunctionMenusByUserId?companyId=' + obj.companyId) : axios.get(proPath + 'v1/sysmenus/findFunctionMenusByUserId?companyId=' + obj.companyId);
+      // let res = (obj && obj.userId && obj.menuId) ? axios.get(proPath + 'v1/sysmenus/findFuncByUAndM?userId=' + obj.userId + '&menuId=' + obj.menuId) : axios.get(proPath + 'v1/sysmenus/findFuncByUAndM?userId=' + obj.userId + '&menuId=' + obj.menuId);
+    // let res = axios.get(proPath + 'v1/sysmenus/findFunctionMenusByUserId');
     res.then(res => {
       window.top.localStorage.setItem('ownPrivilege', JSON.stringify(res.data));
       //   放入东西

+ 12 - 0
src/views/index/components/login.vue

@@ -215,8 +215,20 @@ export default {
                         setCookie('accessToken', res.data.accessToken, cookieTime, '/');
                         setCookie('refreshToken', res.data.refreshToken, cookieTime, '/');
                         setCookie('loginName', this.loginForm.loginName);
+                        setCookie('userId', res.data.user.userId);
                         setCookie('userInfo', JSON.stringify(res.data.user));
+                        setCookie('account', res.data.user.userName);
                         let sRedirect = this.$route.query.redirect;
+                        let userInfo = res.data.user;
+                        if (userInfo.sysCompanys) {
+                          // 公司列表过多时cookie存放失败,存至localStorage
+                          // setCookie('companys', JSON.stringify(userInfo.sysCompanys));
+                          // window.localStorage.setItem('sysGroup', JSON.stringify(userInfo.sysGroup));
+                          // window.localStorage.setItem('companys', JSON.stringify(userInfo.sysCompanys));
+                          if (userInfo.hasOwnProperty('sysCompanys')) {
+                            window.localStorage.setItem('companyId', userInfo.sysCompanys[0].id);
+                          }
+                        }
                         console.log(sRedirect);
                         if (sRedirect) {
                           this.$router.push({ path: sRedirect });