<template>
  <div class="navbar">
    <div class="left-title">重卡换电智能站控系统</div>
    <div class="left-menu">
      <div v-for="(item, index) in PermissionList" :key="index">
        <router-link :to="item.path" :class="{'routerlink':index === 3 || index === 4}">
          <svg-icon :icon-class="index === 3 || index === 4 ? item.meta.icon : item.children[0].meta.icon"/>
          <svg-icon :icon-class="index === 3 || index === 4 ? item.meta.icon+'_active' : item.children[0].meta.icon+'_active'" class="iconacive"/>
          <span>{{index === 3 || index === 4 ? item.meta.title : item.children[0].meta.title}}</span>
          <i class="el-submenu__icon-arrow el-icon-arrow-down" v-if="index === 3 || index === 4"></i>
        </router-link>
      </div>
    </div>
    
    <div class="date-time">
      <div class="safedays">安全运营 {{days}} 天</div>
      <div class="time-value">
        {{ dateTime.hours }}:{{ dateTime.minutes }}:{{ dateTime.seconds }}
      </div>
      <div class="date-value">
        <div class="week-value">{{ dateTime.weeks }}</div>
        <div class="day-value">
          {{ dateTime.year }}-{{ dateTime.month }}-{{ dateTime.day }}
        </div>
      </div>
    </div>
    <div class="right-menu">
      <el-dropdown class="avatar-container right-menu-item hover-effect" trigger="click">
        <div class="avatar-wrapper">
          <span class="el-dropdown">{{ name }}<i class="el-icon-arrow-down el-icon--right"></i></span>
        </div>
        <el-dropdown-menu slot="dropdown">
          <router-link to="/permission/role" v-if="$store.getters.roles.includes('admin')">
            <el-dropdown-item>账号管理</el-dropdown-item>
          </router-link>
          <router-link to="/permission/updatepwd">
            <el-dropdown-item>修改密码</el-dropdown-item>
          </router-link>
          <el-dropdown-item divided @click.native="logout">
            <span style="display: block">安全退出</span>
          </el-dropdown-item>
        </el-dropdown-menu>
      </el-dropdown>
    </div>
  </div>
</template>

<script>
import { mapGetters } from "vuex";
import { getsafeDays } from "@/api/statistics";
export default {
  components: {
    
  },
  data() {
    return {
      PermissionList: [],
      dateTime: {
        year: "",
        month: "",
        day: "",
        weeks: "",
        hours: "",
        minutes: "",
        seconds: "",
      },
      days:0,
    };
  },
  computed: {
    ...mapGetters(["name", "permission_routes"]),
  },
  mounted() {
    setInterval(this.timer, 1000);
    this.menuList()
    this.getSafeDay()
  },
  methods: {
    //安全运行天数
    getSafeDay(){
      getsafeDays().then(res => {
        this.days=res.data
      })
    },
    //菜单路由
    menuList(){
      //console.log(this.permission_routes);
      // this.PermissionList = this.permission_routes.slice(5, 11);
      this.PermissionList = this.permission_routes.slice(5, 9);
    },
    //当前时间
    timer() {
      let vWeek = [
        "星期天",
        "星期一",
        "星期二",
        "星期三",
        "星期四",
        "星期五",
        "星期六",
      ];
      let date = new Date();
      this.dateTime.year = date.getFullYear();
      this.dateTime.month = this.lenFormat(date.getMonth() + 1);
      this.dateTime.day = this.lenFormat(date.getDate());
      this.dateTime.hours = this.lenFormat(date.getHours());
      this.dateTime.minutes = this.lenFormat(date.getMinutes());
      this.dateTime.seconds = this.lenFormat(date.getSeconds());
      this.dateTime.weeks = vWeek[date.getDay()];
      // console.log(date.getMonth() + 1)
    },
    lenFormat(i) {
      let s = "" + i;
      return s.length === 1 ? "0" + s : s;
    },
    //退出登录
    async logout() {
      await this.$store.dispatch("user/logout");
      this.$router.push(`/login?redirect=${this.$route.fullPath}`);
    },
  },
};
</script>

<style lang="scss" scoped>
.el-submenu__icon-arrow{
  right: -18px;
  top:40%;
  font-size: 16px;
  font-weight: bold;
  transform: rotate(180deg);
}
.navbar {
  height: 65px;
  overflow: hidden;
  position: relative;
  display: flex;
  flex-direction: row;
  color: white;
  padding-top: 25px;
  justify-content: space-between;
  border-bottom: 1px solid #2f343e;
  .left-title {
    width: 340px;
    font-size: 26px;
    text-align: center;
    font-weight: bold;
    line-height: 30px;
  }
  .left-menu {
    width: 60%;
    height: 100%;
    line-height: 36px;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    .iconacive{
      display: none;
    }
    div{
      margin-right: 40px;
    }
    .routerlink{
      position: relative;
    }
    .router-link-active{
      color: #91fdb9;
      position: relative;
      .iconacive{
        display: inline;
      }
      svg:first-child{
        display: none;
      }
      .el-submenu__icon-arrow{
        right: -20px !important;
        position: absolute;
        transform: rotate(360deg);
        color: #91fdb9;
        top:40%
      }
    }
    
    span{
      font-size: 20px;
      font-weight: 600;
      padding-left: 6px;
    }
    .router-link-active::after{
      content: '';
      display: inline-block;
      width: 0;
      height: 0;
      border: 6px solid transparent;
      border-top: 6px solid #91fdb9;
      position: absolute;
      top: 21px;
      left: 54%;
      z-index: 0;
      }
  }
  .safedays{
    font-size: 18px;
    font-weight: 600;
    line-height: 40px;
    text-align: right;
    padding-right: 1rem;
  }
  .date-time {
    width: 18%;
    color: white;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    padding-right: 0.8rem;
  .day-value {
    font-size: 0.5rem;
    line-height: 1.2rem;
    font-family: "微软雅黑";
  }
  .time-value {
    font-size: 1.7rem;
    padding-right: 1rem;
  }
  .week-value {
    font-size: 0.5rem;
  }
  }
  .right-menu {
    height: 100%;
    line-height: 50px;
    &:focus {
      outline: none;
    }

    .right-menu-item {
      display: inline-block;
      padding: 0 8px;
      height: 100%;
      font-size: 18px;
      color: #5a5e66;
      vertical-align: text-bottom;

      &.hover-effect {
        cursor: pointer;
        transition: background 0.3s;
        &:hover {
          background: rgba(0, 0, 0, 0.025);
        }
      }
    }
  }
}
</style>
