4493 lines
115 KiB
TypeScript
4493 lines
115 KiB
TypeScript
import { defineMock } from "./base";
|
|
|
|
export default defineMock([
|
|
{
|
|
url: "menus/routes",
|
|
method: ["GET"],
|
|
body: {
|
|
code: "00000",
|
|
data: [
|
|
{
|
|
path: "/system",
|
|
component: "Layout",
|
|
redirect: "/system/user",
|
|
name: "/system",
|
|
meta: {
|
|
title: "系统管理",
|
|
icon: "system",
|
|
hidden: false,
|
|
params: null,
|
|
},
|
|
children: [
|
|
{
|
|
path: "user",
|
|
component: "system/user/index",
|
|
name: "User",
|
|
meta: {
|
|
title: "用户管理",
|
|
icon: "el-icon-User",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "role",
|
|
component: "system/role/index",
|
|
name: "Role",
|
|
meta: {
|
|
title: "角色管理",
|
|
icon: "role",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "menu",
|
|
component: "system/menu/index",
|
|
name: "SysMenu",
|
|
meta: {
|
|
title: "菜单管理",
|
|
icon: "menu",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "dept",
|
|
component: "system/dept/index",
|
|
name: "Dept",
|
|
meta: {
|
|
title: "部门管理",
|
|
icon: "tree",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "dict",
|
|
component: "system/dict/index",
|
|
name: "Dict",
|
|
meta: {
|
|
title: "字典管理",
|
|
icon: "dict",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "log",
|
|
component: "system/log/index",
|
|
name: "Log",
|
|
meta: {
|
|
title: "系统日志",
|
|
icon: "document",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "config",
|
|
component: "system/config/index",
|
|
name: "Config",
|
|
meta: {
|
|
title: "系统配置",
|
|
icon: "setting",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "notice",
|
|
component: "system/notice/index",
|
|
name: "Notice",
|
|
meta: {
|
|
title: "通知公告",
|
|
icon: "",
|
|
hidden: false,
|
|
params: null,
|
|
},
|
|
},
|
|
],
|
|
},
|
|
{
|
|
path: "/data-screen",
|
|
component: null,
|
|
name: null,
|
|
meta: {
|
|
title: "数据大屏",
|
|
icon: "el-icon-Monitor",
|
|
hidden: false,
|
|
params: null,
|
|
externalUrl: "/data-screen",
|
|
},
|
|
},
|
|
{
|
|
path: "/codegen",
|
|
component: "codegen/index",
|
|
name: "Codegen",
|
|
meta: {
|
|
title: "代码生成",
|
|
icon: "code",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "/component",
|
|
component: "Layout",
|
|
redirect: "/component/basic/icon-demo",
|
|
name: "/component",
|
|
meta: {
|
|
title: "通用组件",
|
|
icon: "el-icon-SetUp",
|
|
hidden: false,
|
|
params: null,
|
|
},
|
|
children: [
|
|
{
|
|
path: "basic",
|
|
component: "Layout",
|
|
redirect: "",
|
|
name: "basic",
|
|
meta: {
|
|
title: "基础组件",
|
|
icon: "el-icon-Brush",
|
|
hidden: false,
|
|
params: null,
|
|
},
|
|
children: [
|
|
{
|
|
path: "icon-demo",
|
|
component: "demo/component/icons",
|
|
redirect: "",
|
|
name: "IconDemo",
|
|
meta: {
|
|
title: "Icons",
|
|
icon: "el-icon-Notification",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "drag",
|
|
component: "demo/component/drag",
|
|
redirect: "",
|
|
name: "Drag",
|
|
meta: {
|
|
title: "拖拽组件",
|
|
icon: "",
|
|
hidden: false,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "text-scroll",
|
|
component: "demo/component/text-scroll",
|
|
redirect: "",
|
|
name: "TextScroll",
|
|
meta: {
|
|
title: "滚动文本",
|
|
icon: "",
|
|
hidden: false,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "dict-sync",
|
|
component: "demo/component/dict-sync",
|
|
redirect: "",
|
|
name: "DictSync",
|
|
meta: {
|
|
title: "字典实时同步",
|
|
icon: "",
|
|
hidden: false,
|
|
params: null,
|
|
},
|
|
},
|
|
],
|
|
},
|
|
{
|
|
path: "form",
|
|
component: "Layout",
|
|
redirect: "",
|
|
name: "form",
|
|
meta: {
|
|
title: "表单组件",
|
|
icon: "el-icon-EditPen",
|
|
hidden: false,
|
|
params: null,
|
|
},
|
|
children: [
|
|
{
|
|
path: "wang-editor",
|
|
component: "demo/component/wang-editor",
|
|
redirect: "",
|
|
name: "WangEditor",
|
|
meta: {
|
|
title: "富文本编辑器",
|
|
icon: "",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "upload",
|
|
component: "demo/component/upload",
|
|
redirect: "",
|
|
name: "Upload",
|
|
meta: {
|
|
title: "图片上传",
|
|
icon: "",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "icon-select",
|
|
component: "demo/component/icon-select",
|
|
redirect: "",
|
|
name: "DemoIconSelect",
|
|
meta: {
|
|
title: "图标选择器",
|
|
icon: "",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "dict-demo",
|
|
component: "demo/component/dictionary",
|
|
redirect: "",
|
|
name: "DictDemo",
|
|
meta: {
|
|
title: "字典组件",
|
|
icon: "",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "table-select",
|
|
component: "demo/component/table-select/index",
|
|
redirect: "",
|
|
name: "TableSelect",
|
|
meta: {
|
|
title: "列表选择器",
|
|
icon: "",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
],
|
|
},
|
|
{
|
|
path: "table",
|
|
component: "Layout",
|
|
redirect: "",
|
|
name: "table",
|
|
meta: {
|
|
title: "表格组件",
|
|
icon: "el-icon-Grid",
|
|
hidden: false,
|
|
params: null,
|
|
},
|
|
children: [
|
|
{
|
|
path: "crud",
|
|
component: "demo/table/crud/index",
|
|
redirect: "",
|
|
name: "Crud",
|
|
meta: {
|
|
title: "增删改查",
|
|
icon: "",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "crud-single",
|
|
component: "demo/table/crud-single",
|
|
redirect: "",
|
|
name: "CrudSingle",
|
|
meta: {
|
|
title: "CRUD单文件",
|
|
icon: "el-icon-Reading",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "vxe-table",
|
|
component: "demo/table/vxe-table/index",
|
|
redirect: "",
|
|
name: "VxeTable",
|
|
meta: {
|
|
title: "VxeTable",
|
|
icon: "el-icon-MagicStick",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "operation-column",
|
|
component: "demo/table/auto-operation-column",
|
|
redirect: "",
|
|
name: "AutoOperationColumn",
|
|
meta: {
|
|
title: "自适应表格操作列",
|
|
icon: "",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
path: "/multi-level",
|
|
component: "Layout",
|
|
redirect: "/multi-level/level-one/level-two/level-three-a",
|
|
name: "/multi-level",
|
|
meta: {
|
|
title: "多级菜单",
|
|
icon: "el-icon-Guide",
|
|
hidden: false,
|
|
params: null,
|
|
},
|
|
children: [
|
|
{
|
|
path: "level-one",
|
|
component: "Layout",
|
|
name: "level-one",
|
|
meta: {
|
|
title: "一级菜单",
|
|
icon: "",
|
|
hidden: false,
|
|
params: null,
|
|
},
|
|
children: [
|
|
{
|
|
path: "level-two",
|
|
component: "Layout",
|
|
name: "level-two",
|
|
meta: {
|
|
title: "二级菜单",
|
|
icon: "",
|
|
hidden: false,
|
|
params: null,
|
|
},
|
|
children: [
|
|
{
|
|
path: "level-three-a",
|
|
component: "demo/route/multi-level/level-one/level-two/level-three-a/index",
|
|
redirect: "",
|
|
name: "MultiLevelLevelThreeA",
|
|
meta: {
|
|
title: "三级菜单 A",
|
|
icon: "",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "level-three-b",
|
|
component: "demo/route/multi-level/level-one/level-two/level-three-b/index",
|
|
redirect: "",
|
|
name: "MultiLevelLevelThreeB",
|
|
meta: {
|
|
title: "三级菜单 B",
|
|
icon: "",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
],
|
|
},
|
|
],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
path: "/route-example",
|
|
component: "Layout",
|
|
redirect: "/route-example/route-param",
|
|
name: "/route-example",
|
|
meta: {
|
|
title: "路由示例",
|
|
icon: "el-icon-Share",
|
|
hidden: false,
|
|
params: null,
|
|
},
|
|
children: [
|
|
{
|
|
path: "route-param",
|
|
component: "demo/route/route-param",
|
|
name: "RouteParam",
|
|
meta: {
|
|
title: "路由参数",
|
|
icon: "el-icon-Star",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "cache",
|
|
component: "demo/route/cache/index",
|
|
name: "RouteCache",
|
|
meta: {
|
|
title: "页面缓存",
|
|
icon: "el-icon-Stopwatch",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "navigate",
|
|
component: "demo/route/navigate/index",
|
|
name: "RouteNavigate",
|
|
meta: {
|
|
title: "页面跳转",
|
|
icon: "el-icon-Position",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "iframe",
|
|
component: "iframe",
|
|
name: null,
|
|
meta: {
|
|
title: "内嵌页面",
|
|
icon: "el-icon-Document",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
externalUrl:
|
|
"https://www.apifox.cn/apidoc/shared-195e783f-4d85-4235-a038-eec696de4ea5",
|
|
},
|
|
},
|
|
{
|
|
path: "https://juejin.cn/post/7228990409909108793",
|
|
component: null,
|
|
name: null,
|
|
meta: {
|
|
title: "外部链接",
|
|
icon: "el-icon-Link",
|
|
hidden: false,
|
|
params: null,
|
|
externalUrl: "https://juejin.cn/post/7228990409909108793",
|
|
},
|
|
},
|
|
],
|
|
},
|
|
{
|
|
path: "/dynamic-form",
|
|
component: "Layout",
|
|
redirect: "/dynamic-form/definition",
|
|
name: "/dynamic-form",
|
|
meta: {
|
|
title: "动态表单",
|
|
icon: "el-icon-Document",
|
|
hidden: false,
|
|
params: JSON.parse('{"badge":"NEW"}'),
|
|
},
|
|
children: [
|
|
{
|
|
path: "definition",
|
|
component: "dynamic-form/index",
|
|
name: "FormDefinition",
|
|
meta: {
|
|
title: "表单列表",
|
|
icon: "el-icon-List",
|
|
hidden: false,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "data",
|
|
component: "dynamic-form/data",
|
|
name: "FormData",
|
|
meta: {
|
|
title: "表单数据",
|
|
icon: "",
|
|
hidden: true,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "designer",
|
|
component: "dynamic-form/designer",
|
|
name: "FormDesigner",
|
|
meta: {
|
|
title: "表单设计器",
|
|
icon: "",
|
|
hidden: true,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "preview",
|
|
component: "dynamic-form/preview",
|
|
name: "FormPreview",
|
|
meta: {
|
|
title: "表单预览",
|
|
icon: "",
|
|
hidden: true,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "sample",
|
|
component: "Layout",
|
|
redirect: "/dynamic-form/sample/open_source_survey",
|
|
name: "sample",
|
|
meta: {
|
|
title: "表单示例",
|
|
icon: "el-icon-Files",
|
|
hidden: false,
|
|
params: null,
|
|
},
|
|
children: [
|
|
{
|
|
path: "open_source_survey",
|
|
component: "dynamic-form/render",
|
|
name: "FormRenderOpenSourceSurvey",
|
|
meta: {
|
|
title: "开源项目问卷收集",
|
|
icon: "el-icon-Tickets",
|
|
hidden: false,
|
|
params: JSON.parse('{"formKey":"open_source_survey"}'),
|
|
},
|
|
},
|
|
{
|
|
path: "activity_registration",
|
|
component: "dynamic-form/render",
|
|
name: "FormRenderActivityRegistration",
|
|
meta: {
|
|
title: "活动报名表",
|
|
icon: "el-icon-Calendar",
|
|
hidden: false,
|
|
params: JSON.parse('{"formKey":"activity_registration"}'),
|
|
},
|
|
},
|
|
{
|
|
path: "feedback",
|
|
component: "dynamic-form/render",
|
|
name: "FormRenderFeedback",
|
|
meta: {
|
|
title: "意见反馈",
|
|
icon: "el-icon-ChatLineRound",
|
|
hidden: false,
|
|
params: JSON.parse('{"formKey":"feedback"}'),
|
|
},
|
|
},
|
|
],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
path: "/workflow",
|
|
component: "Layout",
|
|
redirect: "/workflow/launch",
|
|
name: "/workflow",
|
|
meta: {
|
|
title: "工作流",
|
|
icon: "el-icon-Connection",
|
|
hidden: false,
|
|
params: JSON.parse('{"badge":"NEW"}'),
|
|
},
|
|
children: [
|
|
{
|
|
path: "model",
|
|
component: "workflow/model",
|
|
name: "WorkflowModel",
|
|
meta: {
|
|
title: "流程设计",
|
|
icon: "el-icon-Coin",
|
|
hidden: false,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "designer",
|
|
component: "workflow/designer",
|
|
name: "WorkflowDesigner",
|
|
meta: {
|
|
title: "流程设计器",
|
|
icon: "",
|
|
hidden: true,
|
|
keepAlive: true,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "launch",
|
|
component: "workflow/launch",
|
|
name: "WorkflowLaunch",
|
|
meta: {
|
|
title: "发起流程",
|
|
icon: "el-icon-Promotion",
|
|
hidden: false,
|
|
params: null,
|
|
},
|
|
},
|
|
{
|
|
path: "task",
|
|
component: "workflow/task/index",
|
|
name: "WorkflowTask",
|
|
meta: {
|
|
title: "审批中心",
|
|
icon: "el-icon-Stamp",
|
|
hidden: false,
|
|
params: null,
|
|
},
|
|
},
|
|
],
|
|
},
|
|
],
|
|
msg: "一切ok",
|
|
},
|
|
},
|
|
|
|
// 获取菜单树形表格列表
|
|
{
|
|
url: "menus",
|
|
method: ["GET"],
|
|
body: {
|
|
code: "00000",
|
|
data: [
|
|
{
|
|
id: "1",
|
|
parentId: "0",
|
|
name: "系统管理",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "/system",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "system",
|
|
redirect: "/system/user",
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: "101",
|
|
parentId: "1",
|
|
name: "用户管理",
|
|
type: "M",
|
|
routeName: "User",
|
|
routePath: "user",
|
|
component: "system/user/index",
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "el-icon-User",
|
|
redirect: null,
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [
|
|
{
|
|
id: "10101",
|
|
parentId: "101",
|
|
name: "用户查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:user:list",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10102",
|
|
parentId: "101",
|
|
name: "用户新增",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:user:create",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10103",
|
|
parentId: "101",
|
|
name: "用户编辑",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:user:update",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10104",
|
|
parentId: "101",
|
|
name: "用户删除",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 4,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:user:delete",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10105",
|
|
parentId: "101",
|
|
name: "重置密码",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 5,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:user:reset-password",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10106",
|
|
parentId: "101",
|
|
name: "用户导入",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 6,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:user:import",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10107",
|
|
parentId: "101",
|
|
name: "用户导出",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 7,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:user:export",
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "102",
|
|
parentId: "1",
|
|
name: "角色管理",
|
|
type: "M",
|
|
routeName: "Role",
|
|
routePath: "role",
|
|
component: "system/role/index",
|
|
externalUrl: null,
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "role",
|
|
redirect: null,
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [
|
|
{
|
|
id: "10201",
|
|
parentId: "102",
|
|
name: "角色查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:role:list",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10202",
|
|
parentId: "102",
|
|
name: "角色新增",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:role:create",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10203",
|
|
parentId: "102",
|
|
name: "角色编辑",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:role:update",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10204",
|
|
parentId: "102",
|
|
name: "角色删除",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 4,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:role:delete",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10205",
|
|
parentId: "102",
|
|
name: "角色分配权限",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 5,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:role:assign",
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "103",
|
|
parentId: "1",
|
|
name: "菜单管理",
|
|
type: "M",
|
|
routeName: "SysMenu",
|
|
routePath: "menu",
|
|
component: "system/menu/index",
|
|
externalUrl: null,
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "menu",
|
|
redirect: null,
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [
|
|
{
|
|
id: "10301",
|
|
parentId: "103",
|
|
name: "菜单查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:menu:list",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10302",
|
|
parentId: "103",
|
|
name: "菜单新增",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:menu:create",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10303",
|
|
parentId: "103",
|
|
name: "菜单编辑",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:menu:update",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10304",
|
|
parentId: "103",
|
|
name: "菜单删除",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 4,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:menu:delete",
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "104",
|
|
parentId: "1",
|
|
name: "部门管理",
|
|
type: "M",
|
|
routeName: "Dept",
|
|
routePath: "dept",
|
|
component: "system/dept/index",
|
|
externalUrl: null,
|
|
sort: 4,
|
|
visible: 1,
|
|
icon: "tree",
|
|
redirect: null,
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [
|
|
{
|
|
id: "10401",
|
|
parentId: "104",
|
|
name: "部门查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:dept:list",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10402",
|
|
parentId: "104",
|
|
name: "部门新增",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:dept:create",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10403",
|
|
parentId: "104",
|
|
name: "部门编辑",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:dept:update",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10404",
|
|
parentId: "104",
|
|
name: "部门删除",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 4,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:dept:delete",
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "105",
|
|
parentId: "1",
|
|
name: "字典管理",
|
|
type: "M",
|
|
routeName: "Dict",
|
|
routePath: "dict",
|
|
component: "system/dict/index",
|
|
externalUrl: null,
|
|
sort: 5,
|
|
visible: 1,
|
|
icon: "dict",
|
|
redirect: null,
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [
|
|
{
|
|
id: "10501",
|
|
parentId: "105",
|
|
name: "字典查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:dict:list",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10502",
|
|
parentId: "105",
|
|
name: "字典新增",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:dict:create",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10503",
|
|
parentId: "105",
|
|
name: "字典编辑",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:dict:update",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10504",
|
|
parentId: "105",
|
|
name: "字典删除",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 4,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:dict:delete",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10505",
|
|
parentId: "105",
|
|
name: "字典项查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 5,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:dict-item:list",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10506",
|
|
parentId: "105",
|
|
name: "字典项新增",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 6,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:dict-item:create",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10507",
|
|
parentId: "105",
|
|
name: "字典项编辑",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 7,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:dict-item:update",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10508",
|
|
parentId: "105",
|
|
name: "字典项删除",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 8,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:dict-item:delete",
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "107",
|
|
parentId: "1",
|
|
name: "系统日志",
|
|
type: "M",
|
|
routeName: "Log",
|
|
routePath: "log",
|
|
component: "system/log/index",
|
|
externalUrl: null,
|
|
sort: 7,
|
|
visible: 1,
|
|
icon: "document",
|
|
redirect: null,
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [
|
|
{
|
|
id: "10701",
|
|
parentId: "107",
|
|
name: "日志查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:log:list",
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "108",
|
|
parentId: "1",
|
|
name: "系统配置",
|
|
type: "M",
|
|
routeName: "Config",
|
|
routePath: "config",
|
|
component: "system/config/index",
|
|
externalUrl: null,
|
|
sort: 8,
|
|
visible: 1,
|
|
icon: "setting",
|
|
redirect: null,
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [
|
|
{
|
|
id: "10801",
|
|
parentId: "108",
|
|
name: "系统配置查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:config:list",
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10802",
|
|
parentId: "108",
|
|
name: "系统配置新增",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:config:create",
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10803",
|
|
parentId: "108",
|
|
name: "系统配置修改",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:config:update",
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10804",
|
|
parentId: "108",
|
|
name: "系统配置删除",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 4,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:config:delete",
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10805",
|
|
parentId: "108",
|
|
name: "系统配置刷新",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 5,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:config:refresh",
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "109",
|
|
parentId: "1",
|
|
name: "通知公告",
|
|
type: "M",
|
|
routeName: "Notice",
|
|
routePath: "notice",
|
|
component: "system/notice/index",
|
|
externalUrl: null,
|
|
sort: 9,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: "10901",
|
|
parentId: "109",
|
|
name: "通知查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:notice:list",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10902",
|
|
parentId: "109",
|
|
name: "通知新增",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:notice:create",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10903",
|
|
parentId: "109",
|
|
name: "通知编辑",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:notice:update",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10904",
|
|
parentId: "109",
|
|
name: "通知删除",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 4,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:notice:delete",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10905",
|
|
parentId: "109",
|
|
name: "通知发布",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 5,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:notice:publish",
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "10906",
|
|
parentId: "109",
|
|
name: "通知撤回",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 6,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:notice:revoke",
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "2",
|
|
parentId: "0",
|
|
name: "数据大屏",
|
|
type: "E",
|
|
routeName: null,
|
|
routePath: null,
|
|
component: null,
|
|
externalUrl: "/data-screen",
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "el-icon-Monitor",
|
|
redirect: null,
|
|
perm: null,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "3",
|
|
parentId: "0",
|
|
name: "代码生成",
|
|
type: "M",
|
|
routeName: "Codegen",
|
|
routePath: "/codegen",
|
|
component: "codegen/index",
|
|
externalUrl: null,
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "code",
|
|
redirect: null,
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "4",
|
|
parentId: "0",
|
|
name: "通用组件",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "/component",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
sort: 4,
|
|
visible: 1,
|
|
icon: "el-icon-SetUp",
|
|
redirect: "/component/basic/icon-demo",
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: "401",
|
|
parentId: "4",
|
|
name: "基础组件",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "basic",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "el-icon-Brush",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: "40101",
|
|
parentId: "401",
|
|
name: "Icons",
|
|
type: "M",
|
|
routeName: "IconDemo",
|
|
routePath: "icon-demo",
|
|
component: "demo/component/icons",
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "el-icon-Notification",
|
|
redirect: "",
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "40102",
|
|
parentId: "401",
|
|
name: "拖拽组件",
|
|
type: "M",
|
|
routeName: "Drag",
|
|
routePath: "drag",
|
|
component: "demo/component/drag",
|
|
externalUrl: null,
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "40103",
|
|
parentId: "401",
|
|
name: "滚动文本",
|
|
type: "M",
|
|
routeName: "TextScroll",
|
|
routePath: "text-scroll",
|
|
component: "demo/component/text-scroll",
|
|
externalUrl: null,
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "40104",
|
|
parentId: "401",
|
|
name: "字典实时同步",
|
|
type: "M",
|
|
routeName: "DictSync",
|
|
routePath: "dict-sync",
|
|
component: "demo/component/dict-sync",
|
|
externalUrl: null,
|
|
sort: 4,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "402",
|
|
parentId: "4",
|
|
name: "表单组件",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "form",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "el-icon-EditPen",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: "40201",
|
|
parentId: "402",
|
|
name: "富文本编辑器",
|
|
type: "M",
|
|
routeName: "WangEditor",
|
|
routePath: "wang-editor",
|
|
component: "demo/component/wang-editor",
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "40202",
|
|
parentId: "402",
|
|
name: "图片上传",
|
|
type: "M",
|
|
routeName: "Upload",
|
|
routePath: "upload",
|
|
component: "demo/component/upload",
|
|
externalUrl: null,
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "40203",
|
|
parentId: "402",
|
|
name: "图标选择器",
|
|
type: "M",
|
|
routeName: "DemoIconSelect",
|
|
routePath: "icon-select",
|
|
component: "demo/component/icon-select",
|
|
externalUrl: null,
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "40204",
|
|
parentId: "402",
|
|
name: "字典组件",
|
|
type: "M",
|
|
routeName: "DictDemo",
|
|
routePath: "dict-demo",
|
|
component: "demo/component/dictionary",
|
|
externalUrl: null,
|
|
sort: 4,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "40205",
|
|
parentId: "402",
|
|
name: "列表选择器",
|
|
type: "M",
|
|
routeName: "TableSelect",
|
|
routePath: "table-select",
|
|
component: "demo/component/table-select/index",
|
|
externalUrl: null,
|
|
sort: 5,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "403",
|
|
parentId: "4",
|
|
name: "表格组件",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "table",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "el-icon-Grid",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: "40301",
|
|
parentId: "403",
|
|
name: "增删改查",
|
|
type: "M",
|
|
routeName: "Crud",
|
|
routePath: "crud",
|
|
component: "demo/table/crud/index",
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "40302",
|
|
parentId: "403",
|
|
name: "CRUD单文件",
|
|
type: "M",
|
|
routeName: "CrudSingle",
|
|
routePath: "crud-single",
|
|
component: "demo/table/crud-single",
|
|
externalUrl: null,
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "el-icon-Reading",
|
|
redirect: "",
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "40303",
|
|
parentId: "403",
|
|
name: "VxeTable",
|
|
type: "M",
|
|
routeName: "VxeTable",
|
|
routePath: "vxe-table",
|
|
component: "demo/table/vxe-table/index",
|
|
externalUrl: null,
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "el-icon-MagicStick",
|
|
redirect: "",
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "40304",
|
|
parentId: "403",
|
|
name: "自适应表格操作列",
|
|
type: "M",
|
|
routeName: "AutoOperationColumn",
|
|
routePath: "operation-column",
|
|
component: "demo/table/auto-operation-column",
|
|
externalUrl: null,
|
|
sort: 4,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "5",
|
|
parentId: "0",
|
|
name: "多级菜单",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "/multi-level",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
sort: 5,
|
|
visible: 1,
|
|
icon: "el-icon-Guide",
|
|
redirect: "/multi-level/level-one/level-two/level-three-a",
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: "501",
|
|
parentId: "5",
|
|
name: "一级菜单",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "level-one",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: "50101",
|
|
parentId: "501",
|
|
name: "二级菜单",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "level-two",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: "5010101",
|
|
parentId: "50101",
|
|
name: "三级菜单 A",
|
|
type: "M",
|
|
routeName: "MultiLevelLevelThreeA",
|
|
routePath: "level-three-a",
|
|
component: "demo/route/multi-level/level-one/level-two/level-three-a/index",
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "5010102",
|
|
parentId: "50101",
|
|
name: "三级菜单 B",
|
|
type: "M",
|
|
routeName: "MultiLevelLevelThreeB",
|
|
routePath: "level-three-b",
|
|
component: "demo/route/multi-level/level-one/level-two/level-three-b/index",
|
|
externalUrl: null,
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "6",
|
|
parentId: "0",
|
|
name: "路由示例",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "/route-example",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
sort: 6,
|
|
visible: 1,
|
|
icon: "el-icon-Share",
|
|
redirect: "/route-example/route-param",
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: "601",
|
|
parentId: "6",
|
|
name: "路由参数",
|
|
type: "M",
|
|
routeName: "RouteParam",
|
|
routePath: "route-param",
|
|
component: "demo/route/route-param",
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "el-icon-Star",
|
|
redirect: null,
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "602",
|
|
parentId: "6",
|
|
name: "页面缓存",
|
|
type: "M",
|
|
routeName: "RouteCache",
|
|
routePath: "cache",
|
|
component: "demo/route/cache/index",
|
|
externalUrl: null,
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "el-icon-Stopwatch",
|
|
redirect: null,
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "603",
|
|
parentId: "6",
|
|
name: "页面跳转",
|
|
type: "M",
|
|
routeName: "RouteNavigate",
|
|
routePath: "navigate",
|
|
component: "demo/route/navigate/index",
|
|
externalUrl: null,
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "el-icon-Position",
|
|
redirect: null,
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "604",
|
|
parentId: "6",
|
|
name: "内嵌页面",
|
|
type: "E",
|
|
routeName: "PracticeDoc",
|
|
routePath: "iframe",
|
|
component: "iframe",
|
|
externalUrl:
|
|
"https://www.apifox.cn/apidoc/shared-195e783f-4d85-4235-a038-eec696de4ea5",
|
|
sort: 4,
|
|
visible: 1,
|
|
icon: "el-icon-Document",
|
|
redirect: "",
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "605",
|
|
parentId: "6",
|
|
name: "外部链接",
|
|
type: "E",
|
|
routeName: null,
|
|
routePath: null,
|
|
component: null,
|
|
externalUrl: "https://juejin.cn/post/7228990409909108793",
|
|
sort: 5,
|
|
visible: 1,
|
|
icon: "el-icon-Link",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "8",
|
|
parentId: "0",
|
|
name: "动态表单",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "/dynamic-form",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
sort: 8,
|
|
visible: 1,
|
|
icon: "el-icon-Document",
|
|
redirect: "/dynamic-form/definition",
|
|
perm: null,
|
|
params: JSON.parse('{"badge":"NEW"}'),
|
|
children: [
|
|
{
|
|
id: "801",
|
|
parentId: "8",
|
|
name: "表单列表",
|
|
type: "M",
|
|
routeName: "FormDefinition",
|
|
routePath: "definition",
|
|
component: "dynamic-form/index",
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "el-icon-List",
|
|
redirect: null,
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [
|
|
{
|
|
id: "80101",
|
|
parentId: "801",
|
|
name: "表单查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "form:definition:list",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "80102",
|
|
parentId: "801",
|
|
name: "表单新增",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "form:definition:create",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "80103",
|
|
parentId: "801",
|
|
name: "表单修改",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "form:definition:update",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "80104",
|
|
parentId: "801",
|
|
name: "表单删除",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 4,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "form:definition:delete",
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "802",
|
|
parentId: "8",
|
|
name: "表单数据",
|
|
type: "M",
|
|
routeName: "FormData",
|
|
routePath: "data",
|
|
component: "dynamic-form/data",
|
|
externalUrl: null,
|
|
sort: 2,
|
|
visible: 0,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [
|
|
{
|
|
id: "80201",
|
|
parentId: "802",
|
|
name: "数据查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "form:data:list",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "80202",
|
|
parentId: "802",
|
|
name: "数据删除",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "form:data:delete",
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "803",
|
|
parentId: "8",
|
|
name: "表单设计器",
|
|
type: "M",
|
|
routeName: "FormDesigner",
|
|
routePath: "designer",
|
|
component: "dynamic-form/designer",
|
|
externalUrl: null,
|
|
sort: 3,
|
|
visible: 0,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "804",
|
|
parentId: "8",
|
|
name: "表单预览",
|
|
type: "M",
|
|
routeName: "FormPreview",
|
|
routePath: "preview",
|
|
component: "dynamic-form/preview",
|
|
externalUrl: null,
|
|
sort: 4,
|
|
visible: 0,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "805",
|
|
parentId: "8",
|
|
name: "表单示例",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "sample",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
sort: 5,
|
|
visible: 1,
|
|
icon: "el-icon-Files",
|
|
redirect: "/dynamic-form/sample/open_source_survey",
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: "80501",
|
|
parentId: "805",
|
|
name: "开源项目问卷收集",
|
|
type: "M",
|
|
routeName: "FormRenderOpenSourceSurvey",
|
|
routePath: "open_source_survey",
|
|
component: "dynamic-form/render",
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "el-icon-Tickets",
|
|
redirect: null,
|
|
perm: null,
|
|
params: JSON.parse('{"formKey":"open_source_survey"}'),
|
|
children: [],
|
|
},
|
|
{
|
|
id: "80502",
|
|
parentId: "805",
|
|
name: "活动报名表",
|
|
type: "M",
|
|
routeName: "FormRenderActivityRegistration",
|
|
routePath: "activity_registration",
|
|
component: "dynamic-form/render",
|
|
externalUrl: null,
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "el-icon-Calendar",
|
|
redirect: null,
|
|
perm: null,
|
|
params: JSON.parse('{"formKey":"activity_registration"}'),
|
|
children: [],
|
|
},
|
|
{
|
|
id: "80503",
|
|
parentId: "805",
|
|
name: "意见反馈",
|
|
type: "M",
|
|
routeName: "FormRenderFeedback",
|
|
routePath: "feedback",
|
|
component: "dynamic-form/render",
|
|
externalUrl: null,
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "el-icon-ChatLineRound",
|
|
redirect: null,
|
|
perm: null,
|
|
params: JSON.parse('{"formKey":"feedback"}'),
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "9",
|
|
parentId: "0",
|
|
name: "工作流",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "/workflow",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
sort: 9,
|
|
visible: 1,
|
|
icon: "el-icon-Connection",
|
|
redirect: "/workflow/launch",
|
|
perm: null,
|
|
params: JSON.parse('{"badge":"NEW"}'),
|
|
children: [
|
|
{
|
|
id: "901",
|
|
parentId: "9",
|
|
name: "流程设计",
|
|
type: "M",
|
|
routeName: "WorkflowModel",
|
|
routePath: "model",
|
|
component: "workflow/model",
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "el-icon-Coin",
|
|
redirect: null,
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: "90101",
|
|
parentId: "901",
|
|
name: "流程查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "workflow:model:list",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "90102",
|
|
parentId: "901",
|
|
name: "流程新增",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "workflow:model:create",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "90103",
|
|
parentId: "901",
|
|
name: "流程修改",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "workflow:model:update",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "90104",
|
|
parentId: "901",
|
|
name: "流程删除",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 4,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "workflow:model:delete",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "90105",
|
|
parentId: "901",
|
|
name: "流程发布",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 5,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "workflow:model:deploy",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "90106",
|
|
parentId: "901",
|
|
name: "流程重置",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 6,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "workflow:model:reset",
|
|
children: [],
|
|
},
|
|
{
|
|
id: "90107",
|
|
parentId: "901",
|
|
name: "流程启停",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 7,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "workflow:definition:update",
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "902",
|
|
parentId: "9",
|
|
name: "流程设计器",
|
|
type: "M",
|
|
routeName: "WorkflowDesigner",
|
|
routePath: "designer",
|
|
component: "workflow/designer",
|
|
externalUrl: null,
|
|
sort: 2,
|
|
visible: 0,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: null,
|
|
keepAlive: 1,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "904",
|
|
parentId: "9",
|
|
name: "发起流程",
|
|
type: "M",
|
|
routeName: "WorkflowLaunch",
|
|
routePath: "launch",
|
|
component: "workflow/launch",
|
|
externalUrl: null,
|
|
sort: 4,
|
|
visible: 1,
|
|
icon: "el-icon-Promotion",
|
|
redirect: null,
|
|
perm: null,
|
|
children: [],
|
|
},
|
|
{
|
|
id: "905",
|
|
parentId: "9",
|
|
name: "审批中心",
|
|
type: "M",
|
|
routeName: "WorkflowTask",
|
|
routePath: "task",
|
|
component: "workflow/task/index",
|
|
externalUrl: null,
|
|
sort: 5,
|
|
visible: 1,
|
|
icon: "el-icon-Stamp",
|
|
redirect: null,
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: "90501",
|
|
parentId: "905",
|
|
name: "终止流程",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "workflow:instance:terminate",
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
],
|
|
},
|
|
],
|
|
msg: "一切ok",
|
|
},
|
|
},
|
|
|
|
// 获取菜单树形下拉列表
|
|
{
|
|
url: "menus/options",
|
|
method: ["GET"],
|
|
body: {
|
|
code: "00000",
|
|
data: [
|
|
{
|
|
value: "1",
|
|
label: "系统管理",
|
|
children: [
|
|
{
|
|
value: "101",
|
|
label: "用户管理",
|
|
children: [
|
|
{ value: "10101", label: "用户查询" },
|
|
{ value: "10102", label: "用户新增" },
|
|
{ value: "10103", label: "用户编辑" },
|
|
{ value: "10104", label: "用户删除" },
|
|
{ value: "10105", label: "重置密码" },
|
|
{ value: "10106", label: "用户导入" },
|
|
{ value: "10107", label: "用户导出" },
|
|
],
|
|
},
|
|
{
|
|
value: "102",
|
|
label: "角色管理",
|
|
children: [
|
|
{ value: "10201", label: "角色查询" },
|
|
{ value: "10202", label: "角色新增" },
|
|
{ value: "10203", label: "角色编辑" },
|
|
{ value: "10204", label: "角色删除" },
|
|
{ value: "10205", label: "角色分配权限" },
|
|
],
|
|
},
|
|
{
|
|
value: "103",
|
|
label: "菜单管理",
|
|
children: [
|
|
{ value: "10301", label: "菜单查询" },
|
|
{ value: "10302", label: "菜单新增" },
|
|
{ value: "10303", label: "菜单编辑" },
|
|
{ value: "10304", label: "菜单删除" },
|
|
],
|
|
},
|
|
{
|
|
value: "104",
|
|
label: "部门管理",
|
|
children: [
|
|
{ value: "10401", label: "部门查询" },
|
|
{ value: "10402", label: "部门新增" },
|
|
{ value: "10403", label: "部门编辑" },
|
|
{ value: "10404", label: "部门删除" },
|
|
],
|
|
},
|
|
{
|
|
value: "105",
|
|
label: "字典管理",
|
|
children: [
|
|
{ value: "10501", label: "字典查询" },
|
|
{ value: "10502", label: "字典新增" },
|
|
{ value: "10503", label: "字典编辑" },
|
|
{ value: "10504", label: "字典删除" },
|
|
{ value: "10505", label: "字典项查询" },
|
|
{ value: "10506", label: "字典项新增" },
|
|
{ value: "10507", label: "字典项编辑" },
|
|
{ value: "10508", label: "字典项删除" },
|
|
],
|
|
},
|
|
{
|
|
value: "107",
|
|
label: "系统日志",
|
|
children: [{ value: "10701", label: "日志查询" }],
|
|
},
|
|
{
|
|
value: "108",
|
|
label: "系统配置",
|
|
children: [
|
|
{ value: "10801", label: "系统配置查询" },
|
|
{ value: "10802", label: "系统配置新增" },
|
|
{ value: "10803", label: "系统配置修改" },
|
|
{ value: "10804", label: "系统配置删除" },
|
|
{ value: "10805", label: "系统配置刷新" },
|
|
],
|
|
},
|
|
{
|
|
value: "109",
|
|
label: "通知公告",
|
|
children: [
|
|
{ value: "10901", label: "通知查询" },
|
|
{ value: "10902", label: "通知新增" },
|
|
{ value: "10903", label: "通知编辑" },
|
|
{ value: "10904", label: "通知删除" },
|
|
{ value: "10905", label: "通知发布" },
|
|
{ value: "10906", label: "通知撤回" },
|
|
],
|
|
},
|
|
],
|
|
},
|
|
{ value: "2", label: "数据大屏" },
|
|
{ value: "3", label: "代码生成" },
|
|
{
|
|
value: "4",
|
|
label: "通用组件",
|
|
children: [
|
|
{
|
|
value: "401",
|
|
label: "基础组件",
|
|
children: [
|
|
{ value: "40101", label: "Icons" },
|
|
{ value: "40102", label: "拖拽组件" },
|
|
{ value: "40103", label: "滚动文本" },
|
|
{ value: "40104", label: "字典实时同步" },
|
|
],
|
|
},
|
|
{
|
|
value: "402",
|
|
label: "表单组件",
|
|
children: [
|
|
{ value: "40201", label: "富文本编辑器" },
|
|
{ value: "40202", label: "图片上传" },
|
|
{ value: "40203", label: "图标选择器" },
|
|
{ value: "40204", label: "字典组件" },
|
|
{ value: "40205", label: "列表选择器" },
|
|
],
|
|
},
|
|
{
|
|
value: "403",
|
|
label: "表格组件",
|
|
children: [
|
|
{ value: "40301", label: "增删改查" },
|
|
{ value: "40302", label: "CRUD单文件" },
|
|
{ value: "40303", label: "VxeTable" },
|
|
{ value: "40304", label: "自适应表格操作列" },
|
|
],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
value: "5",
|
|
label: "多级菜单",
|
|
children: [
|
|
{
|
|
value: "501",
|
|
label: "一级菜单",
|
|
children: [
|
|
{
|
|
value: "50101",
|
|
label: "二级菜单",
|
|
children: [
|
|
{ value: "5010101", label: "三级菜单 A" },
|
|
{ value: "5010102", label: "三级菜单 B" },
|
|
],
|
|
},
|
|
],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
value: "6",
|
|
label: "路由示例",
|
|
children: [
|
|
{ value: "601", label: "路由参数" },
|
|
{ value: "602", label: "页面缓存" },
|
|
{ value: "603", label: "页面跳转" },
|
|
{ value: "604", label: "内嵌页面" },
|
|
{ value: "605", label: "外部链接" },
|
|
],
|
|
},
|
|
{
|
|
value: "8",
|
|
label: "动态表单",
|
|
children: [
|
|
{
|
|
value: "801",
|
|
label: "表单列表",
|
|
children: [
|
|
{ value: "80101", label: "表单查询" },
|
|
{ value: "80102", label: "表单新增" },
|
|
{ value: "80103", label: "表单修改" },
|
|
{ value: "80104", label: "表单删除" },
|
|
],
|
|
},
|
|
{
|
|
value: "802",
|
|
label: "表单数据",
|
|
children: [
|
|
{ value: "80201", label: "数据查询" },
|
|
{ value: "80202", label: "数据删除" },
|
|
],
|
|
},
|
|
{ value: "803", label: "表单设计器" },
|
|
{ value: "804", label: "表单预览" },
|
|
{
|
|
value: "805",
|
|
label: "表单示例",
|
|
children: [
|
|
{ value: "80501", label: "开源项目问卷收集" },
|
|
{ value: "80502", label: "活动报名表" },
|
|
{ value: "80503", label: "意见反馈" },
|
|
],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
value: "9",
|
|
label: "工作流",
|
|
children: [
|
|
{
|
|
value: "901",
|
|
label: "流程设计",
|
|
children: [
|
|
{ value: "90101", label: "流程查询" },
|
|
{ value: "90102", label: "流程新增" },
|
|
{ value: "90103", label: "流程修改" },
|
|
{ value: "90104", label: "流程删除" },
|
|
{ value: "90105", label: "流程发布" },
|
|
{ value: "90106", label: "流程重置" },
|
|
{ value: "90107", label: "流程启停" },
|
|
],
|
|
},
|
|
{ value: "902", label: "流程设计器" },
|
|
{ value: "904", label: "发起流程" },
|
|
{
|
|
value: "905",
|
|
label: "审批中心",
|
|
children: [{ value: "90501", label: "终止流程" }],
|
|
},
|
|
],
|
|
},
|
|
],
|
|
|
|
msg: "一切ok",
|
|
},
|
|
},
|
|
|
|
// 新增菜单
|
|
{
|
|
url: "menus",
|
|
method: ["POST"],
|
|
body({ body }) {
|
|
return {
|
|
code: "00000",
|
|
data: null,
|
|
msg: "新增菜单" + body.name + "成功",
|
|
};
|
|
},
|
|
},
|
|
|
|
// 获取菜单表单数据
|
|
{
|
|
url: "menus/:id/form",
|
|
method: ["GET"],
|
|
body: ({ params }) => {
|
|
const menu = menuMap[params.id];
|
|
return {
|
|
code: "00000",
|
|
data:
|
|
menu ??
|
|
({
|
|
id: params.id,
|
|
parentId: "0",
|
|
name: "",
|
|
type: "M",
|
|
routeName: "",
|
|
routePath: "",
|
|
component: "",
|
|
icon: "",
|
|
redirect: "",
|
|
perm: null,
|
|
visible: 1,
|
|
scope: 2,
|
|
sort: 1,
|
|
keepAlive: 1,
|
|
params: [],
|
|
} as any),
|
|
msg: "一切ok",
|
|
};
|
|
},
|
|
},
|
|
|
|
// 修改菜单
|
|
{
|
|
url: "menus/:id",
|
|
method: ["PUT"],
|
|
body({ body }) {
|
|
return {
|
|
code: "00000",
|
|
data: null,
|
|
msg: "修改菜单" + body.name + "成功",
|
|
};
|
|
},
|
|
},
|
|
|
|
// 删除菜单
|
|
{
|
|
url: "menus/:id",
|
|
method: ["DELETE"],
|
|
body({ params }) {
|
|
return {
|
|
code: "00000",
|
|
data: null,
|
|
msg: "删除菜单" + params.id + "成功",
|
|
};
|
|
},
|
|
},
|
|
]);
|
|
|
|
// 菜单映射表数据
|
|
const menuMap: Record<string, any> = {
|
|
1: {
|
|
id: "1",
|
|
parentId: "0",
|
|
name: "系统管理",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "/system",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "system",
|
|
redirect: "/system/user",
|
|
keepAlive: null,
|
|
},
|
|
2: {
|
|
id: "2",
|
|
parentId: "0",
|
|
name: "数据大屏",
|
|
type: "E",
|
|
routeName: null,
|
|
routePath: null,
|
|
component: null,
|
|
externalUrl: "/data-screen",
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 2,
|
|
icon: "el-icon-Monitor",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
3: {
|
|
id: "3",
|
|
parentId: "0",
|
|
name: "代码生成",
|
|
type: "M",
|
|
routeName: "Codegen",
|
|
routePath: "/codegen",
|
|
component: "codegen/index",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 3,
|
|
icon: "code",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
},
|
|
4: {
|
|
id: "4",
|
|
parentId: "0",
|
|
name: "通用组件",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "/component",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 4,
|
|
icon: "el-icon-SetUp",
|
|
redirect: "/component/basic/icon-demo",
|
|
keepAlive: null,
|
|
},
|
|
5: {
|
|
id: "5",
|
|
parentId: "0",
|
|
name: "多级菜单",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "/multi-level",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 5,
|
|
icon: "el-icon-Guide",
|
|
redirect: "/multi-level/level-one/level-two/level-three-a",
|
|
keepAlive: null,
|
|
},
|
|
6: {
|
|
id: "6",
|
|
parentId: "0",
|
|
name: "路由示例",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "/route-example",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 6,
|
|
icon: "el-icon-Share",
|
|
redirect: "/route-example/route-param",
|
|
keepAlive: null,
|
|
},
|
|
8: {
|
|
id: "8",
|
|
parentId: "0",
|
|
name: "动态表单",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "/dynamic-form",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 8,
|
|
icon: "el-icon-Document",
|
|
redirect: "/dynamic-form/definition",
|
|
keepAlive: null,
|
|
},
|
|
9: {
|
|
id: "9",
|
|
parentId: "0",
|
|
name: "工作流",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "/workflow",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 9,
|
|
icon: "el-icon-Connection",
|
|
redirect: "/workflow/launch",
|
|
keepAlive: null,
|
|
},
|
|
101: {
|
|
id: "101",
|
|
parentId: "1",
|
|
name: "用户管理",
|
|
type: "M",
|
|
routeName: "User",
|
|
routePath: "user",
|
|
component: "system/user/index",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "el-icon-User",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
},
|
|
102: {
|
|
id: "102",
|
|
parentId: "1",
|
|
name: "角色管理",
|
|
type: "M",
|
|
routeName: "Role",
|
|
routePath: "role",
|
|
component: "system/role/index",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 2,
|
|
icon: "role",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
},
|
|
103: {
|
|
id: "103",
|
|
parentId: "1",
|
|
name: "菜单管理",
|
|
type: "M",
|
|
routeName: "SysMenu",
|
|
routePath: "menu",
|
|
component: "system/menu/index",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 3,
|
|
icon: "menu",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
},
|
|
104: {
|
|
id: "104",
|
|
parentId: "1",
|
|
name: "部门管理",
|
|
type: "M",
|
|
routeName: "Dept",
|
|
routePath: "dept",
|
|
component: "system/dept/index",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 4,
|
|
icon: "tree",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
},
|
|
105: {
|
|
id: "105",
|
|
parentId: "1",
|
|
name: "字典管理",
|
|
type: "M",
|
|
routeName: "Dict",
|
|
routePath: "dict",
|
|
component: "system/dict/index",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 5,
|
|
icon: "dict",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
},
|
|
107: {
|
|
id: "107",
|
|
parentId: "1",
|
|
name: "系统日志",
|
|
type: "M",
|
|
routeName: "Log",
|
|
routePath: "log",
|
|
component: "system/log/index",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 7,
|
|
icon: "document",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
},
|
|
108: {
|
|
id: "108",
|
|
parentId: "1",
|
|
name: "系统配置",
|
|
type: "M",
|
|
routeName: "Config",
|
|
routePath: "config",
|
|
component: "system/config/index",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 8,
|
|
icon: "setting",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
},
|
|
109: {
|
|
id: "109",
|
|
parentId: "1",
|
|
name: "通知公告",
|
|
type: "M",
|
|
routeName: "Notice",
|
|
routePath: "notice",
|
|
component: "system/notice/index",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 9,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
401: {
|
|
id: "401",
|
|
parentId: "4",
|
|
name: "基础组件",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "basic",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "el-icon-Brush",
|
|
redirect: "",
|
|
keepAlive: null,
|
|
},
|
|
402: {
|
|
id: "402",
|
|
parentId: "4",
|
|
name: "表单组件",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "form",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 2,
|
|
icon: "el-icon-EditPen",
|
|
redirect: "",
|
|
keepAlive: null,
|
|
},
|
|
403: {
|
|
id: "403",
|
|
parentId: "4",
|
|
name: "表格组件",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "table",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 3,
|
|
icon: "el-icon-Grid",
|
|
redirect: "",
|
|
keepAlive: null,
|
|
},
|
|
501: {
|
|
id: "501",
|
|
parentId: "5",
|
|
name: "一级菜单",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "level-one",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
601: {
|
|
id: "601",
|
|
parentId: "6",
|
|
name: "路由参数",
|
|
type: "M",
|
|
routeName: "RouteParam",
|
|
routePath: "route-param",
|
|
component: "demo/route/route-param",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "el-icon-Star",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
},
|
|
602: {
|
|
id: "602",
|
|
parentId: "6",
|
|
name: "页面缓存",
|
|
type: "M",
|
|
routeName: "RouteCache",
|
|
routePath: "cache",
|
|
component: "demo/route/cache/index",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 2,
|
|
icon: "el-icon-Stopwatch",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
},
|
|
603: {
|
|
id: "603",
|
|
parentId: "6",
|
|
name: "页面跳转",
|
|
type: "M",
|
|
routeName: "RouteNavigate",
|
|
routePath: "navigate",
|
|
component: "demo/route/navigate/index",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 3,
|
|
icon: "el-icon-Position",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
},
|
|
604: {
|
|
id: "604",
|
|
parentId: "6",
|
|
name: "内嵌页面",
|
|
type: "E",
|
|
routeName: "PracticeDoc",
|
|
routePath: "iframe",
|
|
component: "iframe",
|
|
externalUrl: "https://www.apifox.cn/apidoc/shared-195e783f-4d85-4235-a038-eec696de4ea5",
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 4,
|
|
icon: "el-icon-Document",
|
|
redirect: "",
|
|
keepAlive: 1,
|
|
},
|
|
605: {
|
|
id: "605",
|
|
parentId: "6",
|
|
name: "外部链接",
|
|
type: "E",
|
|
routeName: null,
|
|
routePath: null,
|
|
component: null,
|
|
externalUrl: "https://juejin.cn/post/7228990409909108793",
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 5,
|
|
icon: "el-icon-Link",
|
|
redirect: "",
|
|
keepAlive: null,
|
|
},
|
|
801: {
|
|
id: "801",
|
|
parentId: "8",
|
|
name: "表单列表",
|
|
type: "M",
|
|
routeName: "FormDefinition",
|
|
routePath: "definition",
|
|
component: "dynamic-form/index",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "el-icon-List",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
},
|
|
802: {
|
|
id: "802",
|
|
parentId: "8",
|
|
name: "表单数据",
|
|
type: "M",
|
|
routeName: "FormData",
|
|
routePath: "data",
|
|
component: "dynamic-form/data",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 0,
|
|
sort: 2,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
},
|
|
803: {
|
|
id: "803",
|
|
parentId: "8",
|
|
name: "表单设计器",
|
|
type: "M",
|
|
routeName: "FormDesigner",
|
|
routePath: "designer",
|
|
component: "dynamic-form/designer",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 0,
|
|
sort: 3,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
},
|
|
804: {
|
|
id: "804",
|
|
parentId: "8",
|
|
name: "表单预览",
|
|
type: "M",
|
|
routeName: "FormPreview",
|
|
routePath: "preview",
|
|
component: "dynamic-form/preview",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 0,
|
|
sort: 4,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
},
|
|
805: {
|
|
id: "805",
|
|
parentId: "8",
|
|
name: "表单示例",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "sample",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 5,
|
|
icon: "el-icon-Files",
|
|
redirect: "/dynamic-form/sample/open_source_survey",
|
|
keepAlive: null,
|
|
},
|
|
901: {
|
|
id: "901",
|
|
parentId: "9",
|
|
name: "流程设计",
|
|
type: "M",
|
|
routeName: "WorkflowModel",
|
|
routePath: "model",
|
|
component: "workflow/model",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "el-icon-Coin",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
902: {
|
|
id: "902",
|
|
parentId: "9",
|
|
name: "流程设计器",
|
|
type: "M",
|
|
routeName: "WorkflowDesigner",
|
|
routePath: "designer",
|
|
component: "workflow/designer",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 0,
|
|
sort: 2,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
},
|
|
904: {
|
|
id: "904",
|
|
parentId: "9",
|
|
name: "发起流程",
|
|
type: "M",
|
|
routeName: "WorkflowLaunch",
|
|
routePath: "launch",
|
|
component: "workflow/launch",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 4,
|
|
icon: "el-icon-Promotion",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
905: {
|
|
id: "905",
|
|
parentId: "9",
|
|
name: "审批中心",
|
|
type: "M",
|
|
routeName: "WorkflowTask",
|
|
routePath: "task",
|
|
component: "workflow/task/index",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 5,
|
|
icon: "el-icon-Stamp",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10101: {
|
|
id: "10101",
|
|
parentId: "101",
|
|
name: "用户查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:user:list",
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10102: {
|
|
id: "10102",
|
|
parentId: "101",
|
|
name: "用户新增",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:user:create",
|
|
visible: 1,
|
|
sort: 2,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10103: {
|
|
id: "10103",
|
|
parentId: "101",
|
|
name: "用户编辑",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:user:update",
|
|
visible: 1,
|
|
sort: 3,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10104: {
|
|
id: "10104",
|
|
parentId: "101",
|
|
name: "用户删除",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:user:delete",
|
|
visible: 1,
|
|
sort: 4,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10105: {
|
|
id: "10105",
|
|
parentId: "101",
|
|
name: "重置密码",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:user:reset-password",
|
|
visible: 1,
|
|
sort: 5,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10106: {
|
|
id: "10106",
|
|
parentId: "101",
|
|
name: "用户导入",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:user:import",
|
|
visible: 1,
|
|
sort: 6,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10107: {
|
|
id: "10107",
|
|
parentId: "101",
|
|
name: "用户导出",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:user:export",
|
|
visible: 1,
|
|
sort: 7,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10201: {
|
|
id: "10201",
|
|
parentId: "102",
|
|
name: "角色查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:role:list",
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10202: {
|
|
id: "10202",
|
|
parentId: "102",
|
|
name: "角色新增",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:role:create",
|
|
visible: 1,
|
|
sort: 2,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10203: {
|
|
id: "10203",
|
|
parentId: "102",
|
|
name: "角色编辑",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:role:update",
|
|
visible: 1,
|
|
sort: 3,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10204: {
|
|
id: "10204",
|
|
parentId: "102",
|
|
name: "角色删除",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:role:delete",
|
|
visible: 1,
|
|
sort: 4,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10205: {
|
|
id: "10205",
|
|
parentId: "102",
|
|
name: "角色分配权限",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:role:assign",
|
|
visible: 1,
|
|
sort: 5,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10301: {
|
|
id: "10301",
|
|
parentId: "103",
|
|
name: "菜单查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:menu:list",
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10302: {
|
|
id: "10302",
|
|
parentId: "103",
|
|
name: "菜单新增",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:menu:create",
|
|
visible: 1,
|
|
sort: 2,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10303: {
|
|
id: "10303",
|
|
parentId: "103",
|
|
name: "菜单编辑",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:menu:update",
|
|
visible: 1,
|
|
sort: 3,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10304: {
|
|
id: "10304",
|
|
parentId: "103",
|
|
name: "菜单删除",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:menu:delete",
|
|
visible: 1,
|
|
sort: 4,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10401: {
|
|
id: "10401",
|
|
parentId: "104",
|
|
name: "部门查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:dept:list",
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10402: {
|
|
id: "10402",
|
|
parentId: "104",
|
|
name: "部门新增",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:dept:create",
|
|
visible: 1,
|
|
sort: 2,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10403: {
|
|
id: "10403",
|
|
parentId: "104",
|
|
name: "部门编辑",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:dept:update",
|
|
visible: 1,
|
|
sort: 3,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10404: {
|
|
id: "10404",
|
|
parentId: "104",
|
|
name: "部门删除",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:dept:delete",
|
|
visible: 1,
|
|
sort: 4,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10501: {
|
|
id: "10501",
|
|
parentId: "105",
|
|
name: "字典查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:dict:list",
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10502: {
|
|
id: "10502",
|
|
parentId: "105",
|
|
name: "字典新增",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:dict:create",
|
|
visible: 1,
|
|
sort: 2,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10503: {
|
|
id: "10503",
|
|
parentId: "105",
|
|
name: "字典编辑",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:dict:update",
|
|
visible: 1,
|
|
sort: 3,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10504: {
|
|
id: "10504",
|
|
parentId: "105",
|
|
name: "字典删除",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:dict:delete",
|
|
visible: 1,
|
|
sort: 4,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10505: {
|
|
id: "10505",
|
|
parentId: "105",
|
|
name: "字典项查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:dict-item:list",
|
|
visible: 1,
|
|
sort: 5,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10506: {
|
|
id: "10506",
|
|
parentId: "105",
|
|
name: "字典项新增",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:dict-item:create",
|
|
visible: 1,
|
|
sort: 6,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10507: {
|
|
id: "10507",
|
|
parentId: "105",
|
|
name: "字典项编辑",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:dict-item:update",
|
|
visible: 1,
|
|
sort: 7,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10508: {
|
|
id: "10508",
|
|
parentId: "105",
|
|
name: "字典项删除",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:dict-item:delete",
|
|
visible: 1,
|
|
sort: 8,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10701: {
|
|
id: "10701",
|
|
parentId: "107",
|
|
name: "日志查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:log:list",
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10801: {
|
|
id: "10801",
|
|
parentId: "108",
|
|
name: "系统配置查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:config:list",
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
},
|
|
10802: {
|
|
id: "10802",
|
|
parentId: "108",
|
|
name: "系统配置新增",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:config:create",
|
|
visible: 1,
|
|
sort: 2,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
},
|
|
10803: {
|
|
id: "10803",
|
|
parentId: "108",
|
|
name: "系统配置修改",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:config:update",
|
|
visible: 1,
|
|
sort: 3,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
},
|
|
10804: {
|
|
id: "10804",
|
|
parentId: "108",
|
|
name: "系统配置删除",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:config:delete",
|
|
visible: 1,
|
|
sort: 4,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
},
|
|
10805: {
|
|
id: "10805",
|
|
parentId: "108",
|
|
name: "系统配置刷新",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:config:refresh",
|
|
visible: 1,
|
|
sort: 5,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
},
|
|
10901: {
|
|
id: "10901",
|
|
parentId: "109",
|
|
name: "通知查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:notice:list",
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10902: {
|
|
id: "10902",
|
|
parentId: "109",
|
|
name: "通知新增",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:notice:create",
|
|
visible: 1,
|
|
sort: 2,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10903: {
|
|
id: "10903",
|
|
parentId: "109",
|
|
name: "通知编辑",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:notice:update",
|
|
visible: 1,
|
|
sort: 3,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10904: {
|
|
id: "10904",
|
|
parentId: "109",
|
|
name: "通知删除",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:notice:delete",
|
|
visible: 1,
|
|
sort: 4,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
10905: {
|
|
id: "10905",
|
|
parentId: "109",
|
|
name: "通知发布",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:notice:publish",
|
|
visible: 1,
|
|
sort: 5,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
},
|
|
10906: {
|
|
id: "10906",
|
|
parentId: "109",
|
|
name: "通知撤回",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "sys:notice:revoke",
|
|
visible: 1,
|
|
sort: 6,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
},
|
|
40101: {
|
|
id: "40101",
|
|
parentId: "401",
|
|
name: "Icons",
|
|
type: "M",
|
|
routeName: "IconDemo",
|
|
routePath: "icon-demo",
|
|
component: "demo/component/icons",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "el-icon-Notification",
|
|
redirect: "",
|
|
keepAlive: 1,
|
|
},
|
|
40102: {
|
|
id: "40102",
|
|
parentId: "401",
|
|
name: "拖拽组件",
|
|
type: "M",
|
|
routeName: "Drag",
|
|
routePath: "drag",
|
|
component: "demo/component/drag",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 2,
|
|
icon: "",
|
|
redirect: "",
|
|
keepAlive: null,
|
|
},
|
|
40103: {
|
|
id: "40103",
|
|
parentId: "401",
|
|
name: "滚动文本",
|
|
type: "M",
|
|
routeName: "TextScroll",
|
|
routePath: "text-scroll",
|
|
component: "demo/component/text-scroll",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 3,
|
|
icon: "",
|
|
redirect: "",
|
|
keepAlive: null,
|
|
},
|
|
40104: {
|
|
id: "40104",
|
|
parentId: "401",
|
|
name: "字典实时同步",
|
|
type: "M",
|
|
routeName: "DictSync",
|
|
routePath: "dict-sync",
|
|
component: "demo/component/dict-sync",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 4,
|
|
icon: "",
|
|
redirect: "",
|
|
keepAlive: null,
|
|
},
|
|
40201: {
|
|
id: "40201",
|
|
parentId: "402",
|
|
name: "富文本编辑器",
|
|
type: "M",
|
|
routeName: "WangEditor",
|
|
routePath: "wang-editor",
|
|
component: "demo/component/wang-editor",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
keepAlive: 1,
|
|
},
|
|
40202: {
|
|
id: "40202",
|
|
parentId: "402",
|
|
name: "图片上传",
|
|
type: "M",
|
|
routeName: "Upload",
|
|
routePath: "upload",
|
|
component: "demo/component/upload",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 2,
|
|
icon: "",
|
|
redirect: "",
|
|
keepAlive: 1,
|
|
},
|
|
40203: {
|
|
id: "40203",
|
|
parentId: "402",
|
|
name: "图标选择器",
|
|
type: "M",
|
|
routeName: "DemoIconSelect",
|
|
routePath: "icon-select",
|
|
component: "demo/component/icon-select",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 3,
|
|
icon: "",
|
|
redirect: "",
|
|
keepAlive: 1,
|
|
},
|
|
40204: {
|
|
id: "40204",
|
|
parentId: "402",
|
|
name: "字典组件",
|
|
type: "M",
|
|
routeName: "DictDemo",
|
|
routePath: "dict-demo",
|
|
component: "demo/component/dictionary",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 4,
|
|
icon: "",
|
|
redirect: "",
|
|
keepAlive: 1,
|
|
},
|
|
40205: {
|
|
id: "40205",
|
|
parentId: "402",
|
|
name: "列表选择器",
|
|
type: "M",
|
|
routeName: "TableSelect",
|
|
routePath: "table-select",
|
|
component: "demo/component/table-select/index",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 5,
|
|
icon: "",
|
|
redirect: "",
|
|
keepAlive: 1,
|
|
},
|
|
40301: {
|
|
id: "40301",
|
|
parentId: "403",
|
|
name: "增删改查",
|
|
type: "M",
|
|
routeName: "Crud",
|
|
routePath: "crud",
|
|
component: "demo/table/crud/index",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
keepAlive: 1,
|
|
},
|
|
40302: {
|
|
id: "40302",
|
|
parentId: "403",
|
|
name: "CRUD单文件",
|
|
type: "M",
|
|
routeName: "CrudSingle",
|
|
routePath: "crud-single",
|
|
component: "demo/table/crud-single",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 2,
|
|
icon: "el-icon-Reading",
|
|
redirect: "",
|
|
keepAlive: 1,
|
|
},
|
|
40303: {
|
|
id: "40303",
|
|
parentId: "403",
|
|
name: "VxeTable",
|
|
type: "M",
|
|
routeName: "VxeTable",
|
|
routePath: "vxe-table",
|
|
component: "demo/table/vxe-table/index",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 3,
|
|
icon: "el-icon-MagicStick",
|
|
redirect: "",
|
|
keepAlive: 1,
|
|
},
|
|
40304: {
|
|
id: "40304",
|
|
parentId: "403",
|
|
name: "自适应表格操作列",
|
|
type: "M",
|
|
routeName: "AutoOperationColumn",
|
|
routePath: "operation-column",
|
|
component: "demo/table/auto-operation-column",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 4,
|
|
icon: "",
|
|
redirect: "",
|
|
keepAlive: 1,
|
|
},
|
|
50101: {
|
|
id: "50101",
|
|
parentId: "501",
|
|
name: "二级菜单",
|
|
type: "C",
|
|
routeName: "",
|
|
routePath: "level-two",
|
|
component: "Layout",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
80101: {
|
|
id: "80101",
|
|
parentId: "801",
|
|
name: "表单查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "form:definition:list",
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
80102: {
|
|
id: "80102",
|
|
parentId: "801",
|
|
name: "表单新增",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "form:definition:create",
|
|
visible: 1,
|
|
sort: 2,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
80103: {
|
|
id: "80103",
|
|
parentId: "801",
|
|
name: "表单修改",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "form:definition:update",
|
|
visible: 1,
|
|
sort: 3,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
80104: {
|
|
id: "80104",
|
|
parentId: "801",
|
|
name: "表单删除",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "form:definition:delete",
|
|
visible: 1,
|
|
sort: 4,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
80201: {
|
|
id: "80201",
|
|
parentId: "802",
|
|
name: "数据查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "form:data:list",
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
80202: {
|
|
id: "80202",
|
|
parentId: "802",
|
|
name: "数据删除",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "form:data:delete",
|
|
visible: 1,
|
|
sort: 2,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
80501: {
|
|
id: "80501",
|
|
parentId: "805",
|
|
name: "开源项目问卷收集",
|
|
type: "M",
|
|
routeName: "FormRenderOpenSourceSurvey",
|
|
routePath: "open_source_survey",
|
|
component: "dynamic-form/render",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "el-icon-Tickets",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
80502: {
|
|
id: "80502",
|
|
parentId: "805",
|
|
name: "活动报名表",
|
|
type: "M",
|
|
routeName: "FormRenderActivityRegistration",
|
|
routePath: "activity_registration",
|
|
component: "dynamic-form/render",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 2,
|
|
icon: "el-icon-Calendar",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
80503: {
|
|
id: "80503",
|
|
parentId: "805",
|
|
name: "意见反馈",
|
|
type: "M",
|
|
routeName: "FormRenderFeedback",
|
|
routePath: "feedback",
|
|
component: "dynamic-form/render",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 3,
|
|
icon: "el-icon-ChatLineRound",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
90101: {
|
|
id: "90101",
|
|
parentId: "901",
|
|
name: "流程查询",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "workflow:model:list",
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
90102: {
|
|
id: "90102",
|
|
parentId: "901",
|
|
name: "流程新增",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "workflow:model:create",
|
|
visible: 1,
|
|
sort: 2,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
90103: {
|
|
id: "90103",
|
|
parentId: "901",
|
|
name: "流程修改",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "workflow:model:update",
|
|
visible: 1,
|
|
sort: 3,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
90104: {
|
|
id: "90104",
|
|
parentId: "901",
|
|
name: "流程删除",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "workflow:model:delete",
|
|
visible: 1,
|
|
sort: 4,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
90105: {
|
|
id: "90105",
|
|
parentId: "901",
|
|
name: "流程发布",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "workflow:model:deploy",
|
|
visible: 1,
|
|
sort: 5,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
90106: {
|
|
id: "90106",
|
|
parentId: "901",
|
|
name: "流程重置",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "workflow:model:reset",
|
|
visible: 1,
|
|
sort: 6,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
90107: {
|
|
id: "90107",
|
|
parentId: "901",
|
|
name: "流程启停",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "workflow:definition:update",
|
|
visible: 1,
|
|
sort: 7,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
90501: {
|
|
id: "90501",
|
|
parentId: "905",
|
|
name: "终止流程",
|
|
type: "B",
|
|
routeName: null,
|
|
routePath: "",
|
|
component: null,
|
|
externalUrl: null,
|
|
perm: "workflow:instance:terminate",
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
keepAlive: null,
|
|
},
|
|
5010101: {
|
|
id: "5010101",
|
|
parentId: "50101",
|
|
name: "三级菜单 A",
|
|
type: "M",
|
|
routeName: "MultiLevelLevelThreeA",
|
|
routePath: "level-three-a",
|
|
component: "demo/route/multi-level/level-one/level-two/level-three-a/index",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
keepAlive: 1,
|
|
},
|
|
5010102: {
|
|
id: "5010102",
|
|
parentId: "50101",
|
|
name: "三级菜单 B",
|
|
type: "M",
|
|
routeName: "MultiLevelLevelThreeB",
|
|
routePath: "level-three-b",
|
|
component: "demo/route/multi-level/level-one/level-two/level-three-b/index",
|
|
externalUrl: null,
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 2,
|
|
icon: "",
|
|
redirect: "",
|
|
keepAlive: 1,
|
|
},
|
|
};
|