import Vue from 'vue'
import Router from 'vue-router'

import routerBefore from '@/config/routerBefore.js'
// 主要
import main from '@/components/main.vue'

const oYeWarehouse = () => import('@/views/OYE/components/oYeWarehouse.vue')
const oYeWaitInbound = () => import('@/views/OYE/components/oYeWaitInbound.vue')
const oYeInbound = () => import('@/views/OYE/components/oYeInbound.vue')
const oYeOutbound = () => import('@/views/OYE/components/oYeOutbound.vue')
const oYeRealTimeInventory = () =>
  import('@/views/OYE/components/oYeRealTimeInventory.vue')
const oYeTransPlan = () => import('@/views/OYE/components/oYeTransPlan.vue')
const oYeTransResult = () => import('@/views/OYE/components/oYeTransResult.vue')
const queueStart = () => import('@/views/OYE/components/queueStart.vue')
const steelTransportReport = () =>
  import('@/views/OYE/components/steelTransportReport.vue')
const yawnReport = () => import('@/views/OYE/components/yawnReport.vue')

Vue.use(Router)
const constantRouterMap = [
  {
    path: '/',
    name: 'main',
    meta: { title: '首页', code: 'xtpzgl' },
    component: main,
    redirect: { name: 'oYeWarehouse' },
    children: [
      {
        path: 'oYeWarehouse',
        name: 'oYeWarehouse',
        meta: { code: 'xtpzgl-jggl' },
        component: oYeWarehouse
      },
      {
        path: 'oYeWaitInbound',
        name: 'oYeWaitInbound',
        meta: { code: 'xtpzgl-jggl' },
        component: oYeWaitInbound
      },
      {
        path: 'oYeInbound',
        name: 'oYeInbound',
        meta: { code: 'xtpzgl-jggl' },
        component: oYeInbound
      },
      {
        path: 'oYeOutbound',
        name: 'oYeOutbound',
        meta: { code: 'xtpzgl-jggl' },
        component: oYeOutbound
      },
      {
        path: 'oYeRealTimeInventory',
        name: 'oYeRealTimeInventory',
        meta: { code: 'xtpzgl-jggl' },
        component: oYeRealTimeInventory
      },
      {
        path: 'oYeTransPlan',
        name: 'oYeTransPlan',
        meta: { code: 'xtpzgl-jggl' },
        component: oYeTransPlan
      },
      {
        path: 'oYeTransResult',
        name: 'oYeTransResult',
        meta: { code: 'xtpzgl-jggl' },
        component: oYeTransResult
      },
      {
        path: 'queueStart',
        name: 'queueStart',
        meta: { code: 'xtpzgl-jggl' },
        component: queueStart
      },
      {
        path: 'yawnReport',
        name: 'yawnReport',
        meta: { code: 'xtpzgl-jggl' },
        component: yawnReport
      },
      {
        path: 'steelTransportReport',
        name: 'steelTransportReport',
        meta: { code: 'xtpzgl-jggl' },
        component: steelTransportReport
      }
    ]
  }
]

const router = new Router({
  routes: constantRouterMap
})
//  before
routerBefore(router, constantRouterMap)

export default router
//  constantRouterMap
export const routes = constantRouterMap
