import Vue from 'vue'
import VueRouter from 'vue-router'
import Layout from '../views/layout/index.vue'
import Login from '../views/login/login.vue'
import local from '../utils/local'

Vue.use(VueRouter)

const routes = [
  {
    path: '/login',
    component: Login,
    meta: { title: '登录', activeMenu: '/login' }
  },
  {
    path: '/',
    component: Layout,
    redirect: '/disease-resistance/disease-resistance',
    meta: { title: '首页', activeMenu: '/disease-resistance/disease-resistance' }
  },
  {
    // 遗传病风险
    path: '/disease-resistance',
    component: Layout,
    children: [
      {
        path: '/disease-resistance/disease-resistance',
        component: () =>
          import('../views/disease-resistance/disease-resistance.vue'),
        meta: { title: '遗传病风险', activeMenu: '/disease-resistance/disease-resistance' }
      }
    ]
  },
  {
    // 基因管理
    path: '/geneMgmt',
    component: Layout,
    children: [
      {
        path: '/geneMgmt/SPN',
        component: () =>
          import('../views/geneMgmt/SPN.vue'),
        meta: { title: 'SPN位点管理', activeMenu: '/geneMgmt/SPN' }
      },
      {
        path: '/geneMgmt/SPNPanel',
        component: () =>
          import('../views/geneMgmt/SPNPanel.vue'),
        meta: { title: 'SPN Panel位点管理', activeMenu: '/geneMgmt/SPNPanel' }
      },
      {
        path: '/geneMgmt/sequence',
        component: () =>
          import('../views/geneMgmt/sequence.vue'),
        meta: { title: '原始测序数据', activeMenu: '/geneMgmt/sequence' }
      }
    ]
  },

  {
    // 繁育管理
    path: '/breedMgmt',
    component: Layout,
    children: [
      {
        path: '/breedMgmt/BLUP',
        component: () =>
          import('../views/breedMgmt/BLUP.vue'),
        meta: { title: 'BLUP', activeMenu: '/breedMgmt/BLUP' }
      },
      {
        path: '/breedMgmt/paternityTest',
        component: () =>
          import('../views/breedMgmt/paternityTest.vue'),
        meta: { title: '亲子鉴定', activeMenu: '/breedMgmt/paternityTest' }
      },
      {
        path: '/breedMgmt/lineage',
        component: () =>
          import('../views/breedMgmt/lineage.vue'),
        meta: { title: '血统管理', activeMenu: '/breedMgmt/lineage' }
      }
    ]
  },

  {
    // 进化分析
    path: '/phylogeneticAnalysis',
    component: Layout,
    children: [
      {
        path: '/phylogeneticAnalysis/evolutionaryTree',
        component: () =>
          import('../views/phylogeneticAnalysis/evolutionaryTree.vue'),
        meta: { title: '进化树', activeMenu: '/phylogeneticAnalysis/evolutionaryTree' }
      },
    ]
  },
    {
        path: '/login',
        component: Login,
        meta: { title: '登录', activeMenu: '/login' }
    },
    {
        path: '/',
        component: Layout,
        redirect: '/disease-resistance/disease-resistance',
        meta: { title: '', activeMenu: '/disease-resistance/disease-resistance' }
    }, {
        // 首页
        path: '/index',
        component: Layout,
        children: [
            {
                path: '/index/index',
                component: () =>
                    import('../views/index/index.vue'),
                meta: { title: '首页', activeMenu: '/index/index' }
            }
        ]
    },
    {
        // 遗传病风险
        path: '/disease-resistance',
        component: Layout,
        children: [
            {
                path: '/disease-resistance/disease-resistance',
                component: () =>
                    import('../views/disease-resistance/disease-resistance.vue'),
                meta: { title: '遗传病风险', activeMenu: '/disease-resistance/disease-resistance' }
            }
        ]
    },
    {
        // 档案信息
        path: '/archive-information',
        component: Layout,
        children: [
            {
                path: '/archive-information/archive-information',
                component: () =>
                    import('../views/archive-information/archive-information.vue'),
                meta: { title: '档案信息', activeMenu: '/archive-information/archive-information' }
            }
        ]
    },
    {
        // 快速查询
        path: '/quick-Search/quick-Search',
        component: Layout,
        children: [
            {
                path: '/quick-Search/quick-Search',
                component: () =>
                    import('../views/quick-Search/quick-Search.vue'),
                meta: { title: '快速查询', activeMenu: '/quick-Search/quick-Search' }
            }
        ]
    }
]

const router = new VueRouter({
    routes
})
// 前置路由守卫
router.beforeEach((to, from, next) => {
    // to到哪里取 from 从哪里来 next 放行
    const token = local.get('token_sd')
    if (to.meta.title) { // 修改总标题
        document.title = '基芯农育种' + '-' + to.meta.title // routes数组中--meta是关键
    }
    if (token) { // ok
        next()
    } else { // no
        if (to.path === '/login') {
            next()
        }
        next('/login')
    }
})
export default router
