// 系统管理模块种子数据:机构 / 用户 / 角色 / 权限 / 用户-角色绑定 / 角色-权限绑定 // 权限树严格对应 src/router/componentRegistry.js 中 routePathComponentMap 的 16 个二级页面节点, // 按钮权限仅种入前端实际使用 v-permission 指令的 26 个 code(阶段1-3),阶段4-7列表页未使用 // v-permission 指令,不编造按钮权限。 import { initCounter } from '../utils/id.js' // ---------------- 机构(organization) ---------------- // 注意:swagger 中机构自身的 organizationId 是字符串业务编码,与主键 id(int64)是两个不同字段; // 其他模块外键 organizationId 均为 int64,引用的是机构的 id 主键(非本表 organizationId 字符串)。 export const organizations = [ { id: 1, organizationId: 'ORG0001', organizationName: '总部', parentId: null, isBuiltIn: true, remark: '系统根机构' }, { id: 2, organizationId: 'ORG0002', organizationName: '华东分部', parentId: 1, isBuiltIn: false, remark: '' }, { id: 3, organizationId: 'ORG0003', organizationName: '华南分部', parentId: 1, isBuiltIn: false, remark: '' } ] initCounter('organization', 4) // ---------------- 用户(user) ---------------- // password 字段仅供 mock 登录校验使用,不会出现在任何响应 Vo 中 export const users = [ { id: 1, username: 'admin', password: 'Admin@123', realName: '系统管理员', phone: '13800000001', organizationId: 1, status: 'ACTIVE', email: 'admin@fryl.com', userType: 'ADMIN', lastLoginTime: null, forceChangePwd: false } ] initCounter('user', 2) // ---------------- 角色(role) ---------------- export const roles = [{ id: 1, roleName: '系统管理员', organizationId: 1, isBuiltIn: true }] initCounter('role', 2) // user_id -> [roleId] export const userRoles = [{ id: 1, userId: 1, roleId: 1 }] initCounter('userRole', 2) // ---------------- 权限(permission) ---------------- // level 0: 8个一级分组;level 1: 16个二级页面(与 componentRegistry.js 逐一对应); // level 2: 26个按钮权限(仅阶段1-3实际使用 v-permission 的模块) const groups = [ { id: 1, permissionName: '系统管理', sortOrder: 1, icon: 'SettingOutlined' }, { id: 2, permissionName: '基础配置', sortOrder: 2, icon: 'ToolOutlined' }, { id: 3, permissionName: '客户管理', sortOrder: 3, icon: 'TeamOutlined' }, { id: 4, permissionName: '钱包管理', sortOrder: 4, icon: 'WalletOutlined' }, { id: 5, permissionName: '授信管理', sortOrder: 5, icon: 'CreditCardOutlined' }, { id: 6, permissionName: '商户中心', sortOrder: 6, icon: 'ShopOutlined' }, { id: 7, permissionName: '订单管理', sortOrder: 7, icon: 'FileTextOutlined' }, { id: 8, permissionName: '支付管理', sortOrder: 8, icon: 'PayCircleOutlined' } ] const pages = [ { id: 9, parentId: 1, permissionName: '用户管理', routePath: '/system/user', sortOrder: 1 }, { id: 10, parentId: 1, permissionName: '角色管理', routePath: '/system/role', sortOrder: 2 }, { id: 11, parentId: 1, permissionName: '机构管理', routePath: '/system/org', sortOrder: 3 }, { id: 12, parentId: 1, permissionName: '权限管理', routePath: '/system/permission', sortOrder: 4 }, { id: 13, parentId: 2, permissionName: '核心企业管理', routePath: '/base-config/channel', sortOrder: 1 }, { id: 14, parentId: 2, permissionName: '客户经理管理', routePath: '/base-config/manager', sortOrder: 2 }, { id: 15, parentId: 3, permissionName: '个人客户管理', routePath: '/customer/personal', sortOrder: 1 }, { id: 16, parentId: 3, permissionName: '企业客户管理', routePath: '/customer/enterprise', sortOrder: 2 }, { id: 17, parentId: 4, permissionName: '账户列表', routePath: '/wallet/account', sortOrder: 1 }, { id: 18, parentId: 4, permissionName: '企业开户申请', routePath: '/wallet/enterprise-open', sortOrder: 2 }, { id: 19, parentId: 5, permissionName: '贷款申请', routePath: '/credit/loan-application', sortOrder: 1 }, { id: 20, parentId: 6, permissionName: '商户管理', routePath: '/merchant/management', sortOrder: 1 }, { id: 21, parentId: 6, permissionName: '发票管理', routePath: '/merchant/invoice', sortOrder: 2 }, { id: 22, parentId: 7, permissionName: '汇总订单', routePath: '/order/summary', sortOrder: 1 }, { id: 23, parentId: 7, permissionName: '原始订单', routePath: '/order/original', sortOrder: 2 }, { id: 24, parentId: 8, permissionName: '订单支付', routePath: '/payment/order-payment', sortOrder: 1 } ] const buttonDefs = [ ['user:add', '新增用户', 9], ['user:delete', '删除用户', 9], ['user:edit', '编辑用户', 9], ['user:lock', '锁定用户', 9], ['user:unlock', '解锁用户', 9], ['user:changePwd', '修改密码', 9], ['user:resetPwd', '重置密码', 9], ['role:add', '新增角色', 10], ['role:delete', '删除角色', 10], ['role:edit', '编辑角色', 10], ['org:add', '新增机构', 11], ['org:delete', '删除机构', 11], ['org:edit', '编辑机构', 11], ['permission:add', '新增权限', 12], ['permission:edit', '编辑权限', 12], ['permission:delete', '删除权限', 12], ['channel:add', '新增核心企业', 13], ['channel:delete', '删除核心企业', 13], ['channel:edit', '编辑核心企业', 13], ['manager:add', '新增客户经理', 14], ['manager:delete', '删除客户经理', 14], ['manager:edit', '编辑客户经理', 14], ['customer-personal:add', '新增个人客户', 15], ['customer-personal:edit', '编辑个人客户', 15], ['customer-enterprise:add', '新增企业客户', 16], ['customer-enterprise:edit', '编辑企业客户', 16] ] const buttons = buttonDefs.map(([permissionCode, permissionName, parentId], index) => ({ id: 25 + index, parentId, permissionName, permissionCode, sortOrder: index + 1 })) export const permissions = [ ...groups.map((g) => ({ id: g.id, permissionType: 'PAGE', permissionName: g.permissionName, permissionCode: `menu:group:${g.id}`, parentId: null, level: 0, sortOrder: g.sortOrder, icon: g.icon, routePath: '', pageResourcePathList: [], apiResourcePathList: [] })), ...pages.map((p) => ({ id: p.id, permissionType: 'PAGE', permissionName: p.permissionName, permissionCode: `menu:page:${p.id}`, parentId: p.parentId, level: 1, sortOrder: p.sortOrder, icon: '', routePath: p.routePath, pageResourcePathList: [p.routePath], apiResourcePathList: [] })), ...buttons.map((b) => ({ id: b.id, permissionType: 'BUTTON', permissionName: b.permissionName, permissionCode: b.permissionCode, parentId: b.parentId, level: 2, sortOrder: b.sortOrder, icon: '', routePath: '', pageResourcePathList: [], apiResourcePathList: [] })) ] initCounter('permission', 51) // 系统管理员角色绑定全部权限(id 1) export const rolePermissions = permissions.map((p) => ({ roleId: 1, permissionId: p.id }))