1、立项原因
解决培训机构中多角色(管理员、授课教师、学管师)共用系统时权限混乱、学员档案分散、缺乏数据可视化的问题。通过RBAC权限模型实现不同岗位按需授权,将学校→专业→班级→学生的层级数据统一管理,从人工Excel管理升级为系统化运营。
2、行业场景
适用于IT职业培训、技能教育、K12辅导等教育培训行业。业务上存在三类角色协同:超级管理员负责系统与人员配置,授课教师管理学员学习方向与班级,学管师负责学员生活管理与家长沟通。学员档案涵盖20+字段(学校、专业、方向、班级、授课教师、学管、家长信息等),天然嵌套在四级层级中。首页通过统计卡片与ECharts入学趋势图支撑运营决策。技术上前端Vue3+Element Plus,后端Express+MongoDB,架构简单、部署成本低,匹配中小型培训机构的实际IT条件。
1、功能模块
系统包含6大模块:首页看板、用户管理、角色管理、学校管理、专业管理、班级管理、学生管理,外加登录认证与权限路由守卫。
2、主要功能描述
首页看板展示学员/用户/班级/角色统计卡片及年度入学趋势ECharts柱状图;用户管理支持系统账户的增删改查并绑定角色;角色管理基于菜单树灵活分配权限(如教师可见学生管理、学管可见班级管理),超级管理员拥有全部权限;学生管理按学校→专业→班级四级层级组织,支持按姓名、学习方向、班级、授课教师、学管多条件筛选查询与分页展示;班级管理关联授课教师与学管;文件上传支持学员照片存储。
1、我负责的具体任务
负责前端全部开发工作:Vue3页面搭建、Pinia状态管理、RBAC权限控制逻辑(菜单权限过滤、路由守卫)、ECharts首页图表、Element Plus组件集成及API接口对接。
2、技术栈、架构亮点与难点
技术栈:Vue3 + TypeScript + Vite + Element Plus + Pinia + Vue Router + ECharts + Axios。
架构亮点:基于菜单树+角色权限的RBAC模型,hashAuth函数判断用户角色是否包含某菜单索引,递归过滤后动态渲染导航栏;permission.ts路由守卫实现未登录强制跳转。
难点:角色权限树需递归处理二级菜单并同步勾选状态,登录后需解析后端返回的role.menus数组并与全量菜单配置做交集过滤,学员列表多条件筛选需动态构建searchMap对象传给分页接口。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!

下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论