Newer
Older
xc-business-system / src / router / modules / resource.ts
tanyue on 22 Aug 2023 11 KB 20230822 历史文件增删改查
import type { Route } from '@/global'

const Layout = () => import('@/layouts/index.vue')

const routes: Route.recordRaw[] = [
  {
    path: '/person',
    component: Layout,
    redirect: '/person/list',
    name: 'Person',
    meta: {
      title: '人员管理',
      icon: 'ep:key',
      auth: '/resource/person',
    },
    children: [
      {
        path: 'registerList',
        name: 'RegisterList',
        component: () => import('@/views/resource/person/register/list.vue'),
        meta: {
          title: '人员登记列表',
          auth: '/resource/person/register',
          icon: 'ep:key',
        },
      },
      {
        path: ':type/:id?',
        name: 'RegisterDetail',
        component: () => import('@/views/resource/person/register/detail.vue'),
        meta: {
          title: '人员登记',
          icon: 'ep:key',
          sidebar: false,
          breadcrumb: true,
          activeMenu: '/person/registerList',
        },
      },
      {
        path: 'orderList',
        name: 'OrderList',
        component: () => import('@/views/resource/person/order/list.vue'),
        meta: {
          title: '授权(代理)委托书列表',
          auth: '/resource/person/order',
          icon: 'ep:key',
        },
      },
      {
        path: ':type/:id?',
        name: 'OrderDetail',
        component: () => import('@/views/resource/person/order/detail.vue'),
        meta: {
          title: '授权(代理)委托书',
          icon: 'ep:key',
          sidebar: false,
          breadcrumb: true,
          activeMenu: '/person/orderList',
        },
      },
      {
        path: 'trainList',
        name: 'TrainList',
        component: () => import('@/views/resource/person/train/list.vue'),
        meta: {
          title: '人员训练登记列表',
          auth: '/resource/person/train',
          icon: 'ep:key',
        },
      },
      {
        path: ':type/:id?',
        name: 'TrainDetail',
        component: () => import('@/views/resource/person/train/detail.vue'),
        meta: {
          title: '人员训练登记',
          icon: 'ep:key',
          sidebar: false,
          breadcrumb: true,
          activeMenu: '/person/trainList',
        },
      },
      {
        path: 'remindList',
        name: 'RemindList',
        component: () => import('@/views/resource/person/remind/list.vue'),
        meta: {
          title: '证书逾期提醒列表',
          auth: '/resource/person/remind',
          icon: 'ep:key',
        },
      },
      {
        path: ':type/:id?',
        name: 'RemindDetail',
        component: () => import('@/views/resource/person/remind/detail.vue'),
        meta: {
          title: '证书逾期提醒',
          icon: 'ep:key',
          sidebar: false,
          breadcrumb: true,
          activeMenu: '/person/remindList',
        },
      },
    ],
  },
  {
    path: '/system',
    component: Layout,
    redirect: '/system/sysDocList',
    name: 'System',
    meta: {
      title: '体系文件',
      icon: 'ep:key',
      auth: '/resource/system',
    },
    children: [
      {
        path: 'sysDocList',
        name: 'SysDocList',
        component: () => import('@/views/resource/system/sysDoc/list.vue'),
        meta: {
          title: '体系文件列表',
          auth: '/resource/system/sysDoc',
          icon: 'ep:key',
        },
      },
      {
        path: 'sysDoc/:type/:id?',
        name: 'SysDocDetail',
        component: () => import('@/views/resource/system/sysDoc/detail.vue'),
        meta: {
          title: '体系文件',
          icon: 'ep:key',
          sidebar: false,
          breadcrumb: true,
          activeMenu: '/person/sysDocList',
        },
      },
      {
        path: 'historyDocList',
        name: 'HistoryDocList',
        component: () => import('@/views/resource/system/historyDoc/list.vue'),
        meta: {
          title: '历史文件列表',
          auth: '/resource/system/historyDoc',
          icon: 'ep:key',
        },
      },
      {
        path: 'historyDoc/:type/:id?',
        name: 'HistoryDocDetail',
        component: () => import('@/views/resource/system/historyDoc/detail.vue'),
        meta: {
          title: '历史文件',
          icon: 'ep:key',
          sidebar: false,
          breadcrumb: true,
          activeMenu: '/person/historyDocList',
        },
      },
    ],
  },
  {
    path: '/technology',
    component: Layout,
    redirect: '/technology/methodList',
    name: 'Technology',
    meta: {
      title: '技术文件',
      icon: 'ep:key',
      auth: '/resource/technology',
    },
    children: [
      {
        path: 'methodList',
        name: 'MethodList',
        component: () => import('@/views/resource/technology/method/list.vue'),
        meta: {
          title: '现行测试校准检定方法列表',
          auth: '/resource/technology/method',
          icon: 'ep:key',
        },
      },
      {
        path: ':type/:id?',
        name: 'MethodDetail',
        component: () => import('@/views/resource/technology/method/detail.vue'),
        meta: {
          title: '现行测试校准检定方法',
          icon: 'ep:key',
          sidebar: false,
          breadcrumb: true,
          activeMenu: '/technology/methodList',
        },
      },
      {
        path: 'dataList',
        name: 'DataList',
        component: () => import('@/views/resource/technology/data/list.vue'),
        meta: {
          title: '计量资料列表',
          auth: '/resource/technology/data',
          icon: 'ep:key',
        },
      },
      {
        path: ':type/:id?',
        name: 'DataDetail',
        component: () => import('@/views/resource/technology/data/detail.vue'),
        meta: {
          title: '计量资料',
          icon: 'ep:key',
          sidebar: false,
          breadcrumb: true,
          activeMenu: '/technology/dataList',
        },
      },
    ],
  },
  {
    path: '/environment',
    component: Layout,
    redirect: '/environment/recordList',
    name: 'Environment',
    meta: {
      title: '环境数据管理',
      icon: 'ep:key',
      auth: '/resource/environment',
    },
    children: [
      {
        path: 'recordList',
        name: 'RecordList',
        component: () => import('@/views/resource/environment/record/list.vue'),
        meta: {
          title: '环境记录单',
          auth: '/resource/environment/record',
          icon: 'ep:key',
        },
      },
      {
        path: ':type/:id?',
        name: 'EnvironmentDetail',
        component: () => import('@/views/resource/environment/record/detail.vue'),
        meta: {
          title: '环境记录单',
          icon: 'ep:key',
          sidebar: false,
          breadcrumb: true,
          activeMenu: '/Environment/recordList',
        },
      },
    ],
  },
  {
    path: '/outsideService',
    component: Layout,
    redirect: '/outsideService/supplierList',
    name: 'OutsideService',
    meta: {
      title: '外部服务管理',
      icon: 'ep:key',
      auth: '/resource/outsideService',
    },
    children: [
      {
        path: 'supplierList',
        name: 'SupplierList',
        component: () => import('@/views/resource/outsideService/supplier/list.vue'),
        meta: {
          title: '合格供方名录',
          auth: '/resource/outsideService/supplier',
          icon: 'ep:key',
        },
      },
      {
        path: ':type/:id?/:status?',
        name: 'SupplierDetail',
        component: () => import('@/views/resource/outsideService/supplier/detail.vue'),
        meta: {
          title: '合格供方名录详情',
          icon: 'ep:key',
          sidebar: false,
          breadcrumb: true,
          activeMenu: '/outsideService/supplierList',
        },
      },
    ],
  },
  {
    path: '/customer',
    component: Layout,
    redirect: '/customer/infoList',
    name: 'InfoList',
    meta: {
      title: '委托方管理',
      icon: 'ep:key',
      auth: '/resource/customer',
    },
    children: [
      {
        path: 'infoList',
        name: 'CustomerInfoList',
        component: () => import('@/views/resource/customer/info/list.vue'),
        meta: {
          title: '委托方名录',
          auth: '/resource/customer/infoList',
          icon: 'ep:key',
        },
      },
      {
        path: ':type/:id?/:status?',
        name: 'CustomerInfoDetail',
        component: () => import('@/views/resource/customer/info/detail.vue'),
        meta: {
          title: '委托方详情',
          icon: 'ep:key',
          sidebar: false,
          breadcrumb: true,
          activeMenu: '/customer/infoList',
        },
      },
      {
        path: 'reviewNoticeList',
        name: 'ReviewNoticeList',
        component: () => import('@/views/resource/customer/reviewNotice/list.vue'),
        meta: {
          title: '检测结果复查通知列表',
          auth: '/resource/customer/reviewNotice',
          icon: 'ep:key',
        },
      },
      {
        path: ':type/:id?',
        name: 'ReviewNoticeDetail',
        component: () => import('@/views/resource/customer/reviewNotice/detail.vue'),
        meta: {
          title: '检测结果复查通知详情',
          icon: 'ep:key',
          sidebar: false,
          breadcrumb: true,
          activeMenu: '/customer/reviewNotice',
        },
      },
      {
        path: 'situationReportList',
        name: 'SituationReportList',
        component: () => import('@/views/resource/customer/situationReport/list.vue'),
        meta: {
          title: '委托方情况报告列表',
          auth: '/resource/customer/situationReport',
          icon: 'ep:key',
        },
      },
      {
        path: ':type/:id?',
        name: 'SituationReportDetail',
        component: () => import('@/views/resource/customer/situationReport/detail.vue'),
        meta: {
          title: '委托方情况报告详情',
          icon: 'ep:key',
          sidebar: false,
          breadcrumb: true,
          activeMenu: '/customer/situationReport',
        },
      },
      {
        path: 'questionnaireList',
        name: 'QuestionnaireList',
        component: () => import('@/views/resource/customer/questionnaire/list.vue'),
        meta: {
          title: '委托方满意度调查表列表',
          auth: '/resource/customer/questionnaire',
          icon: 'ep:key',
        },
      },
      {
        path: ':type/:id?',
        name: 'QuestionnaireDetail',
        component: () => import('@/views/resource/customer/questionnaire/detail.vue'),
        meta: {
          title: '委托方满意度调查表详情',
          icon: 'ep:key',
          sidebar: false,
          breadcrumb: true,
          activeMenu: '/customer/questionnaire',
        },
      },
      {
        path: 'suggestFormList',
        name: 'SuggestFormList',
        component: () => import('@/views/resource/customer/suggestForm/list.vue'),
        meta: {
          title: '委托方意见登记表列表',
          auth: '/resource/customer/suggestForm',
          icon: 'ep:key',
        },
      },
      {
        path: ':type/:id?',
        name: 'SuggestFormDetail',
        component: () => import('@/views/resource/customer/suggestForm/detail.vue'),
        meta: {
          title: '委托方意见登记表详情',
          icon: 'ep:key',
          sidebar: false,
          breadcrumb: true,
          activeMenu: '/customer/suggestForm',
        },
      },
      {
        path: 'examineList',
        name: 'ExamineList',
        component: () => import('@/views/resource/customer/examine/list.vue'),
        meta: {
          title: '要求、委托书及合同评审表列表',
          auth: '/resource/customer/examine',
          icon: 'ep:key',
        },
      },
      {
        path: ':type/:id?',
        name: 'ExamineDetail',
        component: () => import('@/views/resource/customer/examine/detail.vue'),
        meta: {
          title: '要求、委托书及合同评审表详情',
          icon: 'ep:key',
          sidebar: false,
          breadcrumb: true,
          activeMenu: '/customer/examine',
        },
      },
    ],
  },
]

export default routes