dedsudiyu vor 2 Monaten
Ursprung
Commit
7641ec501a

+ 40 - 12
src/layout/components/Navbar.vue

@@ -5,11 +5,11 @@
       <img :src="circularLogo">
       <p>{{VUE_APP_TITLE}}</p>
     </div>
-    <top-nav id="topmenu-container" class="topmenu-container" v-if="topNav"/>
+    <top-nav ref="topNav" id="topmenu-container" class="topmenu-container" v-if="topNav"/>
     <!--按钮-->
     <div class="nav-icon-max-box">
       <!--消息-->
-      <div class="message-box" @click="goPage('message')">
+      <div class="message-box" @click="goPage('individualMessage')">
         <span class="iconfont iconfont-a icon-xitongxiaoxi"></span>
         <p class="message-num-position-p" v-if="$store.state.user.messageNum>0"></p>
       </div>
@@ -28,9 +28,9 @@
           <p class="el-icon-arrow-down" style="font-size:20px;color:#fff;margin:32px 0;"></p>
         </div>
         <el-dropdown-menu slot="dropdown" style="margin:0;">
-          <router-link to="/mine">
-            <el-dropdown-item>个人中心</el-dropdown-item>
-          </router-link>
+          <el-dropdown-item divided @click.native="goPage('individualCenter')">
+            <span>个人中心</span>
+          </el-dropdown-item>
           <el-dropdown-item divided @click.native="logout">
             <span>退出登录</span>
           </el-dropdown-item>
@@ -41,10 +41,13 @@
 </template>
 
 <script>
-import { mapGetters } from 'vuex'
-import TopNav from './TopNav'
+  import { mapGetters } from 'vuex'
+  import TopNav from './TopNav'
+  import { constantRoutes } from '@/router'
+  import store from '@/store'
+  import { xmlRequestLink } from '@/utils/menuLink'
 
