zhangyanpeng
2020-01-23 3f619a4e52661892789496f98b4e166470d29264
src/views/Home.vue
@@ -4,9 +4,9 @@
        <el-aside width="200px" style="background-color: rgb(238, 241, 246); ">
            <div style="width: 100%;height: 60px;"></div>
            <el-menu
                :default-openeds="defaultActive"
                class="el-menu-vertical-demo"
                :unique-opened="false"
                  :default-active="defaultActive"
                @select ="menuSelect"
                @open ="menuSelect"
                @close ="menuSelect"
@@ -43,6 +43,7 @@
          <el-header style="text-align: right; font-size: 15px;padding-right: 40px;">
               <i class="el-icon-user-solid"></i>
               <span>admin</span>
               <el-button size="small" type="primary" @click="Cancel">退 出</el-button>
          </el-header>
          
          <el-main style="background-color: #f7f8f9;">
@@ -63,35 +64,93 @@
      return {
         breadcrumbItems:[],
         defaultActive: [],
         navList:[
            {
               title:"首页", path:"mine",children:[]
            },
           {
             title:"项目管理", path:"0_1",children:[
               {title:"信息广场", path:"project2",children:[]},
               {title:"项目总览", path:"Overview",children:[]},
               {title:"项目分析", path:"project3",children:[]},
               {title:"归档报告", path:"project4",children:[]},
             ]
           },
           {
             title:"任务管理", path:"0_2",children:[
               {title:"任务列表", path:"calendarTask",children:[]},
             ]
           }
         ],
         defaultActive: "",
         navList:[],
      }
  },
   created() {
      let userId_ = localStorage.getItem('userId');
      if (!userId_) {
      let departId = localStorage.getItem('departId');
      if (!userId_ || !departId) {
         this.$router.push('/login');
      }
      else {
         this.defaultActive = "mine";
         this.$router.push('/mine');
         let type;
         if(departId == "100" || departId == "500") {
            type = departId;
         }else {
            type = "all";
         }
         this.getMenu(type);
      }
   },
   
  methods: {
      getMenu(userType) {
         let DayDatas = {
             all: [
               {'id': "110", 'title': "首页", 'path': "mine"}, //返回的数组字段
               {'id': "111", 'title': "项目管理", 'path': "0_111"}, //返回的数组字段
               {'id': "112", 'title': "任务管理", 'path': "0_112"},
               {'id': "111_1", 'title': "信息广场", 'path': 'square', 'parentId': "111"}, //
               {'id': "111_2", 'title': "项目总览", 'path': 'list', 'parentId': "111"}, //
               {'id': "111_3", 'title': "项目分析", 'path': 'Overview', 'parentId': "111"}, //
               {'id': "111_4", 'title': "归档报告", 'path': 'project4', 'parentId': "111"}, //
               {'id': "112_1", 'title': "任务列表", 'path': 'calendarTask', 'parentId': "112"}, //
            ],
            100: [
                  {'id': "110", 'title': "首页", 'path': "mine"}, //返回的数组字段
                  {'id': "112", 'title': "任务管理", 'path': "0_112"},
                  {'id': "112_1", 'title': "任务列表", 'path': 'calendarTask', 'parentId': "112"}, //
               ],
            500: [
               {'id': "110", 'title': "首页", 'path': "mine"}, //返回的数组字段
               {'id': "112", 'title': "任务管理", 'path': "0_112"},
               {'id': "112_1", 'title': "任务列表", 'path': 'calendarTask', 'parentId': "112"}, //
            ],
         };
         let list = [];
         if (!userType || userType=='undefined') {
            list = DayDatas['all'];
         }
         else {
            list = DayDatas[userType];
         }
         let parId = "";
         let obj = {};
         let result = [];
         list.map(el => {
             obj[el.id] = el;
         })
         for(let i=0, len = list.length; i < len; i++) {
             let id = list[i].parentId;
             //设置显示字段
             list[i].title = list[i].title;
             if(id == parId || !id) {
                 if(!obj[list[i].id].children) {
                   obj[list[i].id].children = [];
                 }
                 result.push(list[i]);
                 continue;
             }
             if(obj[id].children) {
                 obj[id].children.push(list[i]);
             } else {
                 obj[id].children = [list[i]];
             }
         }
         this.navList = result;
      },
      Cancel() {
         this.$router.push('/login');
      },
      menuSelect(index, a){
       let isPage = index.substring(0,2);
       if (isPage != "0_") {