You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
250 lines
4.9 KiB
250 lines
4.9 KiB
import type { Menu } from '/@/router/types'
|
|
|
|
const workbenchMenu: Menu = {
|
|
path: '/workbench',
|
|
name: 'Workbench',
|
|
component: 'LAYOUT',
|
|
redirect: '/workbench/index',
|
|
meta: {
|
|
orderNo: 90001,
|
|
hideChildrenInMenu: true,
|
|
icon: 'ant-design:pay-circle-outlined',
|
|
title: 'routes.basic.workbench',
|
|
},
|
|
children: [
|
|
{
|
|
path: 'index',
|
|
name: 'WorkbenchPage',
|
|
component: '/sys/workbench/index.vue',
|
|
meta: {
|
|
title: 'routes.basic.workbench',
|
|
},
|
|
},
|
|
],
|
|
}
|
|
|
|
const clueMenu: Menu = {
|
|
path: '/clue',
|
|
name: 'clue',
|
|
component: 'LAYOUT',
|
|
redirect: '/clue/cluePool',
|
|
meta: {
|
|
orderNo: 90003,
|
|
hideChildrenInMenu: false,
|
|
icon: 'ant-design:dribbble-circle-filled',
|
|
title: 'routes.clue.clue',
|
|
},
|
|
children: [
|
|
{
|
|
path: 'clueIndex',
|
|
name: 'ClueIndex',
|
|
component: '/clue/clueIndex/index.vue',
|
|
meta: {
|
|
title: 'routes.clue.clueIndex',
|
|
},
|
|
},
|
|
{
|
|
path: 'cluePool',
|
|
name: 'CluePool',
|
|
component: '/clue/cluePool/index.vue',
|
|
meta: {
|
|
title: 'routes.clue.cluePool',
|
|
},
|
|
},
|
|
{
|
|
path: 'clueList',
|
|
name: 'ClueList',
|
|
component: '/clue/clueList/index.vue',
|
|
meta: {
|
|
title: 'routes.clue.clueList',
|
|
},
|
|
},
|
|
{
|
|
path: 'poolist',
|
|
name: 'Poolist',
|
|
component: '/clue/poolist/index.vue',
|
|
meta: {
|
|
title: 'routes.clue.poolist',
|
|
},
|
|
},
|
|
{
|
|
path: 'followlist',
|
|
name: 'Followlist',
|
|
component: '/clue/followlist/index.vue',
|
|
meta: {
|
|
title: 'routes.clue.followlist',
|
|
},
|
|
},
|
|
{
|
|
path: 'customer',
|
|
name: 'Customer',
|
|
component: '/clue/customer/index.vue',
|
|
meta: {
|
|
title: 'routes.clue.customer',
|
|
hideMenu: true,
|
|
},
|
|
},
|
|
],
|
|
}
|
|
|
|
const inviteMenu: Menu = {
|
|
path: '/invite',
|
|
name: 'Invite',
|
|
component: 'LAYOUT',
|
|
redirect: '/invite/index',
|
|
meta: {
|
|
orderNo: 90004,
|
|
hideChildrenInMenu: false,
|
|
icon: 'ant-design:whats-app-outlined',
|
|
title: 'routes.invite.invite',
|
|
},
|
|
children: [
|
|
{
|
|
path: 'statistics',
|
|
name: 'Statistics',
|
|
component: '/invite/statistics/index.vue',
|
|
meta: {
|
|
title: 'routes.invite.statistics',
|
|
},
|
|
},
|
|
{
|
|
path: 'index',
|
|
name: 'Index',
|
|
component: '/invite/index/index.vue',
|
|
meta: {
|
|
title: 'routes.invite.index',
|
|
},
|
|
},
|
|
{
|
|
path: 'list',
|
|
name: 'List',
|
|
component: '/invite/list/index.vue',
|
|
meta: {
|
|
title: 'routes.invite.list',
|
|
},
|
|
},
|
|
{
|
|
path: 'myList',
|
|
name: 'MyList',
|
|
component: '/invite/myList/index.vue',
|
|
meta: {
|
|
title: 'routes.invite.myList',
|
|
},
|
|
},
|
|
{
|
|
path: 'seasList',
|
|
name: 'SeasList',
|
|
component: '/invite/seasList/index.vue',
|
|
meta: {
|
|
title: 'routes.invite.seasList',
|
|
},
|
|
},
|
|
,
|
|
{
|
|
path: 'inviteInfo',
|
|
name: 'InviteInfo',
|
|
component: '/invite/inviteInfo/index.vue',
|
|
meta: {
|
|
title: 'routes.clue.customer',
|
|
hideMenu: true,
|
|
},
|
|
},
|
|
],
|
|
}
|
|
|
|
const marketMenu: Menu = {
|
|
path: '/market',
|
|
name: 'Market',
|
|
component: 'LAYOUT',
|
|
redirect: '/market/appointment',
|
|
meta: {
|
|
orderNo: 90005,
|
|
hideChildrenInMenu: false,
|
|
icon: 'ant-design:file-sync-outlined',
|
|
title: 'routes.invite.market',
|
|
},
|
|
children: [
|
|
{
|
|
path: 'appointment',
|
|
name: 'Appointment',
|
|
component: '/market/appointment/index.vue',
|
|
meta: {
|
|
title: 'routes.invite.appointment',
|
|
},
|
|
},
|
|
{
|
|
path: 'task',
|
|
name: 'Task',
|
|
component: '/market/task/index.vue',
|
|
meta: {
|
|
title: 'routes.invite.task',
|
|
},
|
|
},
|
|
{
|
|
path: 'contract',
|
|
name: 'Contract',
|
|
component: '/market/contract/index.vue',
|
|
meta: {
|
|
title: 'routes.invite.contract',
|
|
},
|
|
},
|
|
{
|
|
path: 'client',
|
|
name: 'Client',
|
|
component: '/market/client/index.vue',
|
|
meta: {
|
|
title: 'routes.invite.client',
|
|
},
|
|
},
|
|
],
|
|
}
|
|
|
|
|
|
const systemMenu: Menu = {
|
|
path: '/system',
|
|
name: 'System',
|
|
component: 'LAYOUT',
|
|
redirect: '/system/role',
|
|
meta: {
|
|
orderNo: 91014,
|
|
hideChildrenInMenu: false,
|
|
icon: 'ion:settings-outline',
|
|
title: 'routes.system.system',
|
|
},
|
|
children: [
|
|
{
|
|
path: 'menu',
|
|
name: 'Menu',
|
|
component: '/system/menu/index.vue',
|
|
meta: {
|
|
title: 'routes.system.menu',
|
|
},
|
|
},
|
|
{
|
|
path: 'role',
|
|
name: 'Role',
|
|
component: '/system/role/index.vue',
|
|
meta: {
|
|
title: 'routes.system.role',
|
|
},
|
|
},
|
|
{
|
|
path: 'staffList',
|
|
name: 'StaffList',
|
|
component: '/staff/staff/index.vue',
|
|
meta: {
|
|
title: 'routes.staff.staffList',
|
|
},
|
|
},
|
|
],
|
|
}
|
|
|
|
const appMenuList: Menu[] = [
|
|
workbenchMenu,
|
|
clueMenu,
|
|
inviteMenu,
|
|
marketMenu,
|
|
systemMenu,
|
|
]
|
|
// 测试账号:15014242835
|
|
export default appMenuList
|