-export default {
+  export default {
   components: {
     TopNav
   },
@@ -65,14 +68,39 @@ export default {
       get() {
         return this.$store.state.settings.topNav
       }
-    }
+    },
   },
   methods: {
     goPage(type){
-      if(type == 'message'){
-        this.$router.push({ path: '/message' });
-      }else if(type == 'home'){
+      let self = this;
+      if(type == 'home'){
         this.$router.push({ path: '/home' });
+      }else if(type == 'individualMessage' || type == 'individualCenter'){
+        let topMenus = this.$store.state.permission.topbarRouters;
+        let obj = this.forPage(topMenus,type,true);
+        store.dispatch('settings/setPageName', obj.obj?obj.obj.meta.title:obj.parent.meta.title)
+        self.$store.commit("SET_SIDEBAR_ROUTERS", obj.obj?obj.obj.children:obj.parent.children);
+        this.$refs['topNav'].goPage(obj.obj,obj.parent,obj.item)
+      }
+    },
+    forPage(list,pathName){
+      let self = this;
+      for (let i = 0; i < list.length; i++) {
+        if (list[i].name == pathName) {
+          return list[i]
+        } else if (list[i].children) {
+          let text = self.forPage(list[i].children,pathName)
+          if(text){
+            if(!text.parent){
+              return {
+                item: text,
+                parent: list[i],
+              }
+            }
+            text.obj = list[i]
+            return text
+          }
+        }
       }
     },
     async logout() {

+ 41 - 3
src/layout/components/TopNav/index.vue

@@ -91,9 +91,9 @@ export default {
     },
     // 默认激活的菜单
     activeMenu() {
-      if(this.$route.path == '/message' || this.$route.path == '/mine'){
-        return
-      }
+      // if(this.$route.path == '/message' || this.$route.path == '/integratedManagement/individualCenter'){
+      //   return
+      // }
       const path = this.$route.path;
       let activePath = this.defaultRouter();
       if (path.lastIndexOf("/") > 0) {
@@ -154,6 +154,44 @@ export default {
       }
       return router;
     },
+    goPage(obj,parent,item){
+      console.log('obj',obj)
+      console.log('parent',parent)
+      console.log('item',item)
+      //obj最上级数据 parent目标父级数据 item目标数据
+      if(obj){
+        console.log('1')
+        if(obj.isFrame){
+          xmlRequestLink(obj);
+        }else{
+          if(obj.children){
+            console.log('11',parent.path+item.path)
+            this.currentIndex = obj.path;
+            this.activeRoutes(obj.path);
+            this.$router.push({
+              path: parent.path+'/'+item.path
+            });
+          }else{
+            this.msgError('这是一个空目录')
+          }
+        }
+      }else{
+        console.log('2')
+        if(parent.isFrame){
+          xmlRequestLink(parent);
+        }else{
+          if(parent.children){
+            this.currentIndex = parent.path;
+            this.activeRoutes(parent.path);
+            this.$router.push({
+              path: item.path
+            });
+          }else{
+            this.msgError('这是一个空目录')
+          }
+        }
+      }
+    },
     // 菜单选择事件
     handleSelect(item) {
       if(item.isFrame){

+ 0 - 12
src/router/index.js

@@ -68,18 +68,6 @@ export const constantRoutes = [
     component: Layout,
     redirect: 'index',
     children: [
-      {
-        path: 'mine',
-        component: (resolve) => require(['@/views/basicsModules/mine'], resolve),
-        name: 'mine',
-        meta: { title: '个人中心', icon: 'user' }
-      },
-      {
-        path: 'message',
-        component: (resolve) => require(['@/views/basicsModules/message.vue'], resolve),
-        name: 'message',
-        meta: { title: '消息', icon: 'ZD_icon_03', affix: true }
-      },
       {
         path: '403',
         component: (resolve) => require(['@/views/basicsModules/403'], resolve),

+ 2 - 1
src/views/basicsModules/components/homeNavbar.vue

@@ -86,10 +86,11 @@ export default {
         this.$router.push({ path: '/home' });
       }else if(type == 'user'){
         for(let i=0;i<self.routeData.length;i++){
+          console.log('self.routeData',self.routeData)
           if(!self.routeData[i].hidden&&self.routeData[i].name != 'Https://www.sxitdlc.com'){
             store.dispatch('settings/setPageName', self.routeData[i].meta.title)
             this.$store.commit("SET_SIDEBAR_ROUTERS", self.routeData[i].children);
-            this.$router.push({ path: '/mine' });
+            this.$router.push({ path: '/integratedManagement/individualCenter' });
             break
           }
         }

+ 2 - 2
src/views/basicsModules/login.vue

@@ -413,7 +413,7 @@ export default {
                     if(!routeData[i].hidden&&routeData[i].name != 'Https://www.sxitdlc.com'){
                       store.dispatch('settings/setPageName', routeData[i].meta.title)
                       self.$store.commit("SET_SIDEBAR_ROUTERS", routeData[i].children);
-                      self.$router.push({ path: '/comprehensive/system/mine' });
+                      self.$router.push({ path: '/integratedManagement/individualCenter' });
                       break
                     }
                   }
@@ -483,7 +483,7 @@ export default {
                       if(!routeData[i].hidden&&routeData[i].name != 'Https://www.sxitdlc.com'){
                         store.dispatch('settings/setPageName', routeData[i].meta.title)
                         self.$store.commit("SET_SIDEBAR_ROUTERS", routeData[i].children);
-                        self.$router.push({ path: '/comprehensive/system/mine' });
+                        self.$router.push({ path: '/integratedManagement/individualCenter' });
                         break
                       }
                     }

+ 40 - 121
vue.config.js

@@ -231,74 +231,73 @@ module.exports = {
           enforce:true,
           reuseExistingChunk: true
         },
-        comprehensive: {
-          name: 'chunk-comprehensive',
-          test: resolve('src/views/comprehensive'),
+        basicsModules: {
+          name: 'chunk-basicsModules',
+          test: resolve('src/views/basicsModules'),
           priority: 0,
           minSize: 0,
           minChunks: 1,
           enforce:true,
           reuseExistingChunk: true
         },
-        dashboard: {
-          name: 'chunk-dashboard',
-          test: resolve('src/views/dashboard'),
+        chemicalManage: {
+          name: 'chunk-chemicalManage',
+          test: resolve('src/views/chemicalManage'),
           priority: 0,
           minSize: 0,
           minChunks: 1,
           enforce:true,
           reuseExistingChunk: true
         },
-        medicUniversity_3_1: {
-          name: 'chunk-medicUniversity-3_1',
-          test: resolve('src/views/medicUniversity-3_1'),
+        creditViolation: {
+          name: 'chunk-creditViolation',
+          test: resolve('src/views/creditViolation'),
           priority: 0,
           minSize: 0,
           minChunks: 1,
           enforce:true,
           reuseExistingChunk: true
         },
-        mine: {
-          name: 'chunk-mine',
-          test: resolve('src/views/mine'),
+        emergencyManagement: {
+          name: 'chunk-emergencyManagement',
+          test: resolve('src/views/emergencyManagement'),
           priority: 0,
           minSize: 0,
           minChunks: 1,
           enforce:true,
           reuseExistingChunk: true
         },
-        oneKeyOutfire: {
-          name: 'chunk-oneKeyOutfire',
-          test: resolve('src/views/oneKeyOutfire'),
+        gasManage3_0: {
+          name: 'chunk-gasManage3_0',
+          test: resolve('src/views/gasManage3_0'),
           priority: 0,
           minSize: 0,
           minChunks: 1,
           enforce:true,
           reuseExistingChunk: true
         },
-        studentViews: {
-          name: 'chunk-studentViews',
-          test: resolve('src/views/studentViews'),
+        gasManage_syd: {
+          name: 'chunk-gasManage_syd',
+          test: resolve('src/views/gasManage_syd'),
           priority: 0,
           minSize: 0,
           minChunks: 1,
           enforce:true,
           reuseExistingChunk: true
         },
-        system: {
-          name: 'chunk-system',
-          test: resolve('src/views/system'),
+        hierarchicalControl: {
+          name: 'chunk-hierarchicalControl',
+          test: resolve('src/views/hierarchicalControl'),
           priority: 0,
           minSize: 0,
           minChunks: 1,
           enforce:true,
           reuseExistingChunk: true
         },
-        /************新优化************/
         //基础模块
-        basicsModules: {
-          name: 'chunk-basicsModules',
-          test: resolve('src/views/basicsModules'),
+        integratedManagement: {
+          name: 'chunk-integratedManagement',
+          test: resolve('src/views/integratedManagement'),
           priority: 0,
           minSize: 0,
           minChunks: 1,
@@ -306,9 +305,9 @@ module.exports = {
           reuseExistingChunk: true
         },
         //信用管理
-        creditViolation: {
-          name: 'chunk-creditViolation',
-          test: resolve('src/views/creditViolation'),
+        iotDevice: {
+          name: 'chunk-iotDevice',
+          test: resolve('src/views/iotDevice'),
           priority: 0,
           minSize: 0,
           minChunks: 1,
@@ -316,9 +315,9 @@ module.exports = {
           reuseExistingChunk: true
         },
         //安全准入
-        secureAccess: {
-          name: 'chunk-secureAccess',
-          test: resolve('src/views/secureAccess'),
+        safetyCheck: {
+          name: 'chunk-safetyCheck',
+          test: resolve('src/views/safetyCheck'),
           priority: 0,
           minSize: 0,
           minChunks: 1,
@@ -326,9 +325,9 @@ module.exports = {
           reuseExistingChunk: true
         },
         //分级管控
-        hierarchicalControl: {
-          name: 'chunk-hierarchicalControl',
-          test: resolve('src/views/hierarchicalControl'),
+        safetyEducationExam: {
+          name: 'chunk-safetyEducationExam',
+          test: resolve('src/views/safetyEducationExam'),
           priority: 0,
           minSize: 0,
           minChunks: 1,
@@ -336,9 +335,9 @@ module.exports = {
           reuseExistingChunk: true
         },
         //气瓶管理-简化版
-        gasManage_syd: {
-          name: 'chunk-gasManage_syd',
-          test: resolve('src/views/gasManage_syd'),
+        secureAccess: {
+          name: 'chunk-secureAccess',
+          test: resolve('src/views/secureAccess'),
           priority: 0,
           minSize: 0,
           minChunks: 1,
@@ -346,36 +345,16 @@ module.exports = {
           reuseExistingChunk: true
         },
         //气瓶管理-完全版
-        gasManage3_0: {
-          name: 'chunk-gasManage3_0',
-          test: resolve('src/views/gasManage3_0'),
-          priority: 0,
-          minSize: 0,
-          minChunks: 1,
-          enforce:true,
-          reuseExistingChunk: true
-        },
-        //安全检查(旧)
         securityCheck: {
-          name: 'chunk-securityCheckDemo',
-          test: resolve('src/views/securityCheckDemo'),
-          priority: 0,
-          minSize: 0,
-          minChunks: 1,
-          enforce:true,
-          reuseExistingChunk: true
-        },
-        //安全教育与考试
-        safetyEducationExam: {
-          name: 'chunk-safetyEducationExam',
-          test: resolve('src/views/safetyEducationExam'),
+          name: 'chunk-securityCheck',
+          test: resolve('src/views/securityCheck'),
           priority: 0,
           minSize: 0,
           minChunks: 1,
           enforce:true,
           reuseExistingChunk: true
         },
-        //服务中心
+        //安全检查(旧)
         serviceCenter: {
           name: 'chunk-serviceCenter',
           test: resolve('src/views/serviceCenter'),
@@ -385,7 +364,7 @@ module.exports = {
           enforce:true,
           reuseExistingChunk: true
         },
-        //系统管理
+        //安全教育与考试
         systemManagement: {
           name: 'chunk-systemManagement',
           test: resolve('src/views/systemManagement'),
@@ -395,66 +374,6 @@ module.exports = {
           enforce:true,
           reuseExistingChunk: true
         },
-        //综合管理
-        integratedManagement: {
-          name: 'chunk-integratedManagement',
-          test: resolve('src/views/integratedManagement'),
-          priority: 0,
-          minSize: 0,
-          minChunks: 1,
-          enforce:true,
-          reuseExistingChunk: true
-        },
-        //物联设备
-        iotDevice: {
-          name: 'chunk-iotDevice',
-          test: resolve('src/views/iotDevice'),
-          priority: 0,
-          minSize: 0,
-          minChunks: 1,
-          enforce:true,
-          reuseExistingChunk: true
-        },
-        //应急预警
-        emergencyManagement: {
-          name: 'chunk-emergencyManagement',
-          test: resolve('src/views/emergencyManagement'),
-          priority: 0,
-          minSize: 0,
-          minChunks: 1,
-          enforce:true,
-          reuseExistingChunk: true
-        },
-        //化学品管理
-        chemicalManage: {
-          name: 'chunk-chemicalManage',
-          test: resolve('src/views/chemicalManage'),
-          priority: 0,
-          minSize: 0,
-          minChunks: 1,
-          enforce:true,
-          reuseExistingChunk: true
-        },
-        //化学品管理
-        safetyCheck: {
-          name: 'chunk-safetyCheck',
-          test: resolve('src/views/safetyCheck'),
-          priority: 0,
-          minSize: 0,
-          minChunks: 1,
-          enforce:true,
-          reuseExistingChunk: true
-        },
-        //化学品管理
-        safetyCheckDemo: {
-          name: 'chunk-safetyCheckDemo',
-          test: resolve('src/views/safetyCheckDemo'),
-          priority: 0,
-          minSize: 0,
-          minChunks: 1,
-          enforce:true,
-          reuseExistingChunk: true
-        },
       }
     })
     config.optimization.runtimeChunk('single'),{