Files
oms/front/src/router/index.js

408 lines
11 KiB
JavaScript
Raw Normal View History

2026-03-10 18:45:36 +08:00
import Vue from "vue";
import Router from "vue-router";
Vue.use(Router);
/* Layout */
import Layout from "@/views/layout/Layout";
/** note: Submenu only appear when children.length>=1
* detail see https://panjiachen.github.io/vue-element-admin-site/guide/essentials/router-and-nav.html
**/
/**
* hidden: true if `hidden:true` will not show in the sidebar(default is false)
* alwaysShow: true if set true, will always show the root menu, whatever its child routes length
* if not set alwaysShow, only more than one route under the children
* it will becomes nested mode, otherwise not show the root menu
* redirect: noredirect if `redirect:noredirect` will no redirect in the breadcrumb
* name:'router-name' the name is used by <keep-alive> (must set!!!)
* meta : {
roles: ['admin','editor'] will control the page roles (you can set multiple roles)
title: 'title' the name show in submenu and breadcrumb (recommend set)
icon: 'svg-name' the icon show in the sidebar,
noCache: true if true ,the page will no be cached(default is false)
}
**/
export const constantRouterMap = [
{
path: "/redirect",
component: Layout,
hidden: true,
children: [
{
path: "/redirect/:path*",
component: () => import("@/views/assets-mgr/assetslist")
}
]
},
{
path: "/login",
component: () => import("@/views/login/index"),
hidden: true
},
{
path: "/auth-redirect",
component: () => import("@/views/login/authredirect"),
hidden: true
},
{
path: "/404",
component: () => import("@/views/errorPage/404"),
hidden: true
},
{
path: "/401",
component: () => import("@/views/errorPage/401"),
hidden: true
},
{
path: "/",
component: Layout,
meta: {
title: "我的工作台",
icon: "camera"
},
children: [
{
2026-03-24 17:19:15 +08:00
path: "/dashboard",
2026-03-10 18:45:36 +08:00
component: () => import("@/views/workbench/index"),
name: "我的工作台",
meta: { title: "我的工作台", icon: "component", noCache: true }
}
]
}
2026-03-24 17:19:15 +08:00
// {
// path: "/workbench",
// component: Layout,
// meta: {
// title: "我的工作台",
// icon: "camera"
// },
// children: [
// {
// path: "/workbench",
// component: () => import("@/views/workbench/index"),
// name: "我的工作台",
// meta: { title: "我的工作台", icon: "component", noCache: true }
// }
// ]
// }
]
2026-03-10 18:45:36 +08:00
//需要权限的路由表
export const asyncRouterMap = [
{
path: "/assets-mgr",
component: Layout,
name: "资产管理",
meta: {
title: "资产管理",
icon: "tree"
},
children: [
{
path: "assetslist",
component: () => import("@/views/assets-mgr/assetslist"),
name: "资产清单",
meta: { title: "资产清单", icon: "component", noCache: true }
},
{
path: "applylist",
component: () => import("@/views/assets-mgr/applylist"),
name: "申领记录",
meta: { title: "申领记录", icon: "component", noCache: true }
}
]
},
{
path: "/customer-mgr",
component: Layout,
name: "客户管理",
meta: {
title: "客户管理",
icon: "tree"
},
children: [
{
path: "customerlist",
component: () => import("@/views/customer-mgr/customerlist"),
name: "客户清单",
meta: { title: "客户清单", icon: "component", noCache: true }
},
{
path: "customersearch",
component: () => import("@/views/customer-mgr/customersearch"),
name: "客户检索",
meta: { title: "客户检索", icon: "component", noCache: true }
}
]
},
{
path: "/supplier-mgr",
component: Layout,
name: "供应商管理",
meta: {
title: "供应商管理",
icon: "tree"
},
children: [
{
path: "supplierlist",
component: () => import("@/views/supplier-mgr/supplierlist"),
name: "供应商清单",
meta: { title: "供应商清单", icon: "component", noCache: true }
},
{
path: "suppliersearch",
component: () => import("@/views/supplier-mgr/suppliersearch"),
name: "供应商检索",
meta: { title: "供应商检索", icon: "component", noCache: true }
}
]
},
{
path: "/develop-mgr",
component: Layout,
name: "研发管理",
meta: {
title: "研发管理",
icon: "tree"
},
children: [
{
path: "developlist1",
component: () => import("@/views/develop-mgr/developlist"),
props: { project_type: 3 },
name: "developlist1",
meta: { title: "研发的项目", icon: "component", noCache: true }
},
{
path: "developlist2",
component: () => import("@/views/develop-mgr/developlist"),
props: { project_type: 4 },
name: "developlist2",
meta: { title: "发布的项目", icon: "component", noCache: true }
}
]
},
{
path: "/customer-prj",
component: Layout,
name: "项目管理",
meta: {
title: "项目管理",
icon: "tree"
},
children: [
/*{
path: '/projectreport',
component: () => import('@/views/customer-prj/projectreport'),
name: 'projectreport',
meta: { title: '项目概述', icon: 'component', noCache: true }
},*/
{
path: "/projectlist1",
component: () => import("@/views/customer-prj/projectlist"),
props: { project_type: 1 },
name: "projectlist1",
meta: { title: "未启动项目", icon: "component", noCache: true }
},
{
path: "/projectlist2",
component: () => import("@/views/customer-prj/projectlist"),
props: { project_type: 2 },
name: "projectlist2",
meta: { title: "执行中项目", icon: "component", noCache: true }
},
{
path: "/projectlist3",
component: () => import("@/views/customer-prj/projectlist"),
props: { project_type: 3 },
name: "projectlist3",
meta: { title: "质保期项目", icon: "component", noCache: true }
},
{
path: "projectlist4",
component: () => import("@/views/customer-prj/projectlist"),
props: { project_type: 4 },
name: "projectlist4",
meta: { title: "已关闭项目", icon: "component", noCache: true }
} /*,
{
path: 'projecttask',
component: () => import('@/views/customer-prj/projecttask'),
name: '项目任务',
meta: { title: '项目任务', icon: 'component', noCache: true }
},
{
path: 'projectsearch',
component: () => import('@/views/customer-prj/projectsearch'),
name: '项目检索',
meta: { title: '项目检索', icon: 'component', noCache: true }
}*/
]
},
/*{
path: "/develop-prj",
component: Layout,
name: "研发项目",
meta: {
title: "研发项目",
icon: "tree"
},
children: [
{
path: "/projectlist5",
component: () => import("@/views/develop-prj/projectlist"),
props: { project_type: 3 },
name: "projectlist5",
meta: { title: "研发中的项目", icon: "component", noCache: true }
},
{
path: "/projectlist6",
component: () => import("@/views/develop-prj/projectlist"),
props: { project_type: 4 },
name: "projectlist6",
meta: { title: "发布中的项目", icon: "component", noCache: true }
}
]
},*/
{
path: "/hr-mgr",
component: Layout,
name: "人事管理",
meta: {
title: "人事管理",
icon: "tree"
},
children: [
{
path: "deptlist",
component: () => import("@/views/hr-mgr/deptlist"),
name: "组织结构",
meta: { title: "组织结构", icon: "component", noCache: true }
},
{
path: "stafflist",
component: () => import("@/views/hr-mgr/stafflist"),
name: "员工名录",
meta: { title: "员工名录", icon: "component", noCache: true }
}
]
},
{
path: "/contract-mgr",
component: Layout,
name: "合同管理",
meta: {
title: "合同管理",
icon: "tree"
},
children: [
{
path: "projectcontract",
component: () => import("@/views/contract-mgr/projectcontract"),
name: "项目合同",
meta: { title: "项目合同", icon: "component", noCache: true }
},
{
path: "developcontract",
component: () => import("@/views/contract-mgr/developcontract"),
name: "研发合同",
meta: { title: "研发合同", icon: "component", noCache: true }
},
{
path: "operationcontract",
component: () => import("@/views/contract-mgr/operationcontract"),
name: "运营合同",
meta: { title: "运营合同", icon: "component", noCache: true }
},
{
path: "contractsearch",
component: () => import("@/views/contract-mgr/contractsearch"),
name: "合同检索",
meta: { title: "合同检索", icon: "component", noCache: true }
}
]
},
{
path: "/operation-mgr",
component: Layout,
name: "运营管理",
meta: {
title: "运营管理",
icon: "tree"
},
children: [
{
path: "companynotice",
component: () => import("@/views/operation-mgr/companynotice"),
name: "公司公告",
meta: { title: "公司公告", icon: "component", noCache: true }
},
/*{
path: "weeklyreport",
component: () => import("@/views/operation-mgr/weeklyreport"),
name: "工作周报",
meta: { title: "工作周报", icon: "component", noCache: true }
},*/
{
path: "operationwork",
component: () => import("@/views/operation-mgr/operationwork"),
name: "运营工作",
meta: { title: "运营工作", icon: "component", noCache: true }
},
{
path: "employeestatistics",
component: () => import("@/views/operation-mgr/employeestatistics"),
name: "运营统计",
meta: { title: "运营统计", icon: "component", noCache: true }
}
]
},
{
path: "/system-mgr",
component: Layout,
meta: {
title: "系统管理",
icon: "model",
level: 3,
roles: ["admin"]
},
children: [
{
path: "imglist",
component: () => import("@/views/system-mgr/imglist"),
name: "配置管理",
meta: { title: "配置管理" }
},
{
path: "userlist",
component: () => import("@/views/system-mgr/userlist"),
name: "用户管理",
meta: { title: "用户管理" }
},
{
path: "functionlist",
component: () => import("@/views/system-mgr/functionlist"),
name: "权限分配",
meta: { title: "权限分配" }
}
/*{
path: 'smsmsgpush',
component: () => import('@/views/system-mgr/smsmsgpush'),
name: '消息管理',
meta: { title: '消息管理' }
}*/
]
}
];
export default new Router({
// mode: 'history', // require service support
scrollBehavior: () => ({ y: 0 }),
routes: constantRouterMap
});