import Vue from 'vue' import Router from 'vue-router' Vue.use(Router) /* Layout */ import Layout from '@/layout' /** * Note: sub-menu only appear when route children.length >= 1 * Detail see: https://panjiachen.github.io/vue-element-admin-site/guide/essentials/router-and-nav.html * * hidden: true if set true, item will not show in the sidebar(default is false) * alwaysShow: true if set true, will always show the root menu * if not set alwaysShow, when item has more than one children route, * it will becomes nested mode, otherwise not show the root menu * redirect: noRedirect if set noRedirect will no redirect in the breadcrumb * name:'router-name' the name is used by (must set!!!) * meta : { roles: ['admin','editor'] control the page roles (you can set multiple roles) title: 'title' the name show in sidebar and breadcrumb (recommend set) icon: 'svg-name'/'el-icon-x' the icon show in the sidebar breadcrumb: false if set false, the item will hidden in breadcrumb(default is true) activeMenu: '/example/list' if set path, the sidebar will highlight the path you set } */ /** * constantRoutes * a base page that does not have permission requirements * all roles can be accessed */ // 公用模块 export const commonRoutes = [ /* * 看板部分路由 * */ { path: '/zhkb', component: () => import('@/views/kanbanManager/zhkb'), hidden: true }, { path: '/cgdd', component: () => import('@/views/kanbanManager/cgdd'), hidden: true }, { path: '/ckgl', component: () => import('@/views/kanbanManager/ckgl'), hidden: true }, { path: '/login', component: () => import('@/views/login/index'), hidden: true }, { path: '/404', component: () => import('@/views/404'), hidden: true }, { path: '/redirect', component: Layout, hidden: true, children: [ { path: '/redirect/:path(.*)', component: () => import('@/views/redirect/index') } ] }, { path: '/', component: Layout, redirect: '/index', name: '系统首页', children: [{ path: 'index', name: 'index', component: () => import('@/views/systemHome/index'), meta: { title: '系统首页', icon: 'home', affix: true } }] } // { path: '*', redirect: '/404', hidden: true } ] // 上云模块 export const asyncRoutesCloud = [ // 1.系统管理(基础设置类) { path: '/systemSetting', component: Layout, redirect: '/systemSetting/organizationList', name: '系统管理', code: '2001', meta: { code: '2001', title: '系统管理', icon: 'xtsz' }, alwaysShow: true, // 当children只有一个时,也显示父菜单 children: [ { path: 'organizationList', name: 'organizationListCancel', code: '1010', component: () => import('@/views/basicSettings/organizationList'), meta: { code: '1010', title: '组织架构', icon: '', keepAlive: true } }, { path: 'roleList', name: 'roleListCancel', code: '1012', component: () => import('@/views/basicSettings/roleList'), meta: { code: '1012', title: '角色清单', icon: '', keepAlive: true } }, { path: 'installationLampSetting', name: 'installationLampSettingCancel', code: '1014', component: () => import('@/views/basicSettings/installationLampSetting'), meta: { code: '1014', title: '安灯设置', icon: '', keepAlive: true } } ] }, // 2.客户管理 { path: '/basicSettings', component: Layout, redirect: '/basicSettings/userList', name: '客户管理', code: '2002', meta: { code: '2002', title: '客户管理', icon: 'khgl' }, alwaysShow: true, // 当children只有一个时,也显示父菜单 children: [ { path: 'userList', name: 'userListCancel', code: '1011', component: () => import('@/views/basicSettings/userList'), meta: { code: '1011', title: '用户清单', icon: '', keepAlive: true } }, { path: 'contactUnitList', name: 'contactUnitListCancel', code: '1013', component: () => import('@/views/basicSettings/contactUnitList'), meta: { code: '1013', title: '往来单位', icon: '', keepAlive: true } } ] }, // 3.数据采集管理 sop上传 灵翔项目的看下 // 4.订单管理 { path: '/orderManager', component: Layout, redirect: '/orderManager/erpProduceOrder', name: '订单管理', code: '2004', meta: { code: '2004', title: '订单管理', icon: 'production' }, alwaysShow: true, children: [ { path: 'erpProduceOrder', name: 'produceOrderCancel', code: '1070', component: () => import('@/views/produceManager/produceOrder'), meta: { code: '1070', title: '生产订单', icon: '', keepAlive: true } } ] }, // 5.物料计划管理 { path: '/materialPlanManager', component: Layout, redirect: '/materialPlanManager/materialList', name: '物料计划管理', code: '2005', meta: { code: '2005', title: '物料计划管理', icon: 'icu' }, alwaysShow: true, children: [ { path: 'materialList', name: 'materialListCancel', code: '1062', component: () => import('@/views/makeModel/materialList'), meta: { code: '1062', title: '物料清单', icon: '', keepAlive: true } } ] }, // 6.质量管理 { path: '/qualityManager', component: Layout, redirect: '/qualityManager/defectDefine', name: '质量管理', code: '2006', meta: { code: '2006', title: '质量管理', icon: 'quality' }, alwaysShow: true, children: [ { path: 'defectDefine', name: 'defectDefineCancel', code: '1081', component: () => import('@/views/qualityManager/defectDefine'), meta: { code: '1081', title: '缺陷定义', icon: '', keepAlive: true } }, { path: 'qualityPlaning', name: 'ZJFACancel', code: '1088', component: () => import('@/views/qualityManager/qualityPlaning'), meta: { code: '1088', title: '质检方案', icon: '', keepAlive: true } } ] }, // 7.工序管理 { path: '/processManager', component: Layout, redirect: '/processManager/processCheck', name: '工序管理', code: '2007', meta: { code: '2007', title: '工序管理', icon: 'gxgl' }, alwaysShow: true, children: [ { path: 'processCheck', name: 'processCheckCancel', code: '1082', component: () => import('@/views/qualityManager/processCheck'), meta: { code: '1082', title: '工序检验', icon: '', keepAlive: true } }, { path: 'processCheckStandard', name: 'processCheckStandardCancel', code: '1085', component: () => import('@/views/qualityManager/processCheckStandard'), meta: { code: '1085', title: '工序检验标准', icon: '', keepAlive: true } }, { path: 'processCheckItem', name: 'processCheckItemCancel', code: '1086', component: () => import('@/views/qualityManager/processCheckItem'), meta: { code: '1086', title: '工序检验项目', icon: '', keepAlive: true } }, { path: 'processCheckRecord', name: 'processCheckRecordCancel', code: '1087', component: () => import('@/views/qualityManager/processCheckRecord'), meta: { code: '1087', title: '工序检验记录', icon: '', keepAlive: true } } ] }, // 8.人力资源管理 { path: '/resourcesManager', component: Layout, redirect: '/resourcesManager/groupSalaryList', name: '人力资源管理', code: '2008', meta: { code: '1008', title: '人力资源管理', icon: 'rlzy' }, alwaysShow: true, children: [ { path: 'groupSalaryList', name: 'groupSalaryListCancel', code: '1090', component: () => import('@/views/reportManager/groupSalaryList'), meta: { code: '1090', title: '班组工资统计报表', icon: '', keepAlive: true } }, { path: 'personSalaryList', name: 'personSalaryListCancel', code: '1091', component: () => import('@/views/reportManager/personSalaryList'), meta: { code: '1091', title: '人员工资明细报表', icon: '', keepAlive: true } }, { path: 'subcontractingOperation', name: 'subcontractingOperationCancel', code: '1092', component: () => import('@/views/reportManager/subcontractingOperation'), meta: { code: '1092', title: '委外工序明细报表', icon: '', keepAlive: true } } ] }, // 9.智能报表 { path: '/reportManager', component: Layout, redirect: '/reportManager/defectDetailList', name: '智能报表', code: '2009', meta: { code: '2009', title: '智能报表', icon: 'bbgl' }, alwaysShow: true, children: [ { path: 'defectDetailList', name: 'defectDetailListCancel', code: '1093', component: () => import('@/views/reportManager/defectDetailList'), meta: { code: '1093', title: '不良明细报表', icon: '', keepAlive: true } }, { path: 'abnormalQualityList', name: 'abnormalQualityListCancel', code: '1094', component: () => import('@/views/reportManager/abnormalQualityList'), meta: { code: '1094', title: '品质异常排行报表', icon: '', keepAlive: true } }, { path: 'repairDetailList', name: 'repairDetailListCancel', code: '1095', component: () => import('@/views/reportManager/repairDetailList'), meta: { code: '1095', title: '维修明细报表', icon: '', keepAlive: true } }, { path: 'installationLampList', name: 'installationLampListCancel', code: '1096', component: () => import('@/views/reportManager/installationLampList'), meta: { code: '1096', title: '安灯报表', icon: '', keepAlive: true } }, { path: 'produceSchedule', name: 'produceScheduleCancel', code: '1098', component: () => import('@/views/reportManager/produceSchedule'), meta: { code: '1098', title: '生产进度报表', icon: '', keepAlive: true } } ] }, // 10.库存管理 { path: '/inventoryManager', component: Layout, redirect: '/inventoryManager/storehouseDefine', name: '库存管理', code: '2010', meta: { code: '2010', title: '库存管理', icon: 'table' }, alwaysShow: true, children: [ { path: 'storehouseDefine', name: 'storehouseDefineCancel', code: '1050', component: () => import('@/views/materialManager/storehouseDefine'), meta: { code: '1050', title: '仓库定义', icon: '', keepAlive: true } }, { path: 'locationDefine', name: 'locationDefineCancel', code: '1051', component: () => import('@/views/materialManager/locationDefine'), meta: { code: '1051', title: '库位定义', icon: '', keepAlive: true } }, // { // path: 'containerType', // name: 'containerTypeCancel', // code: '1052', // component: () => import('@/views/materialManager/containerType'), // meta: { code: '1052', title: '容器类型', icon: '', keepAlive: true } // }, { // path: 'containerList', // name: 'containerListCancel', // code: '1053', // component: () => import('@/views/materialManager/containerList'), // meta: { code: '1053', title: '容器清单', icon: '', keepAlive: true } // }, { // path: 'inOutboundRecord', // name: 'inOutboundRecordCancel', // code: '1054', // component: () => import('@/views/materialManager/inOutboundRecord'), // meta: { code: '1054', title: '出入库记录', icon: '', keepAlive: true } // }, { // path: 'inventoryQuery', // name: 'inventoryQueryCancel', // code: '1055', // component: () => import('@/views/materialManager/inventoryQuery'), // meta: { code: '1055', title: '库存查询', icon: '', keepAlive: true } // }, { path: 'InventoryLedgerList', name: 'InventoryLedgerListCancel', code: '1205', component: () => import('@/views/purchasesManager/InventoryLedgerList'), meta: { code: '1205', title: '库存台账', icon: '', keepAlive: true } } ] }, // 11.采购管理 { path: '/purchasesManager', component: Layout, redirect: '/purchasesManager/purchasesList', name: '采购管理', code: '2011', meta: { code: '2011', title: '采购管理', icon: 'cggl' }, alwaysShow: true, children: [ { path: 'purchasesList', name: 'CGDDCancel', code: '1201', component: () => import('@/views/purchasesManager/purchasesList'), meta: { code: '1201', title: '采购订单', icon: '', keepAlive: true } }, { path: 'arrivalNoticeList', name: 'arrivalNoticeListCancel', code: '1202', component: () => import('@/views/purchasesManager/arrivalNoticeList'), meta: { code: '1202', title: '采购到货单', icon: '', keepAlive: true } } ] }, // 12.销售管理 { path: '/sale', component: Layout, redirect: '/sale/salesStatisticsList', name: '销售管理', code: '2012', meta: { code: '2012', title: '销售管理', icon: 'xsgl' }, alwaysShow: true, children: [ { path: 'salesStatisticsList', name: 'salesStatisticsCancel', code: '1203', component: () => import('@/views/purchasesManager/salesStatisticsList'), meta: { code: '1203', title: '销售订单', icon: '', keepAlive: true } }, { path: 'goodsStatisticsList', name: 'goodsStatisticsListCancel', code: '1204', component: () => import('@/views/purchasesManager/goodsStatisticsList'), meta: { code: '1204', title: '销货单', icon: '', keepAlive: true } } ] }, // 13.工单管理 { path: '/work', component: Layout, redirect: '/work/workOrder', name: '工单管理', code: '2013', meta: { code: '2013', title: '工单管理', icon: 'gzgl' }, alwaysShow: true, children: [ { path: 'workOrder', name: 'workOrderCancel', code: '1071', component: () => import('@/views/produceManager/workOrder'), meta: { code: '1071', title: '工单', icon: '', keepAlive: true } }, { path: 'workOrderBatchClose', name: 'workOrderBatchCloseCancel', code: '1074', component: () => import('@/views/produceManager/workOrderBatchClose'), meta: { code: '1074', title: '工单批量关闭', icon: '', keepAlive: true } } ] }, // 14.工单排产 { path: '/produceManager', component: Layout, redirect: '/produceManager/produceOrder', name: '工单排产', code: '2014', meta: { code: '2014', title: '工单排产', icon: 'scgl' }, alwaysShow: true, children: [ { path: 'AutoScheduling', name: 'AutoSchedulingCancel', code: '1076', component: () => import('@/views/produceManager/AutoScheduling'), meta: { code: '1076', title: '自动排程', icon: '', keepAlive: true } } ] }, // 15.生产管理 { path: '/extendedModule', component: Layout, redirect: '/extendedModule/produceStartOrder', name: '生产管理', code: '2015', meta: { code: '2015', title: '生产管理', icon: 'tree2' }, alwaysShow: true, // 当children只有一个时,也显示父菜单 children: [ { path: 'produceStartOrder', name: 'produceStartOrderCancel', code: '1073', component: () => import('@/views/produceManager/produceStartOrder'), meta: { code: '1073', title: '生产开报工', icon: '', keepAlive: true } }, { path: 'capacityPlanning', name: 'capacityPlanningCancel', code: '1075', component: () => import('@/views/produceManager/capacityPlanning'), meta: { code: '1075', title: '产能规划', icon: '', keepAlive: true } } ] }, // 16.工艺管理 { path: '/makeModel', component: Layout, redirect: '/makeModel/processRoute', name: '车间管理', code: '2016', meta: { code: '2016', title: '车间管理', icon: 'cjgl' }, alwaysShow: true, children: [ { path: 'processRoute', name: 'processRouteCancel', code: '1063', component: () => import('@/views/makeModel/processRoute'), meta: { code: '1063', title: '工艺路线', icon: '', keepAlive: true } }, { path: 'processDefine', name: 'processDefineCancel', code: '1064', component: () => import('@/views/makeModel/processDefine'), meta: { code: '1064', title: '工序定义', icon: '', keepAlive: true } }, { path: 'meterPrice', name: 'meterPriceCancel', code: '1065', component: () => import('@/views/makeModel/meterPrice'), meta: { code: '1065', title: '节拍工价', icon: '', keepAlive: true } } ] }, // 17.设备管理 { path: '/deviceManager', component: Layout, redirect: '/deviceManager/deviceList', name: '设备管理', code: '2017', meta: { code: '2017', title: '设备管理', icon: 'example' }, alwaysShow: true, children: [ { path: 'deviceList', name: 'deviceListCancel', code: '1022', component: () => import('@/views/deviceManager/deviceList'), meta: { code: '1022', title: '设备清单', icon: '', keepAlive: true } }, { path: 'checkStandard', name: 'checkStandardCancel', code: '1023', component: () => import('@/views/deviceManager/checkStandard'), meta: { code: '1023', title: '设备点检标准', icon: '', keepAlive: true } }, { path: 'checkPosition', name: 'checkPositionCancel', code: '1024', component: () => import('@/views/deviceManager/checkPosition'), meta: { code: '1024', title: '设备点检部位', icon: '', keepAlive: true } }, { path: 'maintainStandard', name: 'maintainStandardCancel', code: '1025', component: () => import('@/views/deviceManager/maintainStandard'), meta: { code: '1025', title: '设备保养标准', icon: '', keepAlive: true } }, { path: 'maintainPosition', name: 'maintainPositionCancel', code: '1026', component: () => import('@/views/deviceManager/maintainPosition'), meta: { code: '1026', title: '设备保养部位', icon: '', keepAlive: true } }, { path: 'checkRecord', name: 'checkRecordCancel', code: '1027', component: () => import('@/views/deviceManager/checkRecord'), meta: { code: '1027', title: '设备点检记录', icon: '', keepAlive: true } }, { path: 'maintainRecord', name: 'maintainRecordCancel', code: '1028', component: () => import('@/views/deviceManager/maintainRecord'), meta: { code: '1028', title: '设备保养记录', icon: '', keepAlive: true } }, { path: 'repairRecord', code: '1029', name: 'repairRecordCancel', component: () => import('@/views/deviceManager/repairRecord'), meta: { code: '1029', title: '设备维修记录', icon: '', keepAlive: true } } ] }, // 18.其它集成 { path: '/otherErp', component: Layout, redirect: '/otherErp/InventoryList', name: '其他产品集成', code: '2018', meta: { code: '2018', title: '其他产品集成', icon: 'erpjc' }, alwaysShow: true, children: [ { path: 'InventoryList', name: 'InventoryListCancel', code: '1061', component: () => import('@/views/makeModel/InventoryList'), meta: { code: '1061', title: '存货档案', icon: '', keepAlive: true } } ] }, { path: '/kanbanManager', component: Layout, redirect: '/kanbanManager/zhkb', name: '智慧看板', code: '2023', meta: { title: '智慧看板', icon: 'zhkb' }, alwaysShow: true, children: [ { path: 'zhkb', name: 'ZHKBCancel', component: () => import('@/views/kanbanManager/zhkb'), meta: { title: '综合看板', icon: '', keepAlive: true } }, { path: 'cgdd', name: 'cgddCancel', component: () => import('@/views/kanbanManager/cgdd'), meta: { title: '采购订单', icon: '', keepAlive: true } }, { path: 'ckgl', name: 'ckglCancel', component: () => import('@/views/kanbanManager/ckgl'), meta: { title: '仓库管理', icon: '', keepAlive: true } } ] } // { // path: '/systemSettings', // component: Layout, // redirect: '/systemSettings/bmgz', // name: '系统设置', // code: '1009', // meta: { code: '1009', title: '系统设置', icon: 'xtsz' }, // alwaysShow: true, // children: [ // { // path: 'codingRules', // name: 'codingRulesCancel', // code: '1101', // component: () => import('@/views/systemSettings/codingRules'), // meta: { code: '1101', title: '编码规则', icon: '', keepAlive: true } // }, { // path: 'passwordEdit', // name: 'passwordEditCancel', // code: '1102', // component: () => import('@/views/systemSettings/passwordEdit'), // meta: { code: '1102', title: '密码修改', icon: '', keepAlive: true } // }, { // path: 'systemLog', // name: 'systemLogCancel', // code: '1103', // component: () => import('@/views/systemSettings/systemLog'), // meta: { code: '1103', title: '系统日志', icon: '', keepAlive: true } // }, { // path: 'sopUpload', // name: 'sopUploadCancel', // code: '1104', // component: () => import('@/views/systemSettings/sopUpload'), // meta: { code: '1104', title: 'SOP上传', icon: '', keepAlive: true } // }, { // path: 'shopNotice', // name: 'shopNoticeCancel', // code: '1105', // component: () => import('@/views/systemSettings/shopNotice'), // meta: { code: '1105', title: '车间公告', icon: '', keepAlive: true } // } // ] // } ] // 未上云模块 export const asyncRoutes = [ // { // path: '/gtt', // component: Layout, // redirect: '/gtt/back', // name: '基础设置', // code: '1001', // meta: { code: '1001', title: '基础设置', icon: 'tree' }, // alwaysShow: true, // 当children只有一个时,也显示父菜单 // children: [{ // path: 'back', // name: 'YYQDCancel', // code: '1011', // component: () => import('@/views/gantt_back/gantt_back'), // meta: { code: '1011', title: '用户清单', icon: '', keepAlive: true } // }, { // path: 'zdpc2', // name: 'YYQDCancel', // code: '1012', // component: () => import('@/views/gantt_back/zdpc2'), // meta: { code: '1012', title: '自动排程2', icon: '', keepAlive: true } // }] // }, { path: '/basicSettings', component: Layout, redirect: '/basicSettings/organizationList', name: '基础设置', code: '1001', meta: { code: '1001', title: '基础设置', icon: 'tree2' }, alwaysShow: true, // 当children只有一个时,也显示父菜单 children: [ { path: 'organizationList', name: 'organizationListCancel', code: '1010', component: () => import('@/views/basicSettings/organizationList'), meta: { code: '1010', title: '组织架构', icon: '', keepAlive: true } }, { path: 'userList', name: 'userListCancel', code: '1011', component: () => import('@/views/basicSettings/userList'), meta: { code: '1011', title: '用户清单', icon: '', keepAlive: true } }, { path: 'roleList', name: 'roleListCancel', code: '1012', component: () => import('@/views/basicSettings/roleList'), meta: { code: '1012', title: '角色清单', icon: '', keepAlive: true } }, { path: 'contactUnitList', name: 'contactUnitListCancel', code: '1013', component: () => import('@/views/basicSettings/contactUnitList'), meta: { code: '1013', title: '往来单位', icon: '', keepAlive: true } }, { path: 'installationLampSetting', name: 'installationLampSettingCancel', code: '1014', component: () => import('@/views/basicSettings/installationLampSetting'), meta: { code: '1014', title: '安灯设置', icon: '', keepAlive: true } } ] }, { path: '/deviceManager', component: Layout, redirect: '/deviceManager/deviceType', name: '设备管理', code: '1002', meta: { code: '1002', title: '设备管理', icon: 'example' }, alwaysShow: true, children: [ { path: 'deviceType', name: 'deviceTypeCancel', code: '1020', component: () => import('@/views/deviceManager/deviceType'), meta: { code: '1020', title: '设备类型', icon: '', keepAlive: true } }, { path: 'deviceGroup', name: 'deviceGroupCancel', code: '1021', component: () => import('@/views/deviceManager/deviceGroup'), meta: { code: '1021', title: '设备组', icon: '', keepAlive: true } }, { path: 'deviceList', name: 'deviceListCancel', code: '1022', component: () => import('@/views/deviceManager/deviceList'), meta: { code: '1022', title: '设备清单', icon: '', keepAlive: true } }, { path: 'checkStandard', name: 'checkStandardCancel', code: '1023', component: () => import('@/views/deviceManager/checkStandard'), meta: { code: '1023', title: '点检标准', icon: '', keepAlive: true } }, { path: 'checkPosition', name: 'checkPositionCancel', code: '1024', component: () => import('@/views/deviceManager/checkPosition'), meta: { code: '1024', title: '点检部位', icon: '', keepAlive: true } }, { path: 'maintainStandard', name: 'maintainStandardCancel', code: '1025', component: () => import('@/views/deviceManager/maintainStandard'), meta: { code: '1025', title: '保养标准', icon: '', keepAlive: true } }, { path: 'maintainPosition', name: 'maintainPositionCancel', code: '1026', component: () => import('@/views/deviceManager/maintainPosition'), meta: { code: '1026', title: '保养部位', icon: '', keepAlive: true } }, { path: 'checkRecord', name: 'checkRecordCancel', code: '1027', component: () => import('@/views/deviceManager/checkRecord'), meta: { code: '1027', title: '点检记录', icon: '', keepAlive: true } }, { path: 'maintainRecord', name: 'maintainRecordCancel', code: '1028', component: () => import('@/views/deviceManager/maintainRecord'), meta: { code: '1028', title: '保养记录', icon: '', keepAlive: true } }, { path: 'repairRecord', code: '1029', name: 'repairRecordCancel', component: () => import('@/views/deviceManager/repairRecord'), meta: { code: '1029', title: '维修记录', icon: '', keepAlive: true } }, { path: 'repairRequestRecord', name: 'repairRequestRecordCancel', code: '1019', component: () => import('@/views/deviceManager/repairRequestRecord'), meta: { code: '1019', title: '设备申请维修记录', icon: '', keepAlive: true } } ] }, { path: '/gzgl', component: Layout, redirect: '/gzgl/gzlx', name: '工装管理', code: '1003', meta: { code: '1003', title: '工装管理', icon: 'component' }, alwaysShow: true, children: [ { path: 'gzlx', name: 'GZLXCancel', code: '1030', component: () => import('@/views/gzgl/gzlx'), meta: { code: '1030', title: '工装类型', icon: '', keepAlive: true } }, { path: 'sjxj', name: 'SJXJCancel', code: '1039', component: () => import('@/views/gzgl/sjxj'), meta: { code: '1039', title: '上机下机', icon: '', keepAlive: true } }, { path: 'ckrk', name: 'CKRKCancel', code: '1040', component: () => import('@/views/gzgl/ckrk'), meta: { code: '1040', title: '出库入库', icon: '', keepAlive: true } }, { path: 'gzqd', name: 'GZQDCancel', code: '1031', component: () => import('@/views/gzgl/gzqd'), meta: { code: '1031', title: '工装清单', icon: '', keepAlive: true } }, { path: 'djbz', name: 'DJBZCancel', code: '1032', component: () => import('@/views/gzgl/djbz'), meta: { code: '1032', title: '点检标准', icon: '', keepAlive: true } }, { path: 'djbw', name: 'DJBWCancel', code: '1033', component: () => import('@/views/gzgl/djbw'), meta: { code: '1033', title: '点检部位', icon: '', keepAlive: true } }, { path: 'bybz', name: 'BYBZCancel', code: '1034', component: () => import('@/views/gzgl/bybz'), meta: { code: '1034', title: '保养标准', icon: '', keepAlive: true } }, { path: 'bybw', name: 'BYBWCancel', code: '1035', component: () => import('@/views/gzgl/bybw'), meta: { code: '1035', title: '保养部位', icon: '', keepAlive: true } }, { path: 'djjl', name: 'DJJLCancel', code: '1036', component: () => import('@/views/gzgl/djjl'), meta: { code: '1036', title: '点检记录', icon: '', keepAlive: true } }, { path: 'byjl', name: 'BYJLCancel', code: '1037', component: () => import('@/views/gzgl/byjl'), meta: { code: '1037', title: '保养记录', icon: '', keepAlive: true } }, { path: 'gzwx', name: 'GZWXCancel', code: '1038', component: () => import('@/views/gzgl/gzwx'), meta: { code: '1038', title: '工装维修', icon: '', keepAlive: true } } ] }, { path: '/materialManager', component: Layout, redirect: '/materialManager/storehouseDefine', name: '物料管理', code: '1004', meta: { code: '1004', title: '物料管理', icon: 'table' }, alwaysShow: true, children: [ { path: 'storehouseDefine', name: 'storehouseDefineCancel', code: '1050', component: () => import('@/views/materialManager/storehouseDefine'), meta: { code: '1050', title: '仓库定义', icon: '', keepAlive: true } }, { path: 'locationDefine', name: 'locationDefineCancel', code: '1051', component: () => import('@/views/materialManager/locationDefine'), meta: { code: '1051', title: '库位定义', icon: '', keepAlive: true } }, { path: 'containerType', name: 'containerTypeCancel', code: '1052', component: () => import('@/views/materialManager/containerType'), meta: { code: '1052', title: '容器类型', icon: '', keepAlive: true } }, { path: 'containerList', name: 'containerListCancel', code: '1053', component: () => import('@/views/materialManager/containerList'), meta: { code: '1053', title: '容器清单', icon: '', keepAlive: true } }, { path: 'inOutboundRecord', name: 'inOutboundRecordCancel', code: '1054', component: () => import('@/views/materialManager/inOutboundRecord'), meta: { code: '1054', title: '出入库记录', icon: '', keepAlive: true } }, { path: 'inventoryQuery', name: 'inventoryQueryCancel', code: '1055', component: () => import('@/views/materialManager/inventoryQuery'), meta: { code: '1055', title: '库存查询', icon: '', keepAlive: true } } ] }, { path: '/makeModel', component: Layout, redirect: '/makeModel/InventoryList', name: '制造模型', code: '1005', meta: { code: '1005', title: '制造模型', icon: 'icu' }, alwaysShow: true, children: [ { path: 'materialType', name: 'materialTypeCancel', code: '1060', component: () => import('@/views/makeModel/materialType'), meta: { code: '1060', title: '物料类型', icon: '', keepAlive: true } }, { path: 'InventoryList', name: 'InventoryListCancel', code: '1061', component: () => import('@/views/makeModel/InventoryList'), meta: { code: '1061', title: '存货档案', icon: '', keepAlive: true } }, { path: 'materialList', name: 'materialListCancel', code: '1062', component: () => import('@/views/makeModel/materialList'), meta: { code: '1062', title: '物料清单', icon: '', keepAlive: true } }, { path: 'processRoute', name: 'processRouteCancel', code: '1063', component: () => import('@/views/makeModel/processRoute'), meta: { code: '1063', title: '工艺路线', icon: '', keepAlive: true } }, { path: 'processDefine', name: 'processDefineCancel', code: '1064', component: () => import('@/views/makeModel/processDefine'), meta: { code: '1064', title: '工序定义', icon: '', keepAlive: true } }, { path: 'meterPrice', name: 'meterPriceCancel', code: '1065', component: () => import('@/views/makeModel/meterPrice'), meta: { code: '1065', title: '节拍工价', icon: '', keepAlive: true } } ] }, { path: '/produceManager', component: Layout, redirect: '/produceManager/produceOrder', name: '生产管理', code: '1006', meta: { code: '1006', title: '生产管理', icon: 'production' }, alwaysShow: true, children: [ { path: 'produceOrder', name: 'produceOrderCancel', code: '1070', component: () => import('@/views/produceManager/produceOrder'), meta: { code: '1070', title: '生产订单', icon: '', keepAlive: true } }, { path: 'workOrder', name: 'workOrderCancel', code: '1071', component: () => import('@/views/produceManager/workOrder'), meta: { code: '1071', title: '工单', icon: '', keepAlive: true } }, { path: 'workOrderDispatch', name: 'workOrderDispatchCancel', code: '1072', component: () => import('@/views/produceManager/workOrderDispatch'), meta: { code: '1072', title: '工单派工', icon: '', keepAlive: true } }, { path: 'produceStartOrder', name: 'produceStartOrderCancel', code: '1073', component: () => import('@/views/produceManager/produceStartOrder'), meta: { code: '1073', title: '生产开报工', icon: '', keepAlive: true } }, { path: 'workOrderBatchClose', name: 'workOrderBatchCloseCancel', code: '1074', component: () => import('@/views/produceManager/workOrderBatchClose'), meta: { code: '1074', title: '工单批量关闭', icon: '', keepAlive: true } }, { path: 'capacityPlanning', name: 'capacityPlanningCancel', code: '1075', component: () => import('@/views/produceManager/capacityPlanning'), meta: { code: '1075', title: '产能规划', icon: '', keepAlive: true } }, { path: 'AutoScheduling', name: 'AutoSchedulingCancel', code: '1076', component: () => import('@/views/produceManager/AutoScheduling'), meta: { code: '1076', title: '自动排程', icon: '', keepAlive: true } }, { path: 'productWarehouse', name: 'productWarehouseCancel', code: '1077', component: () => import('@/views/produceManager/productWarehouse'), meta: { code: '1077', title: '生产入库', icon: '', keepAlive: true } } ] }, { path: '/qualityManager', component: Layout, redirect: '/qualityManager/defectDefine', name: '质量管理', code: '1007', meta: { code: '1007', title: '质量管理', icon: 'quality' }, alwaysShow: true, children: [ { path: 'qualityStandard', name: 'qualityStandardCancel', code: '1080', component: () => import('@/views/qualityManager/qualityStandard'), meta: { code: '1080', title: '质检标准', icon: '', keepAlive: true } }, { path: 'defectDefine', name: 'defectDefineCancel', code: '1081', component: () => import('@/views/qualityManager/defectDefine'), meta: { code: '1081', title: '缺陷定义', icon: '', keepAlive: true } }, { path: 'processCheck', name: 'processCheckCancel', code: '1082', component: () => import('@/views/qualityManager/processCheck'), meta: { code: '1082', title: '工序检验', icon: '', keepAlive: true } }, { path: 'logisticsCheck', name: 'logisticsCheckCancel', code: '1083', component: () => import('@/views/qualityManager/logisticsCheck'), meta: { code: '1083', title: '物流检验', icon: '', keepAlive: true } }, { path: 'defectStatistics', name: 'defectStatisticsCancel', code: '1084', component: () => import('@/views/qualityManager/defectStatistics'), meta: { code: '1084', title: '缺陷统计', icon: '', keepAlive: true } }, { path: 'processCheckStandard', name: 'processCheckStandardCancel', code: '1085', component: () => import('@/views/qualityManager/processCheckStandard'), meta: { code: '1085', title: '工序检验标准', icon: '', keepAlive: true } }, { path: 'processCheckItem', name: 'processCheckItemCancel', code: '1086', component: () => import('@/views/qualityManager/processCheckItem'), meta: { code: '1086', title: '工序检验项目', icon: '', keepAlive: true } }, { path: 'processCheckRecord', name: 'processCheckRecordCancel', code: '1087', component: () => import('@/views/qualityManager/processCheckRecord'), meta: { code: '1087', title: '工序检验记录', icon: '', keepAlive: true } }, { path: 'qualityPlaning', name: 'ZJFACancel', code: '1088', component: () => import('@/views/qualityManager/qualityPlaning'), meta: { code: '1088', title: '质检方案', icon: '', keepAlive: true } } ] }, { path: '/reportManager', component: Layout, redirect: '/reportManager/groupSalaryList', name: '报表管理', code: '1008', meta: { code: '1008', title: '报表管理', icon: 'bbgl' }, alwaysShow: true, children: [ { path: 'produceSchedule', name: 'produceScheduleCancel', code: '1098', component: () => import('@/views/reportManager/produceSchedule'), meta: { code: '1098', title: '生产进度报表', icon: '', keepAlive: true } }, { path: 'groupSalaryList', name: 'groupSalaryListCancel', code: '1090', component: () => import('@/views/reportManager/groupSalaryList'), meta: { code: '1090', title: '班组工资统计', icon: '', keepAlive: true } }, { path: 'personSalaryList', name: 'personSalaryListCancel', code: '1091', component: () => import('@/views/reportManager/personSalaryList'), meta: { code: '1091', title: '人员工资', icon: '', keepAlive: true } }, { path: 'subcontractingOperation', name: 'subcontractingOperationCancel', code: '1092', component: () => import('@/views/reportManager/subcontractingOperation'), meta: { code: '1092', title: '委外工序', icon: '', keepAlive: true } }, { path: 'defectDetailList', name: 'defectDetailListCancel', code: '1093', component: () => import('@/views/reportManager/defectDetailList'), meta: { code: '1093', title: '不良明细', icon: '', keepAlive: true } }, { path: 'abnormalQualityList', name: 'abnormalQualityListCancel', code: '1094', component: () => import('@/views/reportManager/abnormalQualityList'), meta: { code: '1094', title: '品质异常', icon: '', keepAlive: true } }, { path: 'repairDetailList', name: 'repairDetailListCancel', code: '1095', component: () => import('@/views/reportManager/repairDetailList'), meta: { code: '1095', title: '维修明细', icon: '', keepAlive: true } }, { path: 'installationLampList', name: 'installationLampListCancel', code: '1096', component: () => import('@/views/reportManager/installationLampList'), meta: { code: '1096', title: '安灯报表', icon: '', keepAlive: true } }, { path: 'logisticsCheck', name: 'logisticsCheckCancel', code: '1097', component: () => import('@/views/reportManager/logisticsCheck'), meta: { code: '1097', title: '物流检验报表', icon: '', keepAlive: true } } ] }, { path: '/systemSettings', component: Layout, redirect: '/systemSettings/bmgz', name: '系统设置', code: '1009', meta: { code: '1009', title: '系统设置', icon: 'xtsz' }, alwaysShow: true, children: [ { path: 'codingRules', name: 'codingRulesCancel', code: '1101', component: () => import('@/views/systemSettings/codingRules'), meta: { code: '1101', title: '编码规则', icon: '', keepAlive: true } }, { path: 'passwordEdit', name: 'passwordEditCancel', code: '1102', component: () => import('@/views/systemSettings/passwordEdit'), meta: { code: '1102', title: '密码修改', icon: '', keepAlive: true } }, { path: 'systemLog', name: 'systemLogCancel', code: '1103', component: () => import('@/views/systemSettings/systemLog'), meta: { code: '1103', title: '系统日志', icon: '', keepAlive: true } }, { path: 'sopUpload', name: 'sopUploadCancel', code: '1104', component: () => import('@/views/systemSettings/sopUpload'), meta: { code: '1104', title: 'SOP上传', icon: '', keepAlive: true } }, { path: 'shopNotice', name: 'shopNoticeCancel', code: '1105', component: () => import('@/views/systemSettings/shopNotice'), meta: { code: '1105', title: '车间公告', icon: '', keepAlive: true } } ] }, { path: '/purchasesManager', component: Layout, redirect: '/purchasesManager/purchasesList', name: '采购管理', code: '1000', meta: { code: '1000', title: '采购管理', icon: 'cggl' }, alwaysShow: true, children: [ { path: 'purchasesList', name: 'CGDDCancel', code: '1201', component: () => import('@/views/purchasesManager/purchasesList'), meta: { code: '1201', title: '采购订单', icon: '', keepAlive: true } }, { path: 'arrivalNoticeList', name: 'arrivalNoticeListCancel', code: '1202', component: () => import('@/views/purchasesManager/arrivalNoticeList'), meta: { code: '1202', title: '采购收货单', icon: '', keepAlive: true } }, { path: 'salesStatisticsList', name: 'salesStatisticsCancel', code: '1203', component: () => import('@/views/purchasesManager/salesStatisticsList'), meta: { code: '1203', title: '销售订单', icon: '', keepAlive: true } }, { path: 'goodsStatisticsList', name: 'goodsStatisticsListCancel', code: '1204', component: () => import('@/views/purchasesManager/goodsStatisticsList'), meta: { code: '1204', title: '销货单', icon: '', keepAlive: true } }, { path: 'InventoryLedgerList', name: 'InventoryLedgerListCancel', code: '1205', component: () => import('@/views/purchasesManager/InventoryLedgerList'), meta: { code: '1205', title: '库存台账', icon: '', keepAlive: true } } ] } ] const createRouter = () => new Router({ // mode: 'history', // require service support scrollBehavior: () => ({ y: 0 }), routes: commonRoutes }) const router = createRouter() // Detail see: https://github.com/vuejs/vue-router/issues/1234#issuecomment-357941465 export function resetRouter() { const newRouter = createRouter() router.matcher = newRouter.matcher // reset router } export default router