| | |
| | | * a base page that does not have permission requirements |
| | | * all roles can be accessed |
| | | */ |
| | | // 共用模块 |
| | | export const commonRoutes = [ |
| | | /* |
| | | * 看板部分路由 |
| | |
| | | } |
| | | // { path: '*', redirect: '/404', hidden: true } |
| | | ] |
| | | export const asyncRoutes = [ |
| | | // 上云模块 |
| | | export const asyncRoutesCloud = [ |
| | | // 1.系统管理(基础设置类) |
| | | { |
| | | path: '/systemSetting', |
| | |
| | | path: '/orderManager', |
| | | component: Layout, |
| | | redirect: '/orderManager/erpProduceOrder', |
| | | name: '生产管理', |
| | | name: '订单管理', |
| | | code: '2004', |
| | | meta: { code: '2004', title: '生产管理', icon: 'production' }, |
| | | meta: { code: '2004', title: '订单管理', icon: 'production' }, |
| | | alwaysShow: true, |
| | | children: [ |
| | | { |
| | |
| | | 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/kb/zhkb'), |
| | | meta: { title: '综合看板', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'cgdd', |
| | | name: 'cgddCancel', |
| | | component: () => import('@/views/kb/cgdd'), |
| | | meta: { title: '采购订单', icon: '', keepAlive: true } |
| | | }, |
| | | { |
| | | path: 'ckgl', |
| | | name: 'ckglCancel', |
| | | component: () => import('@/views/kb/ckgl'), |
| | | meta: { title: '仓库管理', icon: '', keepAlive: true } |
| | | }, |
| | | { |
| | | path: 'cjzl', |
| | | name: 'ckglCancel', |
| | | component: () => import('@/views/kb/cjzl'), |
| | | meta: { title: '车间质量', icon: '', keepAlive: true } |
| | | }, |
| | | { |
| | | path: 'cjsc', |
| | | name: 'ckglCancel', |
| | | component: () => import('@/views/kb/cjsc'), |
| | | meta: { 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: '/jcsz', |
| | | component: Layout, |
| | | redirect: '/jcsz/zzjg', |
| | | name: '基础设置', |
| | | code: '1001', |
| | | meta: { code: '1001', title: '基础设置', icon: 'tree' }, |
| | | alwaysShow: true, // 当children只有一个时,也显示父菜单 |
| | | children: [ |
| | | { |
| | | path: 'zzjg', |
| | | name: 'ZZJGCancel', |
| | | code: '1010', |
| | | component: () => import('@/views/jcsz/zzjg'), |
| | | meta: { code: '1010', title: '组织架构', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'yhqd', |
| | | name: 'YYQDCancel', |
| | | code: '1011', |
| | | component: () => import('@/views/jcsz/yhqd'), |
| | | meta: { code: '1011', title: '用户清单', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'jsqd', |
| | | name: 'JSQDCancel', |
| | | code: '1012', |
| | | component: () => import('@/views/jcsz/jsqd'), |
| | | meta: { code: '1012', title: '角色清单', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'wldw', |
| | | name: 'WLDWCancel', |
| | | code: '1013', |
| | | component: () => import('@/views/jcsz/wldw'), |
| | | meta: { code: '1013', title: '往来单位', icon: '', keepAlive: true } |
| | | }, |
| | | { |
| | | path: 'adsz', |
| | | name: 'ADZZCancel', |
| | | code: '1014', |
| | | component: () => import('@/views/jcsz/adsz'), |
| | | meta: { code: '1014', title: '安灯设置', icon: '', keepAlive: true } |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | path: '/sbgl', |
| | | component: Layout, |
| | | redirect: '/sbgl/sblx', |
| | | name: '设备管理', |
| | | code: '1002', |
| | | meta: { code: '1002', title: '设备管理', icon: 'example' }, |
| | | alwaysShow: true, |
| | | children: [ |
| | | { |
| | | path: 'sblx', |
| | | name: 'SBLXCancel', |
| | | code: '1020', |
| | | component: () => import('@/views/sbgl/sblx'), |
| | | meta: { code: '1020', title: '设备类型', icon: '', keepAlive: true } |
| | | }, |
| | | { |
| | | path: 'wxjl', |
| | | code: '1029Cancel', |
| | | name: 'WXJL', |
| | | component: () => import('@/views/sbgl/wxjl'), |
| | | meta: { code: '1029', title: '维修记录', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'sbz', |
| | | name: 'SBZCancel', |
| | | code: '1021', |
| | | component: () => import('@/views/sbgl/sbz'), |
| | | meta: { code: '1021', title: '设备组', icon: '', keepAlive: true } |
| | | }, |
| | | { |
| | | path: 'sbqd', |
| | | name: 'sbqdCancel', |
| | | code: '1022', |
| | | component: () => import('@/views/sbgl/sbqd'), |
| | | meta: { code: '1022', title: '设备清单', icon: '', keepAlive: true } |
| | | }, |
| | | { |
| | | path: 'djbz', |
| | | name: 'DJBZCancel', |
| | | code: '1023', |
| | | component: () => import('@/views/sbgl/djbz'), |
| | | meta: { code: '1023', title: '点检标准', icon: '', keepAlive: true } |
| | | }, |
| | | { |
| | | path: 'djbw', |
| | | name: 'DJBWCancel', |
| | | code: '1024', |
| | | component: () => import('@/views/sbgl/djbw'), |
| | | meta: { code: '1024', title: '点检部位', icon: '', keepAlive: true } |
| | | }, |
| | | { |
| | | path: 'bybz', |
| | | name: 'BYBZCancel', |
| | | code: '1025', |
| | | component: () => import('@/views/sbgl/bybz'), |
| | | meta: { code: '1025', title: '保养标准', icon: '', keepAlive: true } |
| | | }, |
| | | { |
| | | path: 'bybw', |
| | | name: 'BYBWCancel', |
| | | code: '1026', |
| | | component: () => import('@/views/sbgl/bybw'), |
| | | meta: { code: '1026', title: '保养部位', icon: '', keepAlive: true } |
| | | }, |
| | | { |
| | | path: 'djjl', |
| | | name: 'DJJLCancel', |
| | | code: '1027', |
| | | component: () => import('@/views/sbgl/djjl'), |
| | | meta: { code: '1027', title: '点检记录', icon: '', keepAlive: true } |
| | | }, |
| | | { |
| | | path: 'byjl', |
| | | name: 'BYJLCancel', |
| | | code: '1028', |
| | | component: () => import('@/views/sbgl/byjl'), |
| | | meta: { code: '1028', 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: '/wlgl', |
| | | component: Layout, |
| | | redirect: '/wlgl/ckdy', |
| | | name: '物料管理', |
| | | code: '1004', |
| | | meta: { code: '1004', title: '物料管理', icon: 'table' }, |
| | | alwaysShow: true, |
| | | children: [ |
| | | { |
| | | path: 'ckdy', |
| | | name: 'CKDYCancel', |
| | | code: '1050', |
| | | component: () => import('@/views/wlgl/ckdy'), |
| | | meta: { code: '1050', title: '仓库定义', icon: '', keepAlive: true } |
| | | }, |
| | | { |
| | | path: 'kwdy', |
| | | name: 'KWDYCancel', |
| | | code: '1051', |
| | | component: () => import('@/views/wlgl/kwdy'), |
| | | meta: { code: '1051', title: '库位定义', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'rqlx', |
| | | name: 'RYLXCancel', |
| | | code: '1052', |
| | | component: () => import('@/views/wlgl/rqlx'), |
| | | meta: { code: '1052', title: '容器类型', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'rqqd', |
| | | name: 'RQQDCancel', |
| | | code: '1053', |
| | | component: () => import('@/views/wlgl/rqqd'), |
| | | meta: { code: '1053', title: '容器清单', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'crkjl', |
| | | name: 'CRKJLCancel', |
| | | code: '1054', |
| | | component: () => import('@/views/wlgl/crkjl'), |
| | | meta: { code: '1054', title: '出入库记录', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'kccx', |
| | | name: 'KCCXCancel', |
| | | code: '1055', |
| | | component: () => import('@/views/wlgl/kccx'), |
| | | meta: { code: '1055', title: '库存查询', icon: '', keepAlive: true } |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | path: '/zzmx', |
| | | component: Layout, |
| | | redirect: '/zzmx/gylx', |
| | | name: '制造模型', |
| | | code: '1005', |
| | | meta: { code: '1005', title: '制造模型', icon: 'icu' }, |
| | | alwaysShow: true, |
| | | children: [ |
| | | { |
| | | path: 'wllx', |
| | | name: 'WLLXCancel', |
| | | code: '1060', |
| | | component: () => import('@/views/zzmx/wllx'), |
| | | meta: { code: '1060', title: '物料类型', icon: '', keepAlive: true } |
| | | }, |
| | | { |
| | | path: 'chda', |
| | | name: 'CHDACancel', |
| | | code: '1061', |
| | | component: () => import('@/views/zzmx/chda'), |
| | | meta: { code: '1061', title: '存货档案', icon: '', keepAlive: true } |
| | | }, |
| | | { |
| | | path: 'wlqd', |
| | | name: 'WLQDCancel', |
| | | code: '1062', |
| | | component: () => import('@/views/zzmx/wlqd'), |
| | | meta: { code: '1062', title: '物料清单', icon: '', keepAlive: true } |
| | | }, |
| | | { |
| | | path: 'gylx', |
| | | name: 'GYLXCancel', |
| | | code: '1063', |
| | | component: () => import('@/views/zzmx/gylx'), |
| | | meta: { code: '1063', title: '工艺路线', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'gxdy', |
| | | name: 'GXDYCancel', |
| | | code: '1064', |
| | | component: () => import('@/views/zzmx/gxdy'), |
| | | meta: { code: '1064', title: '工序定义', icon: '', keepAlive: true } |
| | | }, |
| | | { |
| | | path: 'jpgj', |
| | | name: 'JPGJCancel', |
| | | code: '1065', |
| | | component: () => import('@/views/zzmx/jpgj'), |
| | | meta: { code: '1065', title: '节拍工价', icon: '', keepAlive: true } |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | path: '/scgl', |
| | | component: Layout, |
| | | redirect: '/scgl/scdd', |
| | | name: '生产管理', |
| | | code: '1006', |
| | | meta: { code: '1006', title: '生产管理', icon: 'production' }, |
| | | alwaysShow: true, |
| | | children: [ |
| | | { |
| | | path: 'scdd', |
| | | name: 'SCDDCancel', |
| | | code: '1070', |
| | | component: () => import('@/views/scgl/scdd'), |
| | | meta: { code: '1070', title: 'ERP生产订单', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'gd', |
| | | name: 'GDCancel', |
| | | code: '1071', |
| | | component: () => import('@/views/scgl/gd'), |
| | | meta: { code: '1071', title: 'MES工单', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'gdpg', |
| | | name: 'GDPDCancel', |
| | | code: '1072', |
| | | component: () => import('@/views/scgl/gdpg'), |
| | | meta: { code: '1072', title: '工单派工', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'sckbg', |
| | | name: 'SCKBGCancel', |
| | | code: '1073', |
| | | component: () => import('@/views/scgl/sckbg'), |
| | | meta: { code: '1073', title: '生产开报工', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'gdplgb', |
| | | name: 'GDPLGBCancel', |
| | | code: '1074', |
| | | component: () => import('@/views/scgl/gdplgb'), |
| | | meta: { code: '1074', title: 'MES工单批量关闭', icon: '', keepAlive: true } |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | path: '/zlgl', |
| | | component: Layout, |
| | | redirect: '/zlgl/zjbz', |
| | | name: '质量管理', |
| | | code: '1007', |
| | | meta: { code: '1007', title: '质量管理', icon: 'quality' }, |
| | | alwaysShow: true, |
| | | children: [ |
| | | { |
| | | path: 'zjbz', |
| | | name: 'ZJBZCancel', |
| | | code: '1080', |
| | | component: () => import('@/views/zlgl/zjbz'), |
| | | meta: { code: '1080', title: '质检标准', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'qxdy', |
| | | name: 'QXDYCancel', |
| | | code: '1081', |
| | | component: () => import('@/views/zlgl/qxdy'), |
| | | meta: { code: '1081', title: '缺陷定义', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'gxjy', |
| | | name: 'GXDYCancel', |
| | | code: '1082', |
| | | component: () => import('@/views/zlgl/gxjy'), |
| | | meta: { code: '1082', title: '工序检验', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'wljy', |
| | | name: 'WLJYCancel', |
| | | code: '1083', |
| | | component: () => import('@/views/zlgl/wljy'), |
| | | meta: { code: '1083', title: '物流检验', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'qxsj', |
| | | name: 'QXSJCancel', |
| | | code: '1084', |
| | | component: () => import('@/views/zlgl/qxsj'), |
| | | meta: { code: '1084', title: '缺陷统计', icon: '', keepAlive: true } |
| | | }, |
| | | { |
| | | path: 'gxjybz', |
| | | name: 'QXJYBZCancel', |
| | | code: '1085', |
| | | component: () => import('@/views/zlgl/gxjybz'), |
| | | meta: { code: '1085', title: '工序检验标准', icon: '', keepAlive: true } |
| | | }, |
| | | { |
| | | path: 'gxjyxm', |
| | | name: 'GXJYXMCancel', |
| | | code: '1086', |
| | | component: () => import('@/views/zlgl/gxjyxm'), |
| | | meta: { code: '1086', title: '工序检验项目', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'gxjyjl', |
| | | name: 'GXJYJLCancel', |
| | | code: '1087', |
| | | component: () => import('@/views/zlgl/gxjyjl'), |
| | | meta: { code: '1087', title: '工序检验记录', icon: '', keepAlive: true } |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | path: '/bbgl', |
| | | component: Layout, |
| | | redirect: '/bbgl/sczxbb', |
| | | name: '报表管理', |
| | | code: '1008', |
| | | meta: { code: '1008', title: '报表管理', icon: 'bbgl' }, |
| | | alwaysShow: true, |
| | | children: [ |
| | | { |
| | | path: 'scjd', |
| | | name: 'produceScheduleCancel', |
| | | code: '1098', |
| | | component: () => import('@/views/bbgl/scjd'), |
| | | meta: { code: '1098', title: '生产进度报表', icon: '', keepAlive: true } |
| | | }, |
| | | { |
| | | path: 'bzgztj', |
| | | name: 'BZGZTJCancel', |
| | | code: '1090', |
| | | component: () => import('@/views/bbgl/bzgz'), |
| | | meta: { code: '1090', title: '班组工资统计', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'rygz', |
| | | name: 'RYGZCancel', |
| | | code: '1091', |
| | | component: () => import('@/views/bbgl/rygz'), |
| | | meta: { code: '1091', title: '人员工资', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'wwgx', |
| | | name: 'WWGXCancel', |
| | | code: '1092', |
| | | component: () => import('@/views/bbgl/wwgx'), |
| | | meta: { code: '1092', title: '委外工序', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'blmx', |
| | | name: 'BLMXJCancel', |
| | | code: '1093', |
| | | component: () => import('@/views/bbgl/blmx'), |
| | | meta: { code: '1093', title: '不良明细', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'pzyc', |
| | | name: 'PZYCJCancel', |
| | | code: '1094', |
| | | component: () => import('@/views/bbgl/pzyc'), |
| | | meta: { code: '1094', title: '品质异常', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'wxmx', |
| | | name: 'WXMXJCancel', |
| | | code: '1095', |
| | | component: () => import('@/views/bbgl/wxmx'), |
| | | meta: { code: '1095', title: '维修明细', icon: '', keepAlive: true } |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | path: '/xtsz', |
| | | component: Layout, |
| | | redirect: '/xtsz/bmgz', |
| | | name: '系统设置', |
| | | code: '1009', |
| | | meta: { code: '1009', title: '系统设置', icon: 'xtsz' }, |
| | | alwaysShow: true, |
| | | children: [ |
| | | { |
| | | path: 'bmgz', |
| | | name: 'BMGZCancel', |
| | | code: '1101', |
| | | component: () => import('@/views/xtsz/bmgz'), |
| | | meta: { code: '1101', title: '编码规则', icon: '', keepAlive: true } |
| | | }, |
| | | { |
| | | path: 'mmxg', |
| | | name: 'MMXGCancel', |
| | | code: '1102', |
| | | component: () => import('@/views/xtsz/mmxg'), |
| | | meta: { code: '1102', title: '密码修改', icon: '', keepAlive: true } |
| | | }, |
| | | { |
| | | path: 'xtrz', |
| | | name: 'XTRZCancel', |
| | | code: '1103', |
| | | component: () => import('@/views/xtsz/xtrz'), |
| | | meta: { code: '1103', title: '系统日志', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'sc', |
| | | name: 'SCCancel', |
| | | code: '1104', |
| | | component: () => import('@/views/xtsz/sc'), |
| | | meta: { code: '1104', title: 'SOP上传', icon: '', keepAlive: true } |
| | | }, { |
| | | path: 'cjgg', |
| | | name: 'CJGGancel', |
| | | code: '1105', |
| | | component: () => import('@/views/xtsz/cjgg'), |
| | | meta: { code: '1105', title: '车间公告', icon: '', keepAlive: true } |
| | | } |
| | | ] |
| | | } |
| | | ] |
| | | const createRouter = () => new Router({ |
| | | // mode: 'history', // require service support |
| | | scrollBehavior: () => ({ y: 0 }), |