1445 lines
37 KiB
TypeScript
1445 lines
37 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,
|
|
roles: ["ADMIN"],
|
|
},
|
|
children: [
|
|
{
|
|
path: "user",
|
|
component: "system/user/index",
|
|
name: "User",
|
|
meta: {
|
|
title: "用户管理",
|
|
icon: "user",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
keepAlive: true,
|
|
},
|
|
},
|
|
{
|
|
path: "role",
|
|
component: "system/role/index",
|
|
name: "Role",
|
|
meta: {
|
|
title: "角色管理",
|
|
icon: "role",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
keepAlive: true,
|
|
},
|
|
},
|
|
{
|
|
path: "menu",
|
|
component: "system/menu/index",
|
|
name: "Menu",
|
|
meta: {
|
|
title: "菜单管理",
|
|
icon: "menu",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
keepAlive: true,
|
|
},
|
|
},
|
|
{
|
|
path: "dept",
|
|
component: "system/dept/index",
|
|
name: "Dept",
|
|
meta: {
|
|
title: "部门管理",
|
|
icon: "tree",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
keepAlive: true,
|
|
},
|
|
},
|
|
{
|
|
path: "dict",
|
|
component: "system/dict/index",
|
|
name: "Dict",
|
|
meta: {
|
|
title: "字典管理",
|
|
icon: "dict",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
keepAlive: true,
|
|
},
|
|
},
|
|
],
|
|
},
|
|
{
|
|
path: "/api",
|
|
component: "Layout",
|
|
name: "/api",
|
|
meta: {
|
|
title: "接口文档",
|
|
icon: "api",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
alwaysShow: true,
|
|
},
|
|
children: [
|
|
{
|
|
path: "apifox",
|
|
component: "demo/api/apifox",
|
|
name: "Apifox",
|
|
meta: {
|
|
title: "Apifox",
|
|
icon: "api",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
keepAlive: true,
|
|
},
|
|
},
|
|
{
|
|
path: "swagger",
|
|
component: "demo/api/swagger",
|
|
name: "Swagger",
|
|
meta: {
|
|
title: "Swagger",
|
|
icon: "api",
|
|
hidden: true,
|
|
roles: ["ADMIN"],
|
|
keepAlive: true,
|
|
},
|
|
},
|
|
{
|
|
path: "knife4j",
|
|
component: "demo/api/knife4j",
|
|
name: "Knife4j",
|
|
meta: {
|
|
title: "Knife4j",
|
|
icon: "api",
|
|
hidden: true,
|
|
roles: ["ADMIN"],
|
|
keepAlive: true,
|
|
},
|
|
},
|
|
],
|
|
},
|
|
{
|
|
path: "/doc",
|
|
component: "Layout",
|
|
name: "/doc",
|
|
meta: {
|
|
title: "平台文档",
|
|
icon: "document",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
},
|
|
children: [
|
|
{
|
|
path: "internal-doc",
|
|
component: "demo/internal-doc",
|
|
name: "InternalDoc",
|
|
meta: {
|
|
title: "平台文档(内嵌)",
|
|
icon: "document",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
},
|
|
},
|
|
{
|
|
path: "https://juejin.cn/post/7228990409909108793",
|
|
name: "Https://juejin.cn/post/7228990409909108793",
|
|
meta: {
|
|
title: "平台文档(外链)",
|
|
icon: "link",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
},
|
|
},
|
|
],
|
|
},
|
|
{
|
|
path: "/multi-level",
|
|
component: "Layout",
|
|
redirect: "/multi-level/multi-level1",
|
|
name: "/multiLevel",
|
|
meta: {
|
|
title: "多级菜单",
|
|
icon: "cascader",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
},
|
|
children: [
|
|
{
|
|
path: "multi-level1",
|
|
component: "demo/multi-level/level1",
|
|
redirect: "/multi-level/multi-level2",
|
|
name: "MultiLevel1",
|
|
meta: {
|
|
title: "菜单一级",
|
|
icon: "",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
keepAlive: true,
|
|
},
|
|
children: [
|
|
{
|
|
path: "multi-level2",
|
|
component: "demo/multi-level/children/level2",
|
|
redirect: "/multi-level/multi-level2/multi-level3-1",
|
|
name: "MultiLevel2",
|
|
meta: {
|
|
title: "菜单二级",
|
|
icon: "",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
keepAlive: true,
|
|
},
|
|
children: [
|
|
{
|
|
path: "multi-level3-1",
|
|
component: "demo/multi-level/children/children/level3-1",
|
|
name: "MultiLevel31",
|
|
meta: {
|
|
title: "菜单三级-1",
|
|
icon: "",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
keepAlive: true,
|
|
},
|
|
},
|
|
{
|
|
path: "multi-level3-2",
|
|
component: "demo/multi-level/children/children/level3-2",
|
|
name: "MultiLevel32",
|
|
meta: {
|
|
title: "菜单三级-2",
|
|
icon: "",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
keepAlive: true,
|
|
},
|
|
},
|
|
],
|
|
},
|
|
],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
path: "/component",
|
|
component: "Layout",
|
|
name: "/component",
|
|
meta: {
|
|
title: "组件封装",
|
|
icon: "menu",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
},
|
|
children: [
|
|
{
|
|
path: "wang-editor",
|
|
component: "demo/wang-editor",
|
|
name: "WangEditor",
|
|
meta: {
|
|
title: "富文本编辑器",
|
|
icon: "",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
keepAlive: true,
|
|
},
|
|
},
|
|
{
|
|
path: "upload",
|
|
component: "demo/upload",
|
|
name: "Upload",
|
|
meta: {
|
|
title: "图片上传",
|
|
icon: "",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
keepAlive: true,
|
|
},
|
|
},
|
|
{
|
|
path: "icon-selector",
|
|
component: "demo/icon-selector",
|
|
name: "IconSelector",
|
|
meta: {
|
|
title: "图标选择器",
|
|
icon: "",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
keepAlive: true,
|
|
},
|
|
},
|
|
{
|
|
path: "dict-demo",
|
|
component: "demo/dict",
|
|
name: "DictDemo",
|
|
meta: {
|
|
title: "字典组件",
|
|
icon: "",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
keepAlive: true,
|
|
},
|
|
},
|
|
{
|
|
path: "signature",
|
|
component: "demo/signature",
|
|
name: "Signature",
|
|
meta: {
|
|
title: "签名",
|
|
icon: "",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
keepAlive: true,
|
|
},
|
|
},
|
|
{
|
|
path: "table",
|
|
component: "demo/table",
|
|
name: "Table",
|
|
meta: {
|
|
title: "表格",
|
|
icon: "",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
keepAlive: true,
|
|
},
|
|
},
|
|
],
|
|
},
|
|
{
|
|
path: "/function",
|
|
component: "Layout",
|
|
name: "/function",
|
|
meta: {
|
|
title: "功能演示",
|
|
icon: "menu",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
},
|
|
children: [
|
|
{
|
|
path: "icon-demo",
|
|
component: "demo/icons",
|
|
name: "IconDemo",
|
|
meta: {
|
|
title: "Icons",
|
|
icon: "el-icon-edit",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
keepAlive: true,
|
|
},
|
|
},
|
|
{
|
|
path: "/function/websocket",
|
|
component: "demo/websocket",
|
|
name: "/function/websocket",
|
|
meta: {
|
|
title: "Websocket",
|
|
icon: "",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
keepAlive: true,
|
|
},
|
|
},
|
|
{
|
|
path: "other",
|
|
component: "demo/other",
|
|
name: "Other",
|
|
meta: {
|
|
title: "敬请期待...",
|
|
icon: "",
|
|
hidden: false,
|
|
roles: ["ADMIN"],
|
|
},
|
|
},
|
|
],
|
|
},
|
|
],
|
|
msg: "一切ok",
|
|
},
|
|
},
|
|
|
|
{
|
|
url: "menus",
|
|
method: ["GET"],
|
|
body: {
|
|
code: "00000",
|
|
data: [
|
|
{
|
|
id: 1,
|
|
parentId: 0,
|
|
name: "系统管理",
|
|
type: "CATALOG",
|
|
path: "/system",
|
|
component: "Layout",
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "system",
|
|
redirect: "/system/user",
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: 2,
|
|
parentId: 1,
|
|
name: "用户管理",
|
|
type: "MENU",
|
|
path: "user",
|
|
component: "system/user/index",
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "user",
|
|
redirect: null,
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: 31,
|
|
parentId: 2,
|
|
name: "用户新增",
|
|
type: "BUTTON",
|
|
path: "",
|
|
component: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: "sys:user:add",
|
|
children: [],
|
|
},
|
|
{
|
|
id: 32,
|
|
parentId: 2,
|
|
name: "用户编辑",
|
|
type: "BUTTON",
|
|
path: "",
|
|
component: null,
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: "sys:user:edit",
|
|
children: [],
|
|
},
|
|
{
|
|
id: 33,
|
|
parentId: 2,
|
|
name: "用户删除",
|
|
type: "BUTTON",
|
|
path: "",
|
|
component: null,
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: "sys:user:delete",
|
|
children: [],
|
|
},
|
|
{
|
|
id: 88,
|
|
parentId: 2,
|
|
name: "重置密码",
|
|
type: "BUTTON",
|
|
path: "",
|
|
component: null,
|
|
sort: 4,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:user:password:reset",
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: 3,
|
|
parentId: 1,
|
|
name: "角色管理",
|
|
type: "MENU",
|
|
path: "role",
|
|
component: "system/role/index",
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "role",
|
|
redirect: null,
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: 70,
|
|
parentId: 3,
|
|
name: "角色新增",
|
|
type: "BUTTON",
|
|
path: "",
|
|
component: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:role:add",
|
|
children: [],
|
|
},
|
|
{
|
|
id: 71,
|
|
parentId: 3,
|
|
name: "角色编辑",
|
|
type: "BUTTON",
|
|
path: "",
|
|
component: null,
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:role:edit",
|
|
children: [],
|
|
},
|
|
{
|
|
id: 72,
|
|
parentId: 3,
|
|
name: "角色删除",
|
|
type: "BUTTON",
|
|
path: "",
|
|
component: null,
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:role:delete",
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: 4,
|
|
parentId: 1,
|
|
name: "菜单管理",
|
|
type: "MENU",
|
|
path: "menu",
|
|
component: "system/menu/index",
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "menu",
|
|
redirect: null,
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: 73,
|
|
parentId: 4,
|
|
name: "菜单新增",
|
|
type: "BUTTON",
|
|
path: "",
|
|
component: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:menu:add",
|
|
children: [],
|
|
},
|
|
{
|
|
id: 74,
|
|
parentId: 4,
|
|
name: "菜单编辑",
|
|
type: "BUTTON",
|
|
path: "",
|
|
component: null,
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:menu:edit",
|
|
children: [],
|
|
},
|
|
{
|
|
id: 75,
|
|
parentId: 4,
|
|
name: "菜单删除",
|
|
type: "BUTTON",
|
|
path: "",
|
|
component: null,
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:menu:delete",
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: 5,
|
|
parentId: 1,
|
|
name: "部门管理",
|
|
type: "MENU",
|
|
path: "dept",
|
|
component: "system/dept/index",
|
|
sort: 4,
|
|
visible: 1,
|
|
icon: "tree",
|
|
redirect: null,
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: 76,
|
|
parentId: 5,
|
|
name: "部门新增",
|
|
type: "BUTTON",
|
|
path: "",
|
|
component: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:dept:add",
|
|
children: [],
|
|
},
|
|
{
|
|
id: 77,
|
|
parentId: 5,
|
|
name: "部门编辑",
|
|
type: "BUTTON",
|
|
path: "",
|
|
component: null,
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:dept:edit",
|
|
children: [],
|
|
},
|
|
{
|
|
id: 78,
|
|
parentId: 5,
|
|
name: "部门删除",
|
|
type: "BUTTON",
|
|
path: "",
|
|
component: null,
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:dept:delete",
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: 6,
|
|
parentId: 1,
|
|
name: "字典管理",
|
|
type: "MENU",
|
|
path: "dict",
|
|
component: "system/dict/index",
|
|
sort: 5,
|
|
visible: 1,
|
|
icon: "dict",
|
|
redirect: null,
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: 79,
|
|
parentId: 6,
|
|
name: "字典类型新增",
|
|
type: "BUTTON",
|
|
path: "",
|
|
component: null,
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:dict_type:add",
|
|
children: [],
|
|
},
|
|
{
|
|
id: 81,
|
|
parentId: 6,
|
|
name: "字典类型编辑",
|
|
type: "BUTTON",
|
|
path: "",
|
|
component: null,
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:dict_type:edit",
|
|
children: [],
|
|
},
|
|
{
|
|
id: 84,
|
|
parentId: 6,
|
|
name: "字典类型删除",
|
|
type: "BUTTON",
|
|
path: "",
|
|
component: null,
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:dict_type:delete",
|
|
children: [],
|
|
},
|
|
{
|
|
id: 85,
|
|
parentId: 6,
|
|
name: "字典数据新增",
|
|
type: "BUTTON",
|
|
path: "",
|
|
component: null,
|
|
sort: 4,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:dict:add",
|
|
children: [],
|
|
},
|
|
{
|
|
id: 86,
|
|
parentId: 6,
|
|
name: "字典数据编辑",
|
|
type: "BUTTON",
|
|
path: "",
|
|
component: null,
|
|
sort: 5,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:dict:edit",
|
|
children: [],
|
|
},
|
|
{
|
|
id: 87,
|
|
parentId: 6,
|
|
name: "字典数据删除",
|
|
type: "BUTTON",
|
|
path: "",
|
|
component: null,
|
|
sort: 6,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: null,
|
|
perm: "sys:dict:delete",
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: 40,
|
|
parentId: 0,
|
|
name: "接口文档",
|
|
type: "CATALOG",
|
|
path: "/api",
|
|
component: "Layout",
|
|
sort: 7,
|
|
visible: 1,
|
|
icon: "api",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: 41,
|
|
parentId: 40,
|
|
name: "Apifox",
|
|
type: "MENU",
|
|
path: "apifox",
|
|
component: "demo/api/apifox",
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "api",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [],
|
|
},
|
|
{
|
|
id: 103,
|
|
parentId: 40,
|
|
name: "Swagger",
|
|
type: "MENU",
|
|
path: "swagger",
|
|
component: "demo/api/swagger",
|
|
sort: 2,
|
|
visible: 0,
|
|
icon: "api",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [],
|
|
},
|
|
{
|
|
id: 104,
|
|
parentId: 40,
|
|
name: "Knife4j",
|
|
type: "MENU",
|
|
path: "knife4j",
|
|
component: "demo/api/knife4j",
|
|
sort: 3,
|
|
visible: 0,
|
|
icon: "api",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: 26,
|
|
parentId: 0,
|
|
name: "平台文档",
|
|
type: "CATALOG",
|
|
path: "/doc",
|
|
component: "Layout",
|
|
sort: 8,
|
|
visible: 1,
|
|
icon: "document",
|
|
redirect: null,
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: 102,
|
|
parentId: 26,
|
|
name: "平台文档(内嵌)",
|
|
type: "EXTLINK",
|
|
path: "internal-doc",
|
|
component: "demo/internal-doc",
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "document",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [],
|
|
},
|
|
{
|
|
id: 30,
|
|
parentId: 26,
|
|
name: "平台文档(外链)",
|
|
type: "EXTLINK",
|
|
path: "https://juejin.cn/post/7228990409909108793",
|
|
component: "",
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "link",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: 20,
|
|
parentId: 0,
|
|
name: "多级菜单",
|
|
type: "CATALOG",
|
|
path: "/multi-level",
|
|
component: "Layout",
|
|
sort: 9,
|
|
visible: 1,
|
|
icon: "cascader",
|
|
redirect: "/multi-level/multi-level1",
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: 21,
|
|
parentId: 20,
|
|
name: "菜单一级",
|
|
type: "MENU",
|
|
path: "multi-level1",
|
|
component: "demo/multi-level/level1",
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "/multi-level/multi-level2",
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: 22,
|
|
parentId: 21,
|
|
name: "菜单二级",
|
|
type: "MENU",
|
|
path: "multi-level2",
|
|
component: "demo/multi-level/children/level2",
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "/multi-level/multi-level2/multi-level3-1",
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: 23,
|
|
parentId: 22,
|
|
name: "菜单三级-1",
|
|
type: "MENU",
|
|
path: "multi-level3-1",
|
|
component: "demo/multi-level/children/children/level3-1",
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [],
|
|
},
|
|
{
|
|
id: 24,
|
|
parentId: 22,
|
|
name: "菜单三级-2",
|
|
type: "MENU",
|
|
path: "multi-level3-2",
|
|
component: "demo/multi-level/children/children/level3-2",
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: 36,
|
|
parentId: 0,
|
|
name: "组件封装",
|
|
type: "CATALOG",
|
|
path: "/component",
|
|
component: "Layout",
|
|
sort: 10,
|
|
visible: 1,
|
|
icon: "menu",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: 37,
|
|
parentId: 36,
|
|
name: "富文本编辑器",
|
|
type: "MENU",
|
|
path: "wang-editor",
|
|
component: "demo/wang-editor",
|
|
sort: 1,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [],
|
|
},
|
|
{
|
|
id: 38,
|
|
parentId: 36,
|
|
name: "图片上传",
|
|
type: "MENU",
|
|
path: "upload",
|
|
component: "demo/upload",
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [],
|
|
},
|
|
{
|
|
id: 39,
|
|
parentId: 36,
|
|
name: "图标选择器",
|
|
type: "MENU",
|
|
path: "icon-selector",
|
|
component: "demo/icon-selector",
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [],
|
|
},
|
|
{
|
|
id: 95,
|
|
parentId: 36,
|
|
name: "字典组件",
|
|
type: "MENU",
|
|
path: "dict-demo",
|
|
component: "demo/dict",
|
|
sort: 4,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [],
|
|
},
|
|
{
|
|
id: 93,
|
|
parentId: 36,
|
|
name: "签名",
|
|
type: "MENU",
|
|
path: "signature",
|
|
component: "demo/signature",
|
|
sort: 6,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [],
|
|
},
|
|
{
|
|
id: 94,
|
|
parentId: 36,
|
|
name: "表格",
|
|
type: "MENU",
|
|
path: "table",
|
|
component: "demo/table",
|
|
sort: 7,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: 89,
|
|
parentId: 0,
|
|
name: "功能演示",
|
|
type: "CATALOG",
|
|
path: "/function",
|
|
component: "Layout",
|
|
sort: 11,
|
|
visible: 1,
|
|
icon: "menu",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [
|
|
{
|
|
id: 97,
|
|
parentId: 89,
|
|
name: "Icons",
|
|
type: "MENU",
|
|
path: "icon-demo",
|
|
component: "demo/icons",
|
|
sort: 2,
|
|
visible: 1,
|
|
icon: "el-icon-edit",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [],
|
|
},
|
|
{
|
|
id: 90,
|
|
parentId: 89,
|
|
name: "Websocket",
|
|
type: "MENU",
|
|
path: "/function/websocket",
|
|
component: "demo/websocket",
|
|
sort: 3,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [],
|
|
},
|
|
{
|
|
id: 91,
|
|
parentId: 89,
|
|
name: "敬请期待...",
|
|
type: "CATALOG",
|
|
path: "other",
|
|
component: "demo/other",
|
|
sort: 4,
|
|
visible: 1,
|
|
icon: "",
|
|
redirect: "",
|
|
perm: null,
|
|
children: [],
|
|
},
|
|
],
|
|
},
|
|
],
|
|
msg: "一切ok",
|
|
},
|
|
},
|
|
|
|
{
|
|
url: "menus/options",
|
|
method: ["GET"],
|
|
body: {
|
|
code: "00000",
|
|
data: [
|
|
{
|
|
value: 1,
|
|
label: "系统管理",
|
|
children: [
|
|
{
|
|
value: 2,
|
|
label: "用户管理",
|
|
children: [
|
|
{
|
|
value: 31,
|
|
label: "用户新增",
|
|
},
|
|
{
|
|
value: 32,
|
|
label: "用户编辑",
|
|
},
|
|
{
|
|
value: 33,
|
|
label: "用户删除",
|
|
},
|
|
{
|
|
value: 88,
|
|
label: "重置密码",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
value: 3,
|
|
label: "角色管理",
|
|
children: [
|
|
{
|
|
value: 70,
|
|
label: "角色新增",
|
|
},
|
|
{
|
|
value: 71,
|
|
label: "角色编辑",
|
|
},
|
|
{
|
|
value: 72,
|
|
label: "角色删除",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
value: 4,
|
|
label: "菜单管理",
|
|
children: [
|
|
{
|
|
value: 73,
|
|
label: "菜单新增",
|
|
},
|
|
{
|
|
value: 74,
|
|
label: "菜单编辑",
|
|
},
|
|
{
|
|
value: 75,
|
|
label: "菜单删除",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
value: 5,
|
|
label: "部门管理",
|
|
children: [
|
|
{
|
|
value: 76,
|
|
label: "部门新增",
|
|
},
|
|
{
|
|
value: 77,
|
|
label: "部门编辑",
|
|
},
|
|
{
|
|
value: 78,
|
|
label: "部门删除",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
value: 6,
|
|
label: "字典管理",
|
|
children: [
|
|
{
|
|
value: 79,
|
|
label: "字典类型新增",
|
|
},
|
|
{
|
|
value: 81,
|
|
label: "字典类型编辑",
|
|
},
|
|
{
|
|
value: 84,
|
|
label: "字典类型删除",
|
|
},
|
|
{
|
|
value: 85,
|
|
label: "字典数据新增",
|
|
},
|
|
{
|
|
value: 86,
|
|
label: "字典数据编辑",
|
|
},
|
|
{
|
|
value: 87,
|
|
label: "字典数据删除",
|
|
},
|
|
],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
value: 40,
|
|
label: "接口文档",
|
|
children: [
|
|
{
|
|
value: 41,
|
|
label: "Apifox",
|
|
},
|
|
{
|
|
value: 103,
|
|
label: "Swagger",
|
|
},
|
|
{
|
|
value: 104,
|
|
label: "Knife4j",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
value: 26,
|
|
label: "平台文档",
|
|
children: [
|
|
{
|
|
value: 102,
|
|
label: "平台文档(内嵌)",
|
|
},
|
|
{
|
|
value: 30,
|
|
label: "平台文档(外链)",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
value: 20,
|
|
label: "多级菜单",
|
|
children: [
|
|
{
|
|
value: 21,
|
|
label: "菜单一级",
|
|
children: [
|
|
{
|
|
value: 22,
|
|
label: "菜单二级",
|
|
children: [
|
|
{
|
|
value: 23,
|
|
label: "菜单三级-1",
|
|
},
|
|
{
|
|
value: 24,
|
|
label: "菜单三级-2",
|
|
},
|
|
],
|
|
},
|
|
],
|
|
},
|
|
],
|
|
},
|
|
{
|
|
value: 36,
|
|
label: "组件封装",
|
|
children: [
|
|
{
|
|
value: 37,
|
|
label: "富文本编辑器",
|
|
},
|
|
{
|
|
value: 38,
|
|
label: "图片上传",
|
|
},
|
|
{
|
|
value: 39,
|
|
label: "图标选择器",
|
|
},
|
|
{
|
|
value: 95,
|
|
label: "字典组件",
|
|
},
|
|
{
|
|
value: 93,
|
|
label: "签名",
|
|
},
|
|
{
|
|
value: 94,
|
|
label: "表格",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
value: 89,
|
|
label: "功能演示",
|
|
children: [
|
|
{
|
|
value: 97,
|
|
label: "Icons",
|
|
},
|
|
{
|
|
value: 90,
|
|
label: "Websocket",
|
|
},
|
|
{
|
|
value: 91,
|
|
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 }) => {
|
|
return {
|
|
code: "00000",
|
|
data: menuMap[params.id],
|
|
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: "CATALOG",
|
|
path: "/system",
|
|
component: "Layout",
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "system",
|
|
redirect: "/system/user",
|
|
keepAlive: null,
|
|
alwaysShow: null,
|
|
},
|
|
2: {
|
|
id: 2,
|
|
parentId: 1,
|
|
name: "用户管理",
|
|
type: "MENU",
|
|
path: "user",
|
|
component: "system/user/index",
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 1,
|
|
icon: "user",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
alwaysShow: null,
|
|
},
|
|
3: {
|
|
id: 3,
|
|
parentId: 1,
|
|
name: "角色管理",
|
|
type: "MENU",
|
|
path: "role",
|
|
component: "system/role/index",
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 2,
|
|
icon: "role",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
alwaysShow: null,
|
|
},
|
|
4: {
|
|
id: 4,
|
|
parentId: 1,
|
|
name: "菜单管理",
|
|
type: "MENU",
|
|
path: "menu",
|
|
component: "system/menu/index",
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 3,
|
|
icon: "menu",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
alwaysShow: null,
|
|
},
|
|
5: {
|
|
id: 5,
|
|
parentId: 1,
|
|
name: "部门管理",
|
|
type: "MENU",
|
|
path: "dept",
|
|
component: "system/dept/index",
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 4,
|
|
icon: "tree",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
alwaysShow: null,
|
|
},
|
|
6: {
|
|
id: 6,
|
|
parentId: 1,
|
|
name: "字典管理",
|
|
type: "MENU",
|
|
path: "dict",
|
|
component: "system/dict/index",
|
|
perm: null,
|
|
visible: 1,
|
|
sort: 5,
|
|
icon: "dict",
|
|
redirect: null,
|
|
keepAlive: 1,
|
|
alwaysShow: null,
|
|
},
|
|
};
|