管道基础大数据平台系统开发-【前端】-新系統界面
lixuliang
2023-02-24 68a855dd24ca5491581dd9458474174fbab9f8f8
src/components/navMenu.vue
@@ -1,5 +1,5 @@
<template>
  <div class="NavBox">
  <div class="NavBox"  @click.stop>
    <div class="topBox">
      <div class="topTitle"></div>
      <div class="topMenu">
@@ -76,7 +76,7 @@
</template>
<script>
import { logout, selectMenuRecursive } from '@/api/api';
import { logout, selectMenuRecursive, sign_insertOpLog } from '@/api/api';
import { removeToken, getToken } from '@/utils/auth';
import customElMenu from '../components/customElMenu.vue';
import { queryMenuTree, getPerms } from '../api/api';
@@ -117,7 +117,32 @@
      listMenu: [],
      showFlag: null,
      language: true,
      nowPage: [
        {
          name: '/Archive',
          index: 3
        },
        {
          name: '/dataApplication',
          index: 3
        },
        {
          name: '/ExportMap',
          index: 3
        },
        {
          name: '/Synthesis',
          index: 3
        },
        {
          name: '/dataController',
          index: 4
        },
        {
          name: '/mochaitmo',
          index: 5
        }
      ]
    };
  },
  created() { },
@@ -125,6 +150,13 @@
    this.$store.state.themeflag = false;
    $("#app").removeClass("Black_theme");
    this.getMenuTree();
    if (sessionStorage.getItem('changeliSelect')) {
      this.$set(this, 'changeliSelect', sessionStorage.getItem('changeliSelect'))
      // this.changeliSelect = sessionStorage.getItem('changeliSelect')
    }
    document.body.addEventListener('click', () => {
      this.showFlag =null;
    }, false);
  },
  computed: {},
  methods: {
@@ -158,6 +190,9 @@
      this.$router.push('/');
    },
    getTimeCookies() {
      if(!localStorage.getItem('LFToken')){
        return false
      }
      var time1 = new Date(JSON.parse(localStorage.getItem('LFToken')).time);
      var time2 = new Date();
      if (time2 > time1) {
@@ -166,18 +201,27 @@
        return true;
      }
    },
    //主题切换
 //主题切换
    setThemeColors() { },
    async signInsertOpLog(m1, m2) {
      var obj = {
        m1: m1,
        m2: m2,
      }
      const data = await sign_insertOpLog(obj);
    },
    //鼠标移入菜单事件
    setMenuMove(index, item) {
      if (item.perms != null) {
        this.$router.push(item.url);
        if (this.showFlag != null) {
          this.changeliSelect = '%%';
          this.showFlag = null;
        }
          if (item.url == "Thematic") {
          this.signInsertOpLog("综合展示", item.cnName)
        }
      } else {
        if (this.showFlag != index) {
@@ -187,7 +231,12 @@
          this.showFlag = null;
        }
      }
      //
      if (index === 4 || index === 5 || index === 6) {
        sessionStorage.removeItem('changeliSelect')
        this.$set(this, 'changeliSelect', null)
      }
      sessionStorage.setItem('changeSelectStyle', index)
      this.changeSelectStyle = index;
    },
    closeAllChildren() {
@@ -210,17 +259,25 @@
      }
    },
    setLiClick(res, index) {
        this.signInsertOpLog(this.listMenu[index].cnName, res.cnName)
      setTimeout(() => {
        this.changeliSelect = res.cnName;
        sessionStorage.setItem('changeliSelect', res.cnName)
        if (res.url.indexOf('http') != -1) {
          if (location.href.indexOf('/WareInspection') == -1) {
            this.$store.reporturl = res.url;
            this.$router.push('/WareInspection');
          } else {
            this.$bus.$emit('changeNaveUrl', res.url);
          }
            sessionStorage.setItem('iframehttpurl', this.$store.reporturl)
            this.$router.push('/QualityInspection');
          // if (location.href.indexOf('/WareInspection') == -1) {
          //   this.$store.reporturl = res.url;
          //   this.$router.push('/WareInspection');
          // } else {
          //   this.$bus.$emit('changeNaveUrl', res.url);
          // }
        } else {
          this.$store.reporturl = null;
          sessionStorage.setItem('iframehttpurl', null)
          // sessionStorage.setItem('changeliSelect', null)
          this.$router.push(res.url);
          this.$store.commit('currentPerms', res.perms);
        }
@@ -261,12 +318,26 @@
          if (result.code == 200) {
            res[i].children = result.result.filter((value) => {
              return value.isShow == 1;
            })
            .filter((value) => {
              return value.pid == res[i].id;
            });
          }
          this.listMenu.push(res[i]);
          this.changeSelectStyle = this.listMenu.length - 1;
          // this.changeSelectStyle = this.listMenu.length - 1;
          // this.changeSelectStyle = 0
          // const nowPage = this.nowPage
          // if (sessionStorage.getItem('routerName')) {
          //   for (let index = 0; index < nowPage.length; index++) {
          //     if (this.$route.path === nowPage[index].name) {
          //       this.$set(this, 'changeSelectStyle', nowPage[index].index)
          //     }
          //   }
          // } else {
          //   this.changeSelectStyle = this.listMenu.length - 1;
          // }
          this.changeSelectStyle = sessionStorage.getItem('changeSelectStyle')
          // var strartMneu = res[i].children[0];
          // this.$store.commit('currentPerms', strartMneu.perms);
          // this.changeliSelect = strartMneu.cnName